MySQL管理员常用命令记录

来源:互联网 发布:algorithm 风格算法 编辑:程序博客网 时间:2024/06/05 14:30

---------------------------------------------------------登陆--------------------------------------------------------------------

 

1.mysql -h192.168.0.181 -utest -ptest;

 

登陆mysql命令行

 

-------------------------------------------------------数据库操作---------------------------------------------------------------

 

1.show databases;

 

查看所有数据库

 

2.use mydb;

 

使用mydb数据库

 

3.drop database if exists `mydb`;

 

如果数据库mydb存在就drop掉

 

4.create database `mydb`;

 

创建mydb数据库

 

----------------------------------------------------用户权限管理---------------------------------------------------------------

 

1.grant all privileges on mydb.* to YOURUSER@'%.%' IDENTIFIED BY "YOURPASSWORD";

 

授权YOURUSER用户可以从任意主机使用YOURPASSWORD对mydb数据库做任何操作

 

2.revoke all privileges on mydb.* from YOURUSER@'%';

 

撤销YOURUSER从任意主机操作mydb的权限

 

3.flush privileges;

 

使grant和revoke授权生效!执行grant或revoke之后再执行!

 

---------------------------------------------------------数据表操作-------------------------------------------------------------

 

1.show tables from mydb;

 

查看mydb库中所有数据表

 

2.desc mydb.mytable;

 

查看mydb库中mytable表的所有列名称,类型,是否为空,默认值,索引等

 

3.show create table  mydb.mytable;

 

查看mydb库中mytable表的建表SQL语句

 

4.select * from mydb.mytable\G;

 

查看mydb库中mytable表的所有内容,以每行数据,列名-值的键值对方式查看。

 

5.alter table mydb.mytable rename mydb.mytablenew;

 

表mytable改名为mytablenew

 

6.alter table mydb.mytable add  column newColumn varchar(64) DEFAULT NULL COMMENT '新列备注';

 

mydb库中mytable表新增一列,名称为newColumn,类型为varchar(64),默认为null,备注是“新列备注”

 

7.alter table mydb.mytable modify  column `modifyColumn ` varchar(16) DEFAULT NULL COMMENT '修改列备注';

 

修改mydb库中mytable表中列modifyColumn,类型为varchar(16),默认为null,备注是“修改列备注”

 

8.truncate table mydb.mytable

 

清空mydb库mytable表的数据,比delete快很多

 

----------------------------------------------------------数据备份恢复---------------------------------------------------------

 

1.mysqldump --opt --user=YOURS --password=YOURS -B "mydb1 mydb2" --max_allowed_packet=1048576  --net_buffer_length= 16384  > /data/backup/20120630.sql

 

将数据库mydb1和mydb2以sql语句形式导出到 /data/backup/20120630.sql文件中

 

2.source /data/backup/mydb.sql

 

执行文件中的sql语句

 

-----------------------------------------------------MySQL状态---------------------------------------------------------------

 

1.show processlist;

 

查看当前MySQL连接

 

2.kill ID;

 

断掉某个客户端连接,ID是show processlist命令输出第一列的值

 

3.show variables;

 

查看MySQL各种变量值

 

4.show global status;

 

查看MySQL的各种状态,cacti监控MySQL的原理就是定时收集这些状态值绘图

 

http://lxneng.iteye.com/blog/451985    这篇文章对variables和 status的使用 写的很好!

 

5.select version(),current_date();

 

查看当前数据版本和日期

 

6.show engine innodb status;

 

查看innodb引擎状态

 

7.show table status from test like 'mydb.mytable'

 

查看innodb表状态

0 0