mysql數據庫恢復


數據庫恢復注意事項

# 數據恢復和字符集關聯很大,如果字符集不正確會導致恢復的數據亂碼。

#MySQL命令和source命令恢復數據庫的原理就是把文件的SQL語句,在數據庫重新執行的過程。

1、利用source命令恢復數據庫

進入MySQL數據庫控制台

mysql -u root -p密碼登陸后,mysql>use 數據庫,然后使用source命令,后面參數為腳本文件。
mysql>source dadong_db.sql    ###這個文件可以是全路徑的壓縮包,也可以是相對路徑(必須先進入到壓縮包所在的文件夾中,默認是登陸mysql前的系統路徑)。

2、針對壓縮的備份數據進行恢復

2.1、使用gzip解壓(刪除壓縮文件)

先備份數據庫,做測試數據
[root@DB02 opt]# mysqldump -B --master-data=2 dadong|gzip >/opt/dadong.sql.gz
[root@DB02 opt]# ls
dadong.sql.gz
####解壓壓縮包
[root@DB02 opt]# gzip -d /opt/dadong.sql.gz    
[root@DB02 opt]# ls
dadong.sql
 ###恢復數據庫
 [root@DB02 ~]# mysql </opt/dadong.sql   

注意:gzip參數:

-c 將輸出寫到標准輸出上,並保留原有文檔。

-d 將壓縮文檔解壓。

如果在導出數據庫時指定了-B參數,恢復時無需指定庫恢復。因為-B參數帶了use dadong 還會有create database dadong;而恢復時指定庫就類似於use dadong.

2.2、使用gzip解壓(不會刪除壓縮文件)

使用gzip加參數cd不會刪除原文件。

[root@DB02 ~]# !mysqldump    ##調用最近的mysqldump命令,重復執行備份。
mysqldump -B --master-data=2 dadong|gzip >/opt/t.sql.gz
 [root@DB02 ~]# gzip -cd /opt/dadong.sql.gz >/opt/dadong1.sql
 [root@DB02 ~]# mysql </opt/dadong1.sql
 [root@DB02 ~]#

注:如果不想退出數據庫執行恢復語句時可以使用system
mysql> system cd /root
mysql> exit
Bye
[root@DB02 ~]# pwd
/root
[root@DB02 ~]#

mysql> system mysqldump -B --master-data=2 --single-transaction -B dadong |gzip >  /opt/all.sql.gz
mysql> exit
Bye
[root@DB02 ~]# cd /opt/
[root@DB02 opt]# ls
10.txt  2.txt  4.txt  6.txt  8.txt  all.sql.gz  dadong.sql
1.txt   3.txt  5.txt  7.txt  9.txt  dadong
[root@DB02 opt]#

2.3、 使用zcat讀取壓縮包數據

使用zcat讀取壓縮包數據。

[root@DB02 ~]# zcat /opt/dadong.sql.gz >/opt/dadong3.sql
 [root@DB02 ~]# mysql </opt/dadong3.sql

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM