linux中mysql基本操作

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux中mysql基本操作相关的知识,希望对你有一定的参考价值。

1.linux下启动mysql的命令:

  mysqladmin start

  /ect/init.d/mysql start (前面为mysql的安装路径)

  2.linux下重启mysql的命令:

  mysqladmin restart

  /ect/init.d/mysql restart (前面为mysql的安装路径)

  3.linux下关闭mysql的命令:

  mysqladmin -u root -p密码 shutdown

  /ect/init.d/mysql shutdown (前面为mysql的安装路径)

  4.连接本机上的mysql:

  进入目录mysql\bin,再键入命令mysql -uroot -p, 回车后提示输入密码。

  退出mysql命令:exit(回车)

  5.修改mysql密码:

  mysqladmin -u用户名 -p旧密码 password 新密码

  或进入mysql命令行SET PASSWORD FOR ‘用户名‘@‘主机‘ = PASSWORD(‘密码‘);

  GRANT USAGE ON *.* TO ‘用户名‘@‘主机‘ IDENTIFIED BY ‘biscuit‘;

  修改自己的密码SET PASSWORD = PASSWORD(‘biscuit‘);

  6.增加新用户。(注意:mysql环境中的命令后面都带一个分号作为命令结束符)

  grant all privileges on *.* to 用户名@‘%‘ identified by ‘密码‘ with grant option;

  flush privileges;(刷新权限设置)

  grant select on 数据库.* to 用户名@登录主机 identified by "密码"

  如增加一个用户test密码为123,让他可以在任何主机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令:

  grant select,insert,update,delete on *.* to " Identified by "123";

  7.跳过授权访问mysql

  mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

二、有关mysql数据库方面的操作

1、显示数据库

 show databases;

2、选择数据库

use 数据库名;

3、显示数据库中的表

show tables;

4、显示数据表的结构 

describe 表名;

 5、显示表中记录 

SELECT * FROM 表名

 6、建库

 create databse 库名;

 7、建表

技术分享
create table 表名 (字段设定列表);

mysql> create table name(
    -> id int auto_increment not null primary key ,
    -> uname char(8),
    -> gender char(2),
    -> birthday date );
Query OK, 0 rows affected (0.03 sec)

mysql> show tables;
+------------------+
| Tables_in_userdb |
+------------------+
| name             |
+------------------+
1 row in set (0.00 sec)

mysql> describe name;
+----------+---------+------+-----+---------+----------------+
| Field    | Type    | Null | Key | Default | Extra          |
+----------+---------+------+-----+---------+----------------+
| id       | int(11) | NO   | PRI | NULL    | auto_increment |
| uname    | char(8) | YES  |     | NULL    |                |
| gender   | char(2) | YES  |     | NULL    |                |
| birthday | date    | YES  |     | NULL    |                |
+----------+---------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

注: auto_increment 自增
     primary key    主键
技术分享

 8、增加记录

 insert into name(uname,gender,birthday) values(张三‘,‘,1971-10-01‘);

 9、修改记录

update name set birthday=1971-01-10where uname=张三‘;

 10、删除记录

delete from name where uname=张三‘;

 11、删除表

drop table 表名

 12、删除库

 drop database 库名;

13、备份数据库 

mysqldump -u root -p --opt 数据库名>备份名; //进入到库目录

14、恢复

mysql -u root -p 数据库名<备份名; //恢复时数据库必须存在,可以为空数据库

 15、数据库授权

  格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码"

例1、增加一个用户user001密码为123456,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MySQL,然后键入以下命令:

 mysql> grant select,insert,update,delete on *.* to [email protected]"%" Identified by "123456";

 

例2、增加一个用户user002密码为123456,让此用户只可以在localhost上登录,也可以设置指定IP,并可以对数据库test进行查询、插入、修改、删除的操作 (localhost指本地主机,即MySQL数据库所在的那台主机)

        //这样用户即使用知道user_2的密码,他也无法从网上直接访问数据库,只能通过MYSQL主机来操作test库。
        //首先用以root用户连入MySQL,然后键入以下命令:

  mysql>grant select,insert,update,delete on test.* to user002@localhost identified by "123456";

 

以上是关于linux中mysql基本操作的主要内容,如果未能解决你的问题,请参考以下文章

mysql查看版本的四种方法

LAMP的基本配置

如何在片段中填充列表视图?

使用 json rereiver php mysql 在片段中填充列表视图

部分代码片段

[linux][c/c++]代码片段01