MySQL數(shù)據(jù)導出工具mysqldump介紹

mysqldump常用于MySQL數(shù)據(jù)庫邏輯備份,導出數(shù)據(jù)庫表的結(jié)構(gòu)和內(nèi)容。

常用參數(shù)

-A, --all-databases
導出所有數(shù)據(jù)庫
--add-drop-database
在創(chuàng)建數(shù)據(jù)庫之前先DROP數(shù)據(jù)庫
--add-drop-table
在創(chuàng)建表之前先drop表,默認true
--add-locks
在insert語句前加鎖,默認true
--compact
導出更少的輸出信息(用于調(diào)試)。去掉注釋和頭尾等結(jié)構(gòu)
-c, --complete-insert
使用完整的insert語句(包含列名稱)。
-B, --databases
導出幾個數(shù)據(jù)庫。參數(shù)后面所有名字參量都被看作數(shù)據(jù)庫名。導出文件中會有'USE db_name;'
--default-character-set=name
設(shè)置默認字符集
-e, --extended-insert
使用具有多個VALUES列的INSERT語法。這樣使導出文件更小,并加速導入時的速度,默認true
**--ignore-table=name **
忽略指定的表不導出
--insert-ignore
在插入行時使用insert ignore
-l, --lock-tables
開始導出前,鎖定所有表
--dump-slave
將主庫的binlog位置和文件名追加到導出數(shù)據(jù)的文件中,該參數(shù)在在從服務(wù)器上執(zhí)行,相當于執(zhí)行show slave status.當設(shè)置為1時,將會以CHANGE MASTER命令輸出到數(shù)據(jù)文件;設(shè)置為2時,會在change前加上注釋。
--master-data[=#]
該選項將當前服務(wù)器的binlog的位置和文件名追加到輸出文件中(show master status)。如果為1,將會輸出CHANGE MASTER 命令;如果為2,輸出的CHANGE MASTER命令前添加注釋信息。
-n, --no-create-db
只導出數(shù)據(jù),不添加create database語句,默認false
-t, --no-create-info
只導出數(shù)據(jù),不添加create table語句,默認false
-d, --no-data
不導出任何數(shù)據(jù),只導出數(shù)據(jù)庫表結(jié)構(gòu)
-q, --quick
不緩沖查詢,直接導出到標準輸出。默認true
**--replace **
插入數(shù)據(jù)時用replace
--set-gtid-purged[=name]
是否添加SET@@GLOBAL.GTID_PURGED,默認auto
--single-transaction
使用一致性的快照來導出數(shù)據(jù),不鎖表,默認false
--tables
覆蓋--databases (-B)參數(shù),指定需要導出的表名
-w, --where=name
按照條件導出,只能導出單個表
-u -h -P -p
用戶名,主機名,端口,密碼

常用方法

1、導出所有庫
mysqldump -uroot -p123 --single-transaction --all-databases >all.sql
該命令會導出包括系統(tǒng)數(shù)據(jù)庫在內(nèi)的所有數(shù)據(jù)庫
2、導出單個庫
mysqldump -uroot -p123 --single-transaction test > test.sql
3、導出多個數(shù)據(jù)庫
mysqldump -uroot -p123 --single-transaction --databases db1 db2> db.sql
導出文件中會有'USE db1;USE db2'
4、導出單表
mysqldump -uroot -p123 --single-transaction test table_1 > table_1.sql
5、導出多表
mysqldump -uroot -p123 --single-transaction test --tables table_1 table_2> table.sql
6、只導表結(jié)構(gòu)
mysqldump -uroot -p123 --single-transaction test -d > test_structure.sql
7、只導出數(shù)據(jù)
mysqldump -uroot -p123 --no-create-info --single-transaction --skip-add-locks --compact -c --set-gtid-purged=OFF test t2 >t2.sql
8、按照where條件導出
mysqldump -uroot -p123 --single-transaction test table_1 -w "id<1000000" > table_1.sql

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 在編寫shell腳本的時候,可能會遇到操作mysql數(shù)據(jù)庫的情況。下面介紹如何在shell腳本中操作mysql數(shù)據(jù)...
    ifcoder閱讀 2,743評論 0 2
  • Mysqldump是一個邏輯備份命令;意思就是將數(shù)據(jù)庫中的數(shù)據(jù)備份成一個文本文件;也可以說是將表的結(jié)構(gòu)和數(shù)據(jù)存儲在...
    溫東閱讀 940評論 0 1
  • MySQL 數(shù)據(jù)庫常用命令 1、MySQL常用命令 create database name; 創(chuàng)建數(shù)據(jù)庫 use...
    55lover閱讀 5,051評論 1 57
  • 收集一些常用的mysqldump命令組合。 備份數(shù)據(jù)庫 1.導出結(jié)構(gòu)不導出數(shù)據(jù) **復制代碼代碼如下: 2.導出數(shù)...
    瑟瑟發(fā)抖的小電視閱讀 6,277評論 1 4
  • 近一兩年來大量的社交微群出現(xiàn),我也加入了各種不同類型的微信群:英語學習、英語交流、各種社群、寫作群、理財交流群……...
    楓丹白露蘇眉魚閱讀 248評論 2 1

友情鏈接更多精彩內(nèi)容