《Mysql學習淺談MySQL數據庫的備份與恢復》要點:
本文介紹了Mysql學習淺談MySQL數據庫的備份與恢復,希望對您有用。如果有疑問,可以聯系我們。
一、MySQL 常見的備份方式
MYSQL必讀
1. 直接拷貝數據庫文件(物理拷貝)MYSQL必讀
2. 使用 mysqldump 工具備份MYSQL必讀
3. 使用 mysqlhotcopy 工具備份MYSQL必讀
4. 使用 mysql 的主從同步復制,實現數據實時同步備份MYSQL必讀
二、MySQL 物理數據文件結構介紹
MYSQL必讀
1. 日志文件MYSQL必讀
錯誤日志 err log
二進制日志 binary log
更新日志 update log
查詢日志 query log
慢查詢日志 slow query log
innodb 的 redo 日志
MYSQL必讀
2. 數據文件MYSQL必讀
>>>對于 myisam 來說:MYSQL必讀
表結構信息:.frm
數據信息:.myd
數據索引信息;.myi
>>>對于 Innodb 來說:MYSQL必讀
獨享表空間:.ibd
共享表空間:.ibdata
MYSQL必讀
3. 系統文件MYSQL必讀
配置文件:my.cnf
進程文件:xxx.pid
socket文件:xxx.sock
MYSQL必讀
4. replication 文件MYSQL必讀
master.info:存儲在 slave 端目錄下,關于 master 和 slave 相關信息
relay log:存儲 I/O 進程從 master 讀取的 bin-log 信息,然后由 slave 端的 SQL 線程從該 binary log 中讀取解析過的日志信息,轉化成 slave 所能執行的 query 語句
index:則是存放 binary log 的路徑,也就是目錄文件
MYSQL必讀
三、使用 mysqldump 備份與恢復
MYSQL必讀
1. 備份原理MYSQL必讀
mysqldump 備份原理比較簡單,先查出需要備份的表結構,在文本文件中生成一個 create 語句;然后將表中的所有數據記錄轉換成一條 insert 語句;通過這些語句就能夠創建表并插入數據.MYSQL必讀
2. 備份一個數據庫MYSQL必讀
基本語法:MYSQL必讀
>>> mysqldump -u username -p dbname table1 table2 ... > BackupName.sql
MYSQL必讀
實例說明:MYSQL必讀
mysqldump -u root -p test person > /tmp/backup.sql
MYSQL必讀
3. 備份多個數據庫MYSQL必讀
基本語法:MYSQL必讀
mysqldump -u username -p --databases dbname2 dbname2 > BackupName.sql
MYSQL必讀
實例說明:MYSQL必讀
mysqldump -u root -p --databases test mysql > /tmp/backup.sql
MYSQL必讀
4. 備份所有數據庫MYSQL必讀
基本語法:MYSQL必讀
mysqldump -u username -p -all-databases > BackupName.sql
MYSQL必讀
實例說明:MYSQL必讀
mysqldump -u -root -p -all-databases > /tmp/all.sql
MYSQL必讀
5. 數據恢復MYSQL必讀
基本語法:MYSQL必讀
mysql -u root -p [dbname] < backup.sql
MYSQL必讀
實例說明:MYSQL必讀
mysql -u root -p < /tmp/backup.sql
MYSQL必讀
四、直接復制數據庫目錄
MYSQL必讀
MySQL 有一種非常簡單的備份方法,就是將 MySQL 中的數據庫文件直接復制出來.這是最簡單,速度最快的方法.不過在此之前,要先將服務器停止,這樣才可以保證在復制期間數據庫的數據不會發生變化.如果在復制數據庫的過程中還有數據寫入,就會造成數據不一致.這種情況在開發環境可以,但是在生產環境中很難允許備份服務器.MYSQL必讀
注意:這種方法不適用于 InnoDB 存儲引擎的表,而對于 MyISAM 存儲引擎的表很方便.同時,還原時 MySQL 的版本最好相同.MYSQL必讀
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/1264.html