首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫

MySQL 幫助命令完全指南:從官方文檔到客戶端內建幫助

     編輯:MySQL 資料庫相關知識

MySQL 幫助資源概覽

在開發、測試甚至生產環境中遇到 MySQL 故障時,大多數開發者習慣通過技術論壇、QQ 群或社群求助。雖然這些途徑確實有效,但在無網絡的生產環境中,這些外部資源便無法使用。事實上,無論是哪種數據庫系統,官方文檔始終是最直接、最權威的幫助來源。其次,MySQL 客戶端工具內建的幫助系統在離線環境下能發揮關鍵作用。

1. MySQL 官方參考手冊

同 Oracle 官方文檔一樣,MySQL 官方手冊是獲取幫助的首選。它涵蓋了 SQL 語法、安裝部署、系統/狀態變量、命令行工具、數據庫管理等幾乎所有主題,堪稱 MySQL 知識的「大全集」。手冊支持 PDF 和 HTML 兩種格式下載,方便離線查閱。

下載地址: https://dev.mysql.com/doc/

2. MySQL 客戶端內建幫助系統

在 MySQL 提示符下輸入 help 或 \h 即可獲取客戶端命令列表,功能類似 Oracle SQL*Plus 的 help 命令。以下是常用客戶端命令速查表:

命令縮寫說明
connect\r重新連接服務器,可選參數 db 和 host。常用於連接被斷開後重連
delimiter\d設置語句結束符,默認為分號;可改為 / 等
edit\e將緩衝區上一條 SQL 編輯到文件(默認調用 vi,文件位於 /tmp)
ego\G垂直顯示查詢結果
exit/quit\q退出 MySQL 客戶端
go\g發送命令到 MySQL 服務器執行
nopager\n禁用分頁器,輸出到標準輸出
notee\t關閉輸出到文件
pager\P設置分頁器(如 more、less),用於分頁顯示長結果
prompt\R修改 MySQL 提示符
rehash\#重建補全哈希,用於自動補齊對象名
source\.執行 SQL 腳本文件
status\s獲取服務器狀態信息
system\!執行系統 Shell 命令
tee\T將操作結果追加輸出到指定文件(類似 SQL*Plus 的 spool)
use\u切換數據庫
charset\C切換字符集,處理多字節字符集的 binlog 時有用
warnings/nowarning\W/\w開啟/關閉每條語句後顯示警告
提示: 輸入 help contents 可進入服務端幫助系統,獲取 SQL 語法、管理命令、函數等詳細文檔。

實戰演示:常用客戶端命令

連接管理

mysql> connect chardb localhost;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Connection id: 5
Current database: chardb

分頁顯示控制

mysql> pager more
PAGER set to 'more'
mysql> select table_name,table_type,engine from information_schema.tables;
-- 結果超過一屏時,按空格鍵翻頁

mysql> pager tail -5
PAGER set to 'tail -5'
mysql> select table_name,table_type,engine from information_schema.tables;
| setup_timers | BASE TABLE | PERFORMANCE_SCHEMA |
| threads      | BASE TABLE | PERFORMANCE_SCHEMA |
| animals      | BASE TABLE | InnoDB             |
| shop         | BASE TABLE | InnoDB             |
+----------------------------------------------+-------------+--------------------+
92 rows in set (0.02 sec)

mysql> nopager
PAGER set to stdout

結果輸出到文件

mysql> tee /tmp/query.log
Logging to file '/tmp/query.log'
mysql> select table_name,table_type,engine from information_schema.tables;
...
mysql> notee
Outfile disabled.
mysql> system tail /tmp/query.log
-- 查看剛寫入的日志內容

提示符自定義

mysql> prompt SessionA>
PROMPT set to 'SessionA> '
SessionA> prompt
Returning to default PROMPT of mysql>

腳本執行與狀態查看

mysql> source query.sql
Reading table information for completion of table and column names
Database changed
+------+-------+
| id   | value |
+------+-------+
| 1    | a     |
| 2    | b     |
| 3    | c     |
| 4    | f     |
+------+-------+
4 rows in set (0.00 sec)

mysql> status;
--------------
mysql Ver 14.14 Distrib 5.5.37, for Linux (x86_64) using readline 5.1
Connection id: 6
Current database: chardb
Current user: root@localhost
Server version: 5.5.37-log MySQL Community Server (GPL)
Uptime: 3 hours 10 min 59 sec
Threads: 1  Questions: 97  Slow queries: 0
...

字符集切換與警告控制

mysql> charset gbk;
Charset changed
mysql> \s
-- 可見 Client characterset 和 Conn. characterset 均變為 gbk

mysql> warnings;
Show warnings enabled.
mysql> selecs 1;
ERROR 1064 (42000): You have an error in your SQL syntax...
mysql> show warnings;
+-------+------+--------------------------------------------------------------------+
| Level | Code | Message                                                            |
+-------+------+--------------------------------------------------------------------+
| Error | 1064 | You have an error in your SQL syntax...                           |
+-------+------+--------------------------------------------------------------------+
mysql> nowarning;
Show warnings disabled.

3. 服務端幫助系統:分層獲取權威語法

輸入 help contents 可查看所有幫助類別,如 Account Management、Administration、Data Definition、Functions、Storage Engines 等。再通過 help <類別> 逐級鑽取,最終獲得具體命令的語法、權限要求、示例等完整信息。

常用查詢示例

-- 查看管理命令分類
mysql> help administration;
-- 查看 FLUSH 語法詳情
mysql> help flush;
Name: 'FLUSH'
Description: Syntax: FLUSH [NO_WRITE_TO_BINLOG | LOCAL] flush_option [...]
The FLUSH statement has several variant forms that clear or reload various internal caches...
URL: https://dev.mysql.com/doc/refman/5.5/en/flush.html

-- 查看 CACHE INDEX 語法
mysql> help CACHE INDEX;
Name: 'CACHE INDEX'
Syntax: CACHE INDEX tbl_index_list [...] IN key_cache_name

-- 查看 SHOW 命令所有變體
mysql> help show;

-- 查看 SET 變量賦值語法
mysql> help set;
Name: 'SET'
Syntax: SET variable_assignment [, variable_assignment] ...
variable_assignment: user_var_name = expr | [GLOBAL | SESSION] system_var_name = expr ...
URL: https://dev.mysql.com/doc/refman/5.5/en/set-statement.html

總結: 通過 help 逐級鑽取,無需聯網即可獲得權威、完整的語法參考,是 DBA 和開發者離線排查問題的利器。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved