備份:備份乙個資料庫(shell中執行,下同):
mysqldump -uusername -ppassword -hhostname --databases db_name > /path/db_name.sql
備份多個資料庫
mysqldump -uusername -hhostname -ppassword --databases db1_name db2_name db3_name >/path/multidb_name.sql
備份所有資料庫
mysqldump -uusername -hhostname -ppassword --all-databases >/path/alldb_name.sql
僅僅備份資料結構
mysqldump -uusername -hhostname -ppassword --no-data db_name >/path/db_name.sql
基於事務的備份
mysqldump -uuser -hhostname -ppassword --opt --single-transaction --default-character-set=utf8 --triggers db_name >/path/db_name.sql
壓縮備份
mysqldump -uusername -hhostname -ppassword db_name |gzip -9 >/path/db_name.gz
常用選項:
--databases db_name
--all-databases
--single-transaction(適用事務表)
--master-data(熱備份)
--trigers(同時匯出觸發器,該選項預設啟用,用--skip-trigers禁用他)
--routines,-r(匯出儲存過程以及自定義函式)
--opt(這只是乙個快捷選項,等同於同時新增 --add-drop-tables --add-locking --create-option --disable-keys --extended-insert --lock-tables --quick --set-charset
選項。本選項能讓 mysqldump 很快的匯出資料,並且匯出的資料能很快導回。該選項預設開啟,但可以用 --skip-opt 禁用。注意,如果執行 mysqldump 沒有指定 --quick 或 --opt 選項
,則會將整個結果集放在記憶體中。如果匯出大資料庫的話可能會出現問題。)
--no-data,-d(不匯出任何資料,只匯出資料庫表結構)
--no-create-info,-t(只匯出資料,而不新增create table語句)
--lock-tables(它和 --lock-all-tables 類似,不過是鎖定當前匯出的資料表,而不是一下子鎖定全部庫下的表。本選項只適用於 myisam 表,如果是 innodb 表可以用 --single
-transaction 選項。)
--hex-blob(使用十六進製制格式匯出二進位制字串字段。如果有二進位制資料就必須使用本選項。影響到的字段型別有 binary、varbinary、blob。)
--extended-insert = true|false(預設情況下,mysqldump 開啟 --complete-insert 模式,因此不想用它的的話,就使用本選項,設定它的值為 false 即可。)
mysql還原:
普通備份還原
mysql db_name 壓縮備份還原
gunzip mysql中還原
source /root/data.back
將資料庫轉移到新伺服器
mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -c databasename
例子恢復資料庫必須指定乙個已經存在的資料庫 db2
[root@stu188 bin]# mysql -u root -p123 db2 < all.sql
mysql> source /root/db1.sql;(在mysql中進行恢復)
#備份db1裡的t7表
[root@stu12 mysql]# mysqldump -u root -p123 db1 t7 > t7.sql
#恢復db1裡的t7表
[root@stu12 mysql]# mysqldump -u root -p123 db1 t7 < t7.sql
#備份所有庫
[root@stu12 mysql]# mysqldump -uroot -p123 --all-database > all.sql
#恢復所有庫
[root@stu12 mysql]# mysqldump -uroot -p123 < all.sql
#備份db1裡面的tb1和tb2的表
[root@stu12 mysql]# mysqldump db1 tb1 tb2 -u root -p123 > biao.sql
mysql 備份與恢復 MySQL 備份與恢復
1 檢視資料庫的資料儲存在哪個目錄下 shiyanlou mysql uroot e show variables like datadir variable name value datadir var lib mysql 2 備份資料的方法 select into outfile 檔名 或者 s...
mysql 備份與恢復 Mysql 備份與恢復
資料檔案一致性處理 在完全備份的情況下,檔案不是時間點一致的,因為進行快照的時間點不一樣。如果嘗 試在未prepare資料的情況下還原資料庫,雖然操作上支援恢復,但是在啟動的時候仍會 進行資料recovery。執行帶 prepare 選項的 mariabackup 命令會使資料檔案進行統一,達到資料...
mysql備份恢復 mysql之備份與恢復
工作中,我們經常會遇到資料庫的備份與恢復場景 目錄1 mysql的備份與恢復 2 mysql的匯入與匯出 1 mysql的備份與恢復 mysql的備份命令是mysqldump,mysql之備份 mysqldump u user h host port p db table.file u 後面接資料庫...