mysqldump命令詳解

--all-databases  , -A
導出全部數(shù)據(jù)庫分歇。
mysqldump  -uroot -p --all-databases
--all-tablespaces  , -Y
導出全部表空間职抡。
 
mysqldump  -uroot -p --all-databases --all-tablespaces
--no-tablespaces  , -y
不導出任何表空間信息缚甩。
mysqldump  -uroot -p --all-databases --no-tablespaces
--add-drop-database
每個數(shù)據(jù)庫創(chuàng)建之前添加drop數(shù)據(jù)庫語句擅威。
 
mysqldump  -uroot -p --all-databases --add-drop-database
--add-drop-table
每個數(shù)據(jù)表創(chuàng)建之前添加drop數(shù)據(jù)表語句郊丛。(默認為打開狀態(tài)厉熟,使用--skip-add-drop-table取消選項)
mysqldump  -uroot -p --all-databases  (默認添加drop語句)
mysqldump  -uroot -p --all-databases –skip-add-drop-table  (取消drop語句)
 
--add-locks
在每個表導出之前增加LOCK TABLES并且之后UNLOCK  TABLE。(默認為打開狀態(tài)白翻,使用--skip-add-locks取消選項)
mysqldump  -uroot -p --all-databases  (默認添加LOCK語句)
mysqldump  -uroot -p --all-databases –skip-add-locks   (取消LOCK語句)
 
--allow-keywords
允許創(chuàng)建是關(guān)鍵詞的列名字滤馍。這由表名前綴于每個列名做到巢株。
mysqldump  -uroot -p --all-databases --allow-keywords
--apply-slave-statements
在'CHANGE MASTER'前添加'STOP SLAVE'纯续,并且在導出的最后添加'START SLAVE'猬错。
 
mysqldump  -uroot -p --all-databases --apply-slave-statements
--character-sets-dir
字符集文件的目錄
 
mysqldump  -uroot -p --all-databases  --character-sets-dir=/usr/local/mysql/share/mysql/charsets
--comments
附加注釋信息茸歧。默認為打開软瞎,可以用--skip-comments取消
mysqldump  -uroot -p --all-databases  (默認記錄注釋)
mysqldump  -uroot -p --all-databases --skip-comments   (取消注釋)
 
--compatible
導出的數(shù)據(jù)將和其它數(shù)據(jù)庫或舊版本的MySQL 相兼容。值可以為ansi魔慷、mysql323院尔、mysql40邀摆、postgresql伍茄、oracle敷矫、mssql、db2沪饺、maxdb躏敢、no_key_options闷愤、no_tables_options整葡、no_field_options等,
要使用幾個值讥脐,用逗號將它們隔開遭居。它并不保證能完全兼容,而是盡量兼容旬渠。
 
mysqldump  -uroot -p --all-databases --compatible=ansi
--compact
導出更少的輸出信息(用于調(diào)試)俱萍。去掉注釋和頭尾等結(jié)構(gòu)告丢∏鼓ⅲ可以使用選項:--skip-add-drop-table  --skip-add-locks --skip-comments --skip-disable-keys
mysqldump  -uroot -p --all-databases --compact
--complete-insert,  -c
使用完整的insert語句(包含列名稱)。這么做能提高插入效率岖免,但是可能會受到max_allowed_packet參數(shù)的影響而導致插入失敗岳颇。
 
mysqldump  -uroot -p --all-databases --complete-insert
--compress, -C
在客戶端和服務(wù)器之間啟用壓縮傳遞所有信息
mysqldump  -uroot -p --all-databases --compress
--create-options,  -a
在CREATE TABLE語句中包括所有MySQL特性選項。(默認為打開狀態(tài))
 
mysqldump  -uroot -p --all-databases
--databases,  -B
導出幾個數(shù)據(jù)庫颅湘。參數(shù)后面所有名字參量都被看作數(shù)據(jù)庫名话侧。
mysqldump  -uroot -p --databases test mysql
--debug
輸出debug信息,用于調(diào)試闯参。默認值為:d:t,/tmp/mysqldump.trace
 
mysqldump  -uroot -p --all-databases --debug
mysqldump  -uroot -p --all-databases --debug=” d:t,/tmp/debug.trace”
--debug-check
檢查內(nèi)存和打開文件使用說明并退出瞻鹏。
mysqldump  -uroot -p --all-databases --debug-check
--debug-info
輸出調(diào)試信息并退出
 
mysqldump  -uroot -p --all-databases --debug-info
--default-character-set
設(shè)置默認字符集悲立,默認值為utf8
mysqldump  -uroot -p --all-databases --default-character-set=utf8
--delayed-insert
采用延時插入方式(INSERT DELAYED)導出數(shù)據(jù)
 
mysqldump  -uroot -p --all-databases --delayed-insert
--delete-master-logs
master備份后刪除日志. 這個參數(shù)將自動激活--master-data。
mysqldump  -uroot -p --all-databases --delete-master-logs
--disable-keys
對于每個表新博,用/*!40000 ALTER TABLE tbl_name DISABLE KEYS */;和/*!40000 ALTER TABLE tbl_name ENABLE KEYS */;語句引用INSERT語句薪夕。這樣可以更快地導入dump出來的文件,因為它是在插入所有行后創(chuàng)建索引的赫悄。該選項只適合MyISAM表寥殖,默認為打開狀態(tài)。
 
mysqldump  -uroot -p --all-databases 
--dump-slave
該選項將主的binlog位置和文件名追加到導出數(shù)據(jù)的文件中(show slave status)涩蜘。設(shè)置為1時嚼贡,將會以CHANGE MASTER命令輸出到數(shù)據(jù)文件;設(shè)置為2時同诫,會在change前加上注釋粤策。該選項將會打開--lock-all-tables,除非--single-transaction被指定误窖。該選項會自動關(guān)閉--lock-tables選項叮盘。默認值為0。
 
mysqldump  -uroot -p --all-databases --dump-slave=1
mysqldump  -uroot -p --all-databases --dump-slave=2
--master-data
該選項將當前服務(wù)器的binlog的位置和文件名追加到輸出文件中(show master status)霹俺。如果為1柔吼,將會輸出CHANGE MASTER 命令;如果為2丙唧,輸出的CHANGE  MASTER命令前添加注釋信息愈魏。該選項將打開--lock-all-tables 選項,除非--single-transaction也被指定(在這種情況下想际,全局讀鎖在開始導出時獲得很短的時間培漏;其他內(nèi)容參考下面的--single-transaction選項)。該選項自動關(guān)閉--lock-tables選項胡本。
 
mysqldump  -uroot -p --host=localhost --all-databases --master-data=1;
mysqldump  -uroot -p --host=localhost --all-databases --master-data=2;
--events, -E
導出事件牌柄。
 
mysqldump  -uroot -p --all-databases --events
--extended-insert,  -e
使用具有多個VALUES列的INSERT語法。這樣使導出文件更小侧甫,并加速導入時的速度珊佣。默認為打開狀態(tài),使用--skip-extended-insert取消選項披粟。
 
mysqldump  -uroot -p --all-databases
mysqldump  -uroot -p --all-databases--skip-extended-insert   (取消選項)
--fields-terminated-by
導出文件中忽略給定字段咒锻。與--tab選項一起使用,不能用于--databases和--all-databases選項
 
mysqldump  -uroot -p test test --tab=”/home/mysql” --fields-terminated-by=”#”
--fields-enclosed-by
輸出文件中的各個字段用給定字符包裹僻爽。與--tab選項一起使用虫碉,不能用于--databases和--all-databases選項
 
mysqldump  -uroot -p test test --tab=”/home/mysql” --fields-enclosed-by=”#”
--fields-optionally-enclosed-by
輸出文件中的各個字段用給定字符選擇性包裹。與--tab選項一起使用胸梆,不能用于--databases和--all-databases選項
 
mysqldump  -uroot -p test test --tab=”/home/mysql”  --fields-enclosed-by=”#” --fields-optionally-enclosed-by  =”#”
--fields-escaped-by
輸出文件中的各個字段忽略給定字符敦捧。與--tab選項一起使用须板,不能用于--databases和--all-databases選項
 
mysqldump  -uroot -p mysql user --tab=”/home/mysql” --fields-escaped-by=”#”
--flush-logs
開始導出之前刷新日志。
請注意:假如一次導出多個數(shù)據(jù)庫(使用選項--databases或者--all-databases)兢卵,將會逐個數(shù)據(jù)庫刷新日志习瑰。除使用--lock-all-tables或者--master-data外。在這種情況下秽荤,日志將會被刷新一次甜奄,相應(yīng)的所以表同時被鎖定。因此窃款,如果打算同時導出和刷新日志應(yīng)該使用--lock-all-tables 或者--master-data 和--flush-logs课兄。
 
mysqldump  -uroot -p --all-databases --flush-logs
--flush-privileges
在導出mysql數(shù)據(jù)庫之后,發(fā)出一條FLUSH  PRIVILEGES 語句。為了正確恢復,該選項應(yīng)該用于導出mysql數(shù)據(jù)庫和依賴mysql數(shù)據(jù)庫數(shù)據(jù)的任何時候墓卦。
 
mysqldump  -uroot -p --all-databases --flush-privileges
--force
在導出過程中忽略出現(xiàn)的SQL錯誤。
mysqldump  -uroot -p --all-databases --force
--help
顯示幫助信息并退出蜒茄。
 
mysqldump  --help
--hex-blob
使用十六進制格式導出二進制字符串字段。如果有二進制數(shù)據(jù)就必須使用該選項餐屎。影響到的字段類型有BINARY檀葛、VARBINARY、BLOB腹缩。
 
mysqldump  -uroot -p --all-databases --hex-blob
--host, -h
需要導出的主機信息
mysqldump  -uroot -p --host=localhost --all-databases
--ignore-table
不導出指定表屿聋。指定忽略多個表時,需要重復多次庆聘,每次一個表胜臊。每個表必須同時指定數(shù)據(jù)庫和表名勺卢。例如:--ignore-table=database.table1 --ignore-table=database.table2 ……
 
mysqldump  -uroot -p --host=localhost --all-databases --ignore-table=mysql.user
--include-master-host-port
在--dump-slave產(chǎn)生的'CHANGE  MASTER TO..'語句中增加'MASTER_HOST=<host>伙判,MASTER_PORT=<port>'  
 
mysqldump  -uroot -p --host=localhost --all-databases --include-master-host-port
--insert-ignore
在插入行時使用INSERT IGNORE語句.
 
mysqldump  -uroot -p --host=localhost --all-databases --insert-ignore
--lines-terminated-by
輸出文件的每行用給定字符串劃分。與--tab選項一起使用黑忱,不能用于--databases和--all-databases選項宴抚。
 
mysqldump  -uroot -p --host=localhost test test --tab=”/tmp/mysql”  --lines-terminated-by=”##”
--lock-all-tables,  -x
提交請求鎖定所有數(shù)據(jù)庫中的所有表,以保證數(shù)據(jù)的一致性甫煞。這是一個全局讀鎖菇曲,并且自動關(guān)閉--single-transaction 和--lock-tables 選項。
 
mysqldump  -uroot -p --host=localhost --all-databases --lock-all-tables
--lock-tables,  -l
開始導出前抚吠,鎖定所有表常潮。用READ  LOCAL鎖定表以允許MyISAM表并行插入。對于支持事務(wù)的表例如InnoDB和BDB楷力,--single-transaction是一個更好的選擇喊式,因為它根本不需要鎖定表孵户。
請注意當導出多個數(shù)據(jù)庫時,--lock-tables分別為每個數(shù)據(jù)庫鎖定表岔留。因此夏哭,該選項不能保證導出文件中的表在數(shù)據(jù)庫之間的邏輯一致性。不同數(shù)據(jù)庫表的導出狀態(tài)可以完全不同献联。
 
mysqldump  -uroot -p --host=localhost --all-databases --lock-tables
--log-error
附加警告和錯誤信息到給定文件
mysqldump  -uroot -p --host=localhost --all-databases  --log-error=/tmp/mysqldump_error_log.err
--max_allowed_packet
服務(wù)器發(fā)送和接受的最大包長度竖配。
 
mysqldump  -uroot -p --host=localhost --all-databases --max_allowed_packet=10240
--net_buffer_length
TCP/IP和socket連接的緩存大小。
 
mysqldump  -uroot -p --host=localhost --all-databases --net_buffer_length=1024
--no-autocommit
使用autocommit/commit 語句包裹表里逆。
 
mysqldump  -uroot -p --host=localhost --all-databases --no-autocommit
--no-create-db,  -n
只導出數(shù)據(jù)进胯,而不添加CREATE DATABASE 語句。
 
mysqldump  -uroot -p --host=localhost --all-databases --no-create-db
--no-create-info,  -t
只導出數(shù)據(jù)原押,而不添加CREATE TABLE 語句龄减。
 
mysqldump  -uroot -p --host=localhost --all-databases --no-create-info
--no-data, -d
不導出任何數(shù)據(jù),只導出數(shù)據(jù)庫表結(jié)構(gòu)班眯。
 
mysqldump  -uroot -p --host=localhost --all-databases --no-data
--no-set-names,  -N
等同于--skip-set-charset
mysqldump  -uroot -p --host=localhost --all-databases --no-set-names
--opt
等同于--add-drop-table,  --add-locks, --create-options, --quick, --extended-insert, --lock-tables,  --set-charset, --disable-keys 該選項默認開啟,  可以用--skip-opt禁用.
 
mysqldump  -uroot -p --host=localhost --all-databases --opt
--order-by-primary
如果存在主鍵希停,或者第一個唯一鍵,對每個表的記錄進行排序署隘。在導出MyISAM表到InnoDB表時有效宠能,但會使得導出工作花費很長時間。 
 
mysqldump  -uroot -p --host=localhost --all-databases --order-by-primary
--password, -p
連接數(shù)據(jù)庫密碼
--pipe(windows系統(tǒng)可用)
使用命名管道連接mysql
 
mysqldump  -uroot -p --host=localhost --all-databases --pipe
--port, -P
連接數(shù)據(jù)庫端口號
--protocol
使用的連接協(xié)議磁餐,包括:tcp, socket, pipe, memory.
 
mysqldump  -uroot -p --host=localhost --all-databases --protocol=tcp
--quick, -q
不緩沖查詢违崇,直接導出到標準輸出。默認為打開狀態(tài)诊霹,使用--skip-quick取消該選項羞延。
 
mysqldump  -uroot -p --host=localhost --all-databases 
mysqldump  -uroot -p --host=localhost --all-databases --skip-quick
--quote-names,-Q
使用(`)引起表和列名。默認為打開狀態(tài)脾还,使用--skip-quote-names取消該選項伴箩。
 
mysqldump  -uroot -p --host=localhost --all-databases
mysqldump  -uroot -p --host=localhost --all-databases --skip-quote-names
--replace
使用REPLACE INTO 取代INSERT INTO.
 
mysqldump  -uroot -p --host=localhost --all-databases --replace
--result-file,  -r
直接輸出到指定文件中。該選項應(yīng)該用在使用回車換行對(\\r\\n)換行的系統(tǒng)上(例如:DOS鄙漏,Windows)嗤谚。該選項確保只有一行被使用。
 
mysqldump  -uroot -p --host=localhost --all-databases --result-file=/tmp/mysqldump_result_file.txt
--routines, -R
導出存儲過程以及自定義函數(shù)怔蚌。
 
mysqldump  -uroot -p --host=localhost --all-databases --routines
--set-charset
添加'SET NAMES  default_character_set'到輸出文件巩步。默認為打開狀態(tài),使用--skip-set-charset關(guān)閉選項桦踊。
 
mysqldump  -uroot -p --host=localhost --all-databases 
mysqldump  -uroot -p --host=localhost --all-databases --skip-set-charset
--single-transaction
該選項在導出數(shù)據(jù)之前提交一個BEGIN SQL語句椅野,BEGIN 不會阻塞任何應(yīng)用程序且能保證導出時數(shù)據(jù)庫的一致性狀態(tài)。它只適用于多版本存儲引擎,僅InnoDB竟闪。本選項和--lock-tables 選項是互斥的声离,因為LOCK  TABLES 會使任何掛起的事務(wù)隱含提交。要想導出大表的話瘫怜,應(yīng)結(jié)合使用--quick 選項术徊。
 
mysqldump  -uroot -p --host=localhost --all-databases --single-transaction
--dump-date
將導出時間添加到輸出文件中。默認為打開狀態(tài)鲸湃,使用--skip-dump-date關(guān)閉選項赠涮。
 
mysqldump  -uroot -p --host=localhost --all-databases
mysqldump  -uroot -p --host=localhost --all-databases --skip-dump-date
--skip-opt
禁用–opt選項.
 
mysqldump  -uroot -p --host=localhost --all-databases --skip-opt
--socket,-S
指定連接mysql的socket文件位置,默認路徑/tmp/mysql.sock
 
mysqldump  -uroot -p --host=localhost --all-databases --socket=/tmp/mysqld.sock
--tab,-T
為每個表在給定路徑創(chuàng)建tab分割的文本文件暗挑。注意:僅僅用于mysqldump和mysqld服務(wù)器運行在相同機器上笋除。
 
mysqldump  -uroot -p --host=localhost test test --tab="/home/mysql"
--tables
覆蓋--databases (-B)參數(shù),指定需要導出的表名炸裆。
 
mysqldump  -uroot -p --host=localhost --databases test --tables test
--triggers
導出觸發(fā)器垃它。該選項默認啟用,用--skip-triggers禁用它烹看。
 
mysqldump  -uroot -p --host=localhost --all-databases --triggers
--tz-utc
在導出頂部設(shè)置時區(qū)TIME_ZONE='+00:00' 国拇,以保證在不同時區(qū)導出的TIMESTAMP 數(shù)據(jù)或者數(shù)據(jù)被移動其他時區(qū)時的正確性。
 
mysqldump  -uroot -p --host=localhost --all-databases --tz-utc
--user, -u
指定連接的用戶名惯殊。
--verbose, --v
輸出多種平臺信息酱吝。
 
--version, -V
輸出mysqldump版本信息并退出
--where, -w
只轉(zhuǎn)儲給定的WHERE條件選擇的記錄。請注意如果條件包含命令解釋符專用空格或字符土思,一定要將條件引用起來务热。
 
mysqldump  -uroot -p --host=localhost --all-databases --where=” user=’root’”
--xml, -X
導出XML格式.
 
mysqldump  -uroot -p --host=localhost --all-databases --xml
--plugin_dir
客戶端插件的目錄,用于兼容不同的插件版本己儒。
 
mysqldump  -uroot -p --host=localhost --all-databases --plugin_dir=”/usr/local/lib/plugin”
--default_auth
客戶端插件默認使用權(quán)限崎岂。
mysqldump  -uroot -p --host=localhost --all-databases --default-auth=”/usr/local/lib/plugin/<plugin>”</plugin></port></host>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市闪湾,隨后出現(xiàn)的幾起案子冲甘,更是在濱河造成了極大的恐慌,老刑警劉巖响谓,帶你破解...
    沈念sama閱讀 218,386評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件损合,死亡現(xiàn)場離奇詭異,居然都是意外死亡娘纷,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,142評論 3 394
  • 文/潘曉璐 我一進店門跋炕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來赖晶,“玉大人,你說我怎么就攤上這事《舨澹” “怎么了捂贿?”我有些...
    開封第一講書人閱讀 164,704評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長胳嘲。 經(jīng)常有香客問我厂僧,道長,這世上最難降的妖魔是什么了牛? 我笑而不...
    開封第一講書人閱讀 58,702評論 1 294
  • 正文 為了忘掉前任颜屠,我火速辦了婚禮,結(jié)果婚禮上鹰祸,老公的妹妹穿的比我還像新娘甫窟。我一直安慰自己,他們只是感情好蛙婴,可當我...
    茶點故事閱讀 67,716評論 6 392
  • 文/花漫 我一把揭開白布粗井。 她就那樣靜靜地躺著,像睡著了一般街图。 火紅的嫁衣襯著肌膚如雪浇衬。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,573評論 1 305
  • 那天餐济,我揣著相機與錄音径玖,去河邊找鬼。 笑死颤介,一個胖子當著我的面吹牛梳星,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播滚朵,決...
    沈念sama閱讀 40,314評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼冤灾,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了辕近?” 一聲冷哼從身側(cè)響起韵吨,我...
    開封第一講書人閱讀 39,230評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎移宅,沒想到半個月后归粉,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,680評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡漏峰,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,873評論 3 336
  • 正文 我和宋清朗相戀三年糠悼,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片浅乔。...
    茶點故事閱讀 39,991評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡倔喂,死狀恐怖铝条,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情席噩,我是刑警寧澤班缰,帶...
    沈念sama閱讀 35,706評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站悼枢,受9級特大地震影響埠忘,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜馒索,卻給世界環(huán)境...
    茶點故事閱讀 41,329評論 3 330
  • 文/蒙蒙 一莹妒、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧双揪,春花似錦动羽、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,910評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至疯趟,卻和暖如春拘哨,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背信峻。 一陣腳步聲響...
    開封第一講書人閱讀 33,038評論 1 270
  • 我被黑心中介騙來泰國打工倦青, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人盹舞。 一個月前我還...
    沈念sama閱讀 48,158評論 3 370
  • 正文 我出身青樓产镐,卻偏偏與公主長得像,于是被迫代替她去往敵國和親踢步。 傳聞我的和親對象是個殘疾皇子癣亚,可洞房花燭夜當晚...
    茶點故事閱讀 44,941評論 2 355

推薦閱讀更多精彩內(nèi)容