MySQL之mysqldump的使用詳解
一、mysqldump 簡介
mysqldump 是 MySQL 自帶的邏輯備份工具。
它的備份原理是通過協議連接到 MySQL 數據庫,將需要備份的數據查詢出來,將查詢出的數據轉換成對應的insert 語句,當我們需要還原這些數據時,只要執行這些 insert 語句,即可將對應的數據還原。
二、備份命令
2.1 命令格式
mysqldump [選項] 數據庫名 [表名] > 腳本名
或
mysqldump [選項] --數據庫名 [選項 表名] > 腳本名
或
mysqldump [選項] --all-databases [選項] > 腳本名
2.2 選項說明
參數名 縮寫 含義 --host -h 服務器IP地址 --port -P 服務器端口號 --user -u MySQL 用戶名 --pasword -p MySQL 密碼 --databases 指定要備份的數據庫 --all-databases 備份mysql服務器上的所有數據庫 --compact 壓縮模式,產生更少的輸出 --comments 添加注釋信息 --complete-insert 輸出完成的插入語句 --lock-tables 備份前,鎖定所有數據庫表 --no-create-db/--no-create-info 禁止生成創建數據庫語句 --force 當出現錯誤時仍然繼續備份操作 --default-character-set 指定默認字符集 --add-locks 備份數據庫表時鎖定數據庫表
2.3 實例
備份所有數據庫:
mysqldump -uroot -p --all-databases > /backup/mysqldump/all.db
備份指定數據庫:
mysqldump -uroot -p test > /backup/mysqldump/test.db
備份指定數據庫指定表(多個表以空格間隔)
mysqldump -uroot -p mysql db event > /backup/mysqldump/2table.db
備份指定數據庫排除某些表
mysqldump -uroot -p test --ignore-table=test.t1 --ignore-table=test.t2 > /backup/mysqldump/test2.db
三、還原命令
3.1 系統行命令
mysqladmin -uroot -p create db_name mysql -uroot -p db_name < /backup/mysqldump/db_name.db
注:在導入備份數據庫前,db_name如果沒有,是需要創建的; 而且與db_name.db中數據庫名是一樣的才可以導入。
3.2 soure 方法
mysql > use db_namemysql > source /backup/mysqldump/db_name.db
實例
注:用戶名:root 密碼:DbPasswd 生成的sql腳本問 db.sql
導出數據庫為DBName的表結構(不導數據)
mysqldump -uroot -pDbPasswd -d DBName > db.sql
導出數據庫為DBName的表結構及其所有數據(不加-d即可)
mysqldump -uroot -pDbPasswd DBName > db.sql;
導出數據庫為DBName的表(test)的結構
mysqldump -uroot -pDbPasswd -d DBName test > db.sql
導出數據庫為DBName的表(test)的結構及其所有數據(不加-d即可)
mysqldump -uroot -pDbPasswd DBName test > db.sql
到此這篇關于MySQL之mysqldump的使用詳解的文章就介紹到這了,更多相關MySQL mysqldump內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!
相關文章: