mysql有如下常用用戶端工具
mysql
mysqldump
mysqladmin
mysqlcheck
mysqlimport
一 mysql
1.1 常用選項
-u username
-h host
-p 'password'
--protocol {tcp|socket|pipe|memory}
--port PORT
-D|--database,指定登陸時預設使用的資料庫
1.2 不常用選項
--compress,壓縮節約帶寬
--default-character-set=character_name
-V|--version,顯示軟體版本資訊
-v|--verbose,詳細顯示輸出資訊
--ssl-ca=/path/to/ssl_ca_file
--ssl-capath=/path/to/ca_dir
--ssl-cert=/path/to/cert_file
--ssl-cipher=cipher_list
--ssl-key=/path/to/key_file
--ssl-verify-server-cert
2 檢視目前預設資料庫
mysql> select database();
3 mysql指令的兩種模式
模式1:互動式模式,即使用mysql登入後操作,此處不贅述。
模式2:批處理模式或者sql腳本模式
方式1,在mysql指令行執行
# vim test.sql
create database testdb2;
use testdb2;
create table student(id int,name char(20),age char(3));
# mysql
mysql> source /root/test/test.sql;
Query OK, 1 row affected (0.00 sec)
Database changed
Query OK, 0 rows affected (0.01 sec)
方式2,使用重定向
# mysql < /root/test/test.sql
指令兩類:
用戶端指令,不需要語句結束符
伺服器語句:有語句結束符,預設;
\d: 定義語句結束符
用戶端指令
use 使用某資料庫
status 檢視mysql狀态
\c|clear: 提前終止語句執行
\r|connect:重新連接配接mysqld
\g|go: 無論語句結束符是什麼,直接将此語句送至伺服器端執行;
\G|ego: 無論語句結束符是什麼,直接将此語句送到伺服器端執行,而且結果以豎排方式顯示;
\!|system COMMAND: 執行shell指令
\W: 語句執行結束後顯示警告資訊;
-R|prompt:修改指令提示符 mysql> \R mysql>
名稱補全功能
在連接配接mysql時使用下列選項,可以禁用名稱補全
-A
--no-auto-rehash
--disable-auto-rehash
--xml or -X
Produce output in XML format
擷取伺服器端指令的幫助
help keyword
下面提供的URL中有更詳細的幫助資訊
二 mysqladmin
1)create database_name
# mysqladmin crate test1 create test2
2)drop databse_name
# mysqladmin drop testdb2 drop testdb3
3)processlist
# mysqladmin processlist
+----+------+-----------------+----+---------+------+-------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
| 33 | root | localhost:50637 | | Query | 0 | | show processlist |
4)status
# mysqladmin status
Uptime: 15903 Threads: 1 Questions: 140 Slow queries: 0 Opens: 39 Flush tables: 1 Open tables: 32 Queries per second avg: 0.008
--sleep N:顯示頻率
--count N: 顯示多個狀态
# mysqladmin status --sleep 3 --count 5
5)extended-status: 顯示狀态變量
# mysqladmin extended-status | less
6)variables: 顯示伺服器變量
# mysqladmin variables | less
7)flush-privileges: 讓mysqld重讀授權表, 等同于reload;
# mysqladmin flush-privileges
8)flush-status,重置大多數的伺服器狀态變量,将一些變量置零
9)flush-logs: 二進制和中繼日志滾動
10)flush-hosts:由于多次錯誤連接配接的導緻登入被限制,為了讓其重新登入,清除内部資訊和DNS緩存
11)refresh: 相當于同時執行flush-hosts和flush-logs
12)shutdown: 關閉mysql伺服器程序
13)version: 伺服器版本及目前狀态資訊;
14)kill,注意殺死多個線程,comma前後不能有空格
mysqladmin kill 50
mysqladmin kill 50,55
15)start slave: 啟動複制,啟動從伺服器複制線程;
16)stop slave: 關閉複制;
來自為知筆記(Wiz)