1. 程式人生 > >mysql常用的操作命令

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 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

[email protected];

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

mysql> revoke select on *.* from [email protected];(假設system許可權同root,回收其對所有庫所有表的查詢許可權)

mysql> flush privileges;

mysql> show grants for [email protected]t;

Grants for [email protected]: 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

[[email protected] ~]# mysql -uroot -poldboy -e 'show databases';