MySQL 5.5 mysqldump備份說明
mysqldump客戶端工具可以執行邏輯備份,生成一系列可以執行的SQL語句。透過這個工具可以備份出一個或多個MySQL資料庫。mysqldump命令也可以生成CSV格式、分隔符格式或XML格式的輸出檔案。
--常用引數
--help, -? 顯示幫助
--user=user_name, -u user_name 當連線到MySQL伺服器時,所使用的使用者名稱
--password[=password], -p[password] 當連線到MySQL伺服器時,所使用的密碼;當使用短引數-p搭配明文密碼時,在-p和密碼之間不能有空格。
--socket=path, -S path 當連線到本地伺服器時,Unix系統使用的套接字檔案,或Windows系統使用的命名管道
--host=host_name, -h host_name MySQL伺服器所在的主機。預設主機是本地伺服器。
--port=port_num, -P port_num 連線所使用的TCP/IP埠號
--databases, -B 備份多個資料庫
--all-databases, -A 備份所有資料庫中的所有表
--tab=dir_name, -T dir_name 備份tab符分割的文字格式資料檔案
--fields-terminated-by 匯出檔案的欄位分隔符,搭配--tab引數使用
--fields-escaped-by 匯出檔案的欄位包裹符,搭配--tab引數使用
--default-character-set=charset_name 指定預設的字符集
--tables 覆蓋--databases or -B引數,備份出表的資料
--where='where_condition', -w 'where_condition' 只匯出符合指定WHERE條件的行
例如:
--where="user='jimf'"
-w"userid>1"
-w"userid<1"
--lock-tables, -l 對於要備份的資料庫,鎖定所有要備份的表。對於MyISAM 表,所加的鎖是READ LOCAL鎖,以允許表的併發插入操作。對於事務性表InnoDB表,--single-transaction引數要比--lock-tables效果好,因為這個引數不會鎖表。
--single-transaction 這個引數將事務的隔離模式設定為REPEATABLE READ,然後在備份前傳送START TRANSACTION語句到伺服器。這對於事務表InnoDB表來說很有用,因為備份的時候會備份一致狀態的資料庫(備份的時間點是發出START TRANSACTION語句的時候)而不會阻塞任何應用的進行
--no-data, -d 只匯出表的結構
--no-create-info, -t 匯出的時候,不匯出CRATE TABLE語句
--force, -f 匯出的時候,忽略所有錯誤,及時遇到SQL錯誤,也繼續執行
--flush-logs, -F 匯出前重新整理日誌檔案
--extended-insert, -e 對於INSERT語句使用多行插入語法(一行INSERT語句帶有多個VALUES列表),這個引數會縮小備份檔案的大小並且會提高資料匯入時的INSERT執行速度
--dump-slave[=value] 用於生成Slave備份集。
--include-master-host-port 通常和--dump-slave引數搭配使用,本引數將在CHANGE MASTER TO語句後附加MASTER_HOST和MASTER_PORT內容
--master-data[=value] 用於生成Slave備份集的專用引數
--lock-all-tables, -x 鎖定資料庫中所有的表。這個引數會在備份的過程中為資料庫加上全域性只讀鎖。這引數會關閉 --single-transaction 和 --lock-tables 這兩個引數。
--disable-keys, -K 在匯出的檔案中輸出/*!40000 ALTER TABLE tbl_name DISABLE KEYS */; 和 /*!40000 ALTER TABLE tbl_name ENABLE KEYS */;語句。在插入資料前先禁用索引,等資料插入完成後再啟用索引,目的是為了加快匯入的速度。
--max_allowed_packet 服務端和客戶端連線使用buffer的最大位元組長度,預設值時24MB,最大值時1GB。
--net_buffer_length 服務端和客戶端連線使用的初始化buffer大小
--no-autocommit 禁用自動提交功能
--no-create-db, -n 不生成CREATE DATABASE語句
--routines, -R 匯出儲存過程和函式
--flush-privileges 當匯出mysql資料庫後執行FLUSH PRIVILEGES語句
--ignore-table=db_name.tbl_name 不匯出的表名
[root@localhost backup]# /software/bin/mysqldump -help
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help
--備份單個資料庫
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock fire > /backup/firedb_fullbk.sql
--備份多個資料庫
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock --databases neo fire > /backup/fire_neo_db_fullbk.sql
--備份全庫
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock --all-databases > /backup/all_db_fullbk.sql
--備份所有庫
[root@localhost backup]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock -A -R --single-transaction -l --default-character-set=utf8 | gzip > /backup/dbfullbak_`date +%F`.sql.gz
-- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.
[root@localhost backup]# ls -trl
-rw-r--r--. 1 root root 1208158 Apr 23 07:11 dbfullbak_2016-04-23.sql.gz
--備份單個庫,生成tab符分割的文字格式資料檔案
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock --tab=/backup/ fire
--常用引數
--help, -? 顯示幫助
--user=user_name, -u user_name 當連線到MySQL伺服器時,所使用的使用者名稱
--password[=password], -p[password] 當連線到MySQL伺服器時,所使用的密碼;當使用短引數-p搭配明文密碼時,在-p和密碼之間不能有空格。
--socket=path, -S path 當連線到本地伺服器時,Unix系統使用的套接字檔案,或Windows系統使用的命名管道
--host=host_name, -h host_name MySQL伺服器所在的主機。預設主機是本地伺服器。
--port=port_num, -P port_num 連線所使用的TCP/IP埠號
--databases, -B 備份多個資料庫
--all-databases, -A 備份所有資料庫中的所有表
--tab=dir_name, -T dir_name 備份tab符分割的文字格式資料檔案
--fields-terminated-by 匯出檔案的欄位分隔符,搭配--tab引數使用
--fields-escaped-by 匯出檔案的欄位包裹符,搭配--tab引數使用
--default-character-set=charset_name 指定預設的字符集
--tables 覆蓋--databases or -B引數,備份出表的資料
--where='where_condition', -w 'where_condition' 只匯出符合指定WHERE條件的行
例如:
--where="user='jimf'"
-w"userid>1"
-w"userid<1"
--lock-tables, -l 對於要備份的資料庫,鎖定所有要備份的表。對於MyISAM 表,所加的鎖是READ LOCAL鎖,以允許表的併發插入操作。對於事務性表InnoDB表,--single-transaction引數要比--lock-tables效果好,因為這個引數不會鎖表。
--single-transaction 這個引數將事務的隔離模式設定為REPEATABLE READ,然後在備份前傳送START TRANSACTION語句到伺服器。這對於事務表InnoDB表來說很有用,因為備份的時候會備份一致狀態的資料庫(備份的時間點是發出START TRANSACTION語句的時候)而不會阻塞任何應用的進行
--no-data, -d 只匯出表的結構
--no-create-info, -t 匯出的時候,不匯出CRATE TABLE語句
--force, -f 匯出的時候,忽略所有錯誤,及時遇到SQL錯誤,也繼續執行
--flush-logs, -F 匯出前重新整理日誌檔案
--extended-insert, -e 對於INSERT語句使用多行插入語法(一行INSERT語句帶有多個VALUES列表),這個引數會縮小備份檔案的大小並且會提高資料匯入時的INSERT執行速度
--dump-slave[=value] 用於生成Slave備份集。
--include-master-host-port 通常和--dump-slave引數搭配使用,本引數將在CHANGE MASTER TO語句後附加MASTER_HOST和MASTER_PORT內容
--master-data[=value] 用於生成Slave備份集的專用引數
--lock-all-tables, -x 鎖定資料庫中所有的表。這個引數會在備份的過程中為資料庫加上全域性只讀鎖。這引數會關閉 --single-transaction 和 --lock-tables 這兩個引數。
--disable-keys, -K 在匯出的檔案中輸出/*!40000 ALTER TABLE tbl_name DISABLE KEYS */; 和 /*!40000 ALTER TABLE tbl_name ENABLE KEYS */;語句。在插入資料前先禁用索引,等資料插入完成後再啟用索引,目的是為了加快匯入的速度。
--max_allowed_packet 服務端和客戶端連線使用buffer的最大位元組長度,預設值時24MB,最大值時1GB。
--net_buffer_length 服務端和客戶端連線使用的初始化buffer大小
--no-autocommit 禁用自動提交功能
--no-create-db, -n 不生成CREATE DATABASE語句
--routines, -R 匯出儲存過程和函式
--flush-privileges 當匯出mysql資料庫後執行FLUSH PRIVILEGES語句
--ignore-table=db_name.tbl_name 不匯出的表名
[root@localhost backup]# /software/bin/mysqldump -help
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help
--備份單個資料庫
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock fire > /backup/firedb_fullbk.sql
--備份多個資料庫
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock --databases neo fire > /backup/fire_neo_db_fullbk.sql
--備份全庫
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock --all-databases > /backup/all_db_fullbk.sql
--備份所有庫
[root@localhost backup]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock -A -R --single-transaction -l --default-character-set=utf8 | gzip > /backup/dbfullbak_`date +%F`.sql.gz
-- Warning: Skipping the data of table mysql.event. Specify the --events option explicitly.
[root@localhost backup]# ls -trl
-rw-r--r--. 1 root root 1208158 Apr 23 07:11 dbfullbak_2016-04-23.sql.gz
--備份單個庫,生成tab符分割的文字格式資料檔案
[root@localhost tmp]# /software/bin/mysqldump -usystem -p'Mysql#2015' -S /data/mysql.sock --tab=/backup/ fire
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26506993/viewspace-2086259/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL 5.5 Slave節點備份指令碼(mysqldump)MySql指令碼
- MySQL 5.7 mysqlpump 備份工具說明MySql
- Mysqldump備份說明及資料庫備份指令碼分享-運維筆記MySql資料庫指令碼運維筆記
- mysql 邏輯備份 (mysqldump)MySql
- mysql 備份資料庫 mysqldumpMySql資料庫
- MySQL主從配置及mysqldump備份MySql
- mysql5.6 mysqldump備份報錯MySql
- mysql備份恢復mysqldump面面觀MySql
- MySQL mysqldump命令的引數詳細說明MySql
- mysqldump引數說明MySql
- mysqldump 引數說明MySql
- mysql之 mysqldump 備份恢復詳解MySql
- Mysql增量備份之Mysqldump& MylvmbackupMySqlLVM
- mysql的常用備份工具:mysqldump和mysqlhotcopyMySql
- SQLSERVER 備份BCP命令說明SQLServer
- Mysql備份系列(2)--mysqldump備份(全量+增量)方案操作記錄MySql
- 【mysqldump】mysqldump及備份恢復示例MySql
- Mysql備份和還原資料庫-mysqldumpMySql資料庫
- mysqldump來備份MYSQL資料庫(指令碼)MySql資料庫指令碼
- MySQL 5.5 INSERT ... ON DUPLICATE KEY UPDATE語句說明MySql
- MySQL 5.5編譯安裝cmake引數說明MySql編譯
- mysqldump備份技巧分享MySql
- MySQLDump的備份方法MySql
- Mysqldump的備份流程MySql
- mysqldump 備份指令碼MySql指令碼
- mysqldump備份指令碼MySql指令碼
- 邏輯備份--mysqldumpMySql
- mysqldump引數詳細說明MySql
- MySQL 5.7 新備份工具mysqlpump 使用說明 - 運維小結MySql運維
- 使用Mysqldump備份和恢復MySQL資料庫MySql資料庫
- 【MySQL】mysqldump備份失敗與解決方案合集MySql
- 使用mysqldump對mysql進行備份和恢復MySql
- 簡記MySQL的邏輯備份(mydumper+mysqldump)MySql
- windows mysqldump備份指令碼WindowsMySql指令碼
- mysqldump備份原理解析MySql
- 詳解MySQL資料備份之mysqldump使用方法MySql
- 使用mysqldump進行mysql資料庫備份還原MySql資料庫
- mysqldump備份不輸入密碼直接備份MySql密碼