MySQL-mysqldump备份方法
生活随笔
收集整理的這篇文章主要介紹了
MySQL-mysqldump备份方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
mysqldump備份
前言: mysqldump 是 MySQL 系統自帶的邏輯備份工具,主要用于轉儲數據庫。 是最常用的 MySQL數據庫備份方法。
mysqldump 的各種使用方法:
# 備份全部數據庫 mysqldump -uroot -pxxxxxx --single-transaction -R -E --all-databases > /tmp/all_database.sql# 要求記錄 binlog 位點信息 可用于搭建從庫 mysqldump -uroot -pxxxxxx --single-transaction -R -E --all-databases --master-data=2 > /tmp/all_database.sql# 備份指定數據庫(單個) mysqldump -uroot -pxxxxxx --single-transaction -R -E --databases db1 > /tmp/db1.sql# 備份指定數據庫(多個) mysqldump -uroot -pxxxxxx --single-transaction -R -E --databases db1 db2 > /tmp/db1_db2.sql# 備份單表 mysqldump -uroot -pxxxxxx --single-transaction db1 tb1 > /tmp/tb1.sql# 備份部分表 mysqldump -uroot -pxxxxxx --single-transaction db1 tb1 tb2 tb3 > /tmp/tb.sql# 導出某個表,數據以單行insert顯示 mysqldump -uroot -pxxxxxx --single-transaction --skip-extended-insert db1 tb1 > /tmp/tb1.sql# 導出單表的部分數據 mysqldump -uroot -pxxxxxx --single-transaction db1 tb1 --where=" create_time >= '2021-06-01 00:00:00' " > /tmp/tb1.sql mysqldump -uroot -pxxxxxx --single-transaction db1 tb1 --where='id < 10' > /tmp/tb1.sql# 排除某些表導出 mysqldump -uroot -pxxxxxx --single-transaction --databases db1 --ignore-table=db1.tb1 --ignore-table=db1.tb2 > /tmp/db1.sql# 只導出結構 mysqldump -uroot -pxxxxxx db1 --no-data > /tmp/db1_jiegou.sql# 只導出數據 mysqldump -uroot -pxxxxxx db1 --no-create-info > /tmp/db1_data.sql# 只導出某個庫的存儲過程及自定義函數 mysqldump -uroot -pxxxxxx -d -t -R db1 > /tmp/db1_routine.sql# 遠程導出 即MySQL服務端不在本地 mysqldump -uroot -pxxxxxx -hxxx.xxx.xx -P3306 --single-transaction --databases db1 > /tmp/db1.sql以下是從從 MySQL 官方文檔整理的mysqldump 工具的參數。
| –user | -u | MySQL用戶名 |
| –pasword | -p | (小寫)MySQL密碼 |
| –host | -h | MySQL 的ip地址 |
| –port | -P | (大寫)MySQL 端口號 |
| –databases | -B | 指定要備份的數據庫 |
| –all-databases | -A | 備份MySQL服務器上的所有數據庫 |
| –add-drop-databases | 每個創建庫之前添加drop語句(默認不開啟) | |
| –add-drop-table | 每個創建表之前添加drop語句(默認開啟) | |
| –events | -E | 導出事件(默認不開啟) |
| –routines | -R | 導出存儲過程和自定義函數(默認不開啟) |
| –triggers | 導出觸發器(默認開啟) | |
| –extended-insert | -e | 使用具有多個VALUES列的INSERT 語法(默認開啟) |
| –ignore-table | 不導出指定表,指定忽略多個表時,需要重復多次 | |
| –no-data | -d | 不導出任何數據,指導出數據庫表結構 |
| –no-create-info | -t | 只導出數據,而不添加CREATE TABLE 語句 |
| –force | -f | 在導出過程中忽略出現的SQL錯誤(默認不開啟) |
| –tz-utc | 在導出頂部設置時區TIME_ZONE=‘00:00’(默認開啟) | |
| –where | -w | 只轉儲給定的where條件選擇的紀錄 |
| –set-gtid-purged | 是否添加SET@@GLOBAL.GTID_PURGED 輸出 | |
| –single-transaction | 通過在一個事務中導出所有表而創建一個一致性的快照,適用于 innodb引擎 | |
| –master-data | 該選項將當前服務器的binlog的位置和文件名追加到輸出文件中。如果為1,則輸出CHANGE MASTER 命令,如果為2,則輸出CHANGE MASTER 命令前添加注釋信息 |
總結
以上是生活随笔為你收集整理的MySQL-mysqldump备份方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 毕业设计-基于微信小程序的社区健康教育系
- 下一篇: 技术合伙人