雖然 phpMyAdmin 等 Web 工具提供圖形化導出入功能,但面對大體積數據庫常因超時失效。掌握命令行模式下的 mysqldump 與還原操作,是 DBA 與開發者的必備技能。
基本語法:
mysqldump -u mysqluser -p test_db
-u:指定 MySQL 用戶名-p:提示輸入密碼test_db:目標數據庫名直接執行會將 SQL 腳本輸出到屏幕,實際生產需重定向到文件:
mysqldump -u mysqluser -p test_db > test_db.sql
大數據庫建議壓縮備份(一條命令完成):
mysqldump -u mysqluser -p test_db | gzip > test_db.sql.gz
注意: 文件名建議帶 .gz 後綴,便於識別。
未壓縮文件:
cat test_db.sql | mysql -u mysqluser -p test_db
已壓縮文件:
gunzip < test_db.sql.gz | mysql -u mysqluser -p test_db
或分兩步:
gunzip test_db.sql.gz cat test_db.sql | mysql -u mysqluser -p test_db
簡化版(不考慮壓縮):
mysqldump -u root -p test_db > test_db.sql mysql -u root -p test_db < test_db.sql
cmdcd /Program Files/MySQL/MySQL Server 5.0/binmysqldump -u 用戶名 -p databasename > exportfilenamemysqldump -u root -p voice > voice.sql,輸入密碼後開始導出。mysql> 提示符。show databases; 查看現有庫。create database voice; 創建目標庫。use voice; 切換庫。source voice.sql; 導入數據。再次出現 mysql> 且無報錯即成功。命令行模式無超時限制,適合大數據量場景,建議熟練掌握並納入常規運維流程。