MySQL 高頻運維指令彙總,分為常用命令、Root 密碼重置、GRANT 權限體系、mysqldump 多模式備份恢復、SQL 腳本批次執行五大模塊,語法精簡、參數齊全,適合 DBA、開發者隨身攜帶速查。
一、常用基礎命令
| 操作 | 命令 |
| 建立資料庫 | CREATE DATABASE name;
| 選擇資料庫 | USE databasename;
| 刪除資料庫 (無提示) | DROP DATABASE name;
| 刪除資料庫 (有提示) | mysqladmin drop databasename
| 顯示所有表 | SHOW TABLES;
| 表結構描述 | DESCRIBE tablename;
| 去重查詢 | SELECT DISTINCT col FROM tbl;
| 版本與日期 | SELECT VERSION(), CURRENT_DATE;
二、修改 Root 密碼
mysql -u root -p
UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root';
FLUSH PRIVILEGES;
三、GRANT 授權體系
| 場景 | 命令 |
| 建立超級用戶 (本地+遠端) | GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' IDENTIFIED BY 'pwd' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%' IDENTIFIED BY 'pwd' WITH GRANT OPTION;
| 新增業務用戶 (指定庫、權限、主機) | GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON db.* TO 'user'@'host' IDENTIFIED BY 'pwd';
| 撤銷授權 | REVOKE ALL PRIVILEGES ON *.* FROM 'root'@'%';
DELETE FROM mysql.user WHERE User='root' AND Host='%';
FLUSH PRIVILEGES;
| 重命名表 | ALTER TABLE t1 RENAME TO t2;
四、mysqldump 備份恢復多模式
| 模式 | 命令 | 說明 |
| 全庫備份 | mysqldump -h host -u root -p dbname > backup.sql標準邏輯備份 |
| 恢復全庫 | mysqladmin -h host -u root -p create dbname && mysql -h host -u root -p dbname < backup.sql先建庫再導入 |
| 僅結構 (含 DROP) | mysqldump -u root -p -d dbname > stru.sql-d 無資料 |
| 僅資料 (無建表) | mysqldump -u root -p -t dbname > data.sql-t 無建表 |
| 純文字輸出 (雙檔案) | mysqldump -T /out/dir dbname tbl.sql 結構 + .txt 純資料 |
五、SQL 腳本批次執行
# 將建表/插入語句存入 sql.txt
mysql -h host -u root -p dbname < sql.txt
適用於版本控管下的 Schema 變更腳本、初始化資料批量導入。
六、權限表維護鐵律
- 任何 GRANT/REVOKE/DELETE user 後必執行
FLUSH PRIVILEGES;
- 生產環境禁用
WITH GRANT OPTION 除非極少數 DBA 帳號
- 定期
SELECT User, Host FROM mysql.user 審計殭屍帳號
總結
此命令大全覆蓋日常 90% 運維場景。建議配合 mysql --help、mysqldump --help 閱讀最新參數說明,版本升級後驗證關鍵指令相容性。