【SQL】MySQL資料庫之使用mysqldump全備份及恢復過程詳解

【SQL】MySQL之使用mysqldump全備份及恢復過程詳解

 

【目標】使用mysqldump做全備,結合mysql自帶的binlog功能實現增量備份

為瞭操作方便,建議開啟兩個Terminal,一個進行Mysql的相關操作,一個進行linux語句操作。

 

 

【註】

 

進行以下步驟前,必須進行環境變量的配置,以確保mysql和mysqldump可以直接運行。

 

若沒有進行相關的環境變量配置,則需要在mysql和mysqldump命令前加入MySQL的安裝路徑。

 

如:

 

[sql] 
/opt/mysql/bin/mysql  
/opt/mysql/bin/mysqldump  

 

操作步驟詳解:

 

(1)新建表單:在test下面新建表Test1。(為瞭簡便起見,僅設置其內容為一,列名為id)

 

(2)填入初始數據 1,2,3

 

(3)查詢表單數據:

 

[sql] 
mysql> select * from Test1;  
+----+  
| id |  
+----+  
|  1 |  
|  2 |  
|  3 |  
+----+  
3 rows in set (0.01 sec)  

 

(4)將庫test 備份為testtt.sql。對數據更新-F 表示生成新的日志文件:

 

[sql] 
mysqldump -hlocalhost -uroot -pjue -l -F test > testtt.sql;  

 

(5)備份後,對數據更新:

 

[sql] 
mysql> insert into Test1 values(4),(5),(6),(7);  

 

 

執行結果:

[sql] 
Query OK, 4 rows affected (0.04 sec)  
Records: 4  Duplicates: 0  Warnings: 0  

 

(6)查詢更新後表單數據:

 

[sql] 
mysql> select * from Test1;  

 

執行結果:

[sql] 
+----+  
| id |  
+----+  
|  1 |  
|  2 |  
|  3 |  
|  4 |  
|  5 |  
|  6 |  
|  7 |  
+----+  
7 rows in set (0.00 sec)  

 

(8)讀取備份記錄。

 

[sql] 
mysql -hlocalhost -uroot -pjue test < testtt.sql;  

 

(9)查詢讀取備份後的Test1表單

 

[sql] 
mysql> select * from Test1;  

 

執行結果:

 

[sql] 
+------+  
| id   |  
+------+  
|    1 |  
|    2 |  
|    3 |  
+------+  

 

可以看出,我們後來新增的四條記錄消失,我們現在的記錄是之前備份的記錄。

 

說明我們的全備份是成功的。

 

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。