mysql常用的操作命令

在mysql中以半角分号;作为命令的结束符

查看当前系统包含的数据库:mysql> show databases [like ' '];

从一个数据库切换到另一个:mysql>use oldboy;(oldboy为数据库名)

查看当前数据库包含的表:mysql> show tables [from 库名 [like ' ']];

查看某个表的结构:mysql> desc test;或者mysql> show columns from test;(test为表名)

查看某个表的索引:mysql>show index from test\G(\G后面不用加分号,\G会以比较直观的格式显示结果)

显示当前所在数据库:mysql>select database();

显示当前用户:mysql>select user();

显示当前数据库版本:mysql>select version();

显示当前时间:mysql>select now();

查看建库语句:mysql>show create database oldboy\G 

查看建表语句:mysql>show create table test\G

查看所有字符集和校对规则:mysql> show character set;

查看当前字符集:mysql>show variables like 'character_set%';

查看所有变量:mysql> show variables \G

查看当前数据库系统支持的引擎:mysql> show engines \G

查看整个数据库状态信息:mysql> show global status \G

查看当前会话数据库状态信息:mysql> show status \G

不重启情况下修改变量:mysql>set global variable=key;(重启则需修改my.cnf)

查看正在执行的完整sql语句:mysql>show [full] processlist;(加full显示所有,否则显示前100)

 

查看all privileges具体是指哪些权限

mysql> show grants for root@localhost;

Grants for root@localhost: GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*7495041D24E489A0096DCFA036B166446FDDD992' WITH GRANT OPTION

mysql> revoke select on *.* from system@localhost;(假设system权限同root,回收其对所有库所有表的查询权限)

mysql> flush privileges;

mysql> show grants for system@localhost;

Grants for system@localhost: GRANT INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, SHUTDOWN, PROCESS, FILE, REFERENCES, INDEX, ALTER, SHOW DATABASES, SUPER, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER, CREATE TABLESPACE ON *.* TO 'system'@'localhost' IDENTIFIED BY PASSWORD '*7495041D24E489A0096DCFA036B166446FDDD992' WITH GRANT OPTION

对一般用户来说,开通select、insert、delete、update权限即可,试需要可适当开通create和drop权限

 

在数据库执行系统命令,系统命令前加system

mysql> system ls /home/oldboy/tools

在系统执行数据库命令,数据库命令前加登录信息 -e

[root@oldboy ~]# mysql -uroot -poldboy -e 'show databases';

 

在线修改数据库参数,以key_buffer_size(misiam存放索引的缓冲区)为例

查看/etc/my.cnf的[mysqld]模块,或者在数据库下show variables like '%key_buffer%';查得Key_buffer_size=16k

Mysql> set global key_buffer_size=1024*32;(只要数据库不重启,都有效)

同时修改/etc/my.cnf的[mysqld]的key_buffer_size=32k(重启后生效)

 

posted @ 2018-11-29 23:44  Forever77  阅读(235)  评论(0编辑  收藏  举报