涵蓋 source 導入、mysqldump 導出、連接、權限、庫表操作、備份恢復等日常運維命令。
mysql> SOURCE /path/to/file.sql;
# 全庫
mysqldump -u root -p dbname > dump.sql
# 單表
mysqldump -u root -p dbname table > table.sql
# 只導結構
mysqldump -u root -p -d dbname > schema.sql
# 只導數據
mysqldump -u root -p -t dbname > data.sql
# 含 DROP TABLE、單行 INSERT、擴展 INSERT
mysqldump -u root -p --opt dbname > dump.sql
mysql -u root -p dbname < dump.sql
# 或
mysql -u root -p -e "SOURCE /path/to/dump.sql;" dbname
| 場景 | 命令 |
|---|---|
| 連接本地 | mysql -u root -p |
| 連接遠程 | mysql -h 10.0.0.1 -u root -p |
| 修改密碼 | mysqladmin -u root -p'old' password 'new' |
| 創建用戶授權 | GRANT SELECT,INSERT ON db.* TO 'user'@'%' IDENTIFIED BY 'pass'; FLUSH PRIVILEGES; |
| 顯示庫 | SHOW DATABASES; |
| 顯示表 | USE db; SHOW TABLES; |
| 表結構 | DESC table; / SHOW CREATE TABLE table; |
| 建庫 | CREATE DATABASE db CHARSET utf8mb4; |
| 建表 | CREATE TABLE t (id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(50)); |
| 刪庫/刪表 | DROP DATABASE db; DROP TABLE t; |
| 清空表 | TRUNCATE TABLE t;(重置自增) |
| 查記錄 | SELECT * FROM t; |
--single-transaction:InnoDB 一致性備份(不鎖表)。--master-data=2:輸出 binlog 位點(CHANGE MASTER TO 註釋)。--routines --triggers --events:導出存儲過程/觸發器/事件。--where="id > 100":導出滿足條件的數據。--compress:壓縮傳輸(遠程備份)。-- 查看用戶權限
SHOW GRANTS FOR 'user'@'host';
-- 刷新權限
FLUSH PRIVILEGES;
-- 修改密碼(5.7+)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'newpass';
掌握 mysqldump 導出導入、SOURCE 導入、GRANT 授權、TRUNCATE 清空等高頻命令,覆蓋 90% 日常運維場景。建議將常用命令做成腳本別名或收錄運維手冊。