Mysqlbackup 備份詳解

Michael_DD發表於2014-12-18
Mysqlbackup 備份詳解


只有企業版才有的功能:

下載地址:


A.1全庫備份.

命令:
mysqlbackup --defaults-file=/home/mysql-server/mysql3/my.cnf  --user=root --password=root  --databases="mysql total2" --with-timestamp   --backup-dir=/home/mysql-server/backup   backup

引數說明:    

--defaults-file my.cnf檔案的路徑,主要用於一臺伺服器多個mysql服務.預設位置是/etc/my.cnf
--user  使用者名稱,這個使用者必須在mysql庫裡面有建立table和查詢,插入的許可權.在備份的過程中.mysqlbackup會在mysql庫下建立backup_history, backup_progress表.使用者保留備份的歷史資訊和備份的基礎資訊.   
--password密碼
--database 需要備份的資料庫,要備份多個資料庫需要用””包括起來,每個資料庫中間用空格分開
--with-timestamp使用者建立一個備份目錄下面當前時間的資料夾,如果沒有這個引數,多次備份時,制定同一個目錄,會使上一次備份的檔案覆蓋掉.
--backup-dir備份的目錄

Backup  表明,這是備份操作


A.2全庫還原.

第一步:檢測事務日誌

Mysqlbackup --defaults-file=/home/mysql-server/mysql2/my.cnf  --backup-dir=/home/mysql-server/backup/2012-03-21_14-01-34/  apply-log

引數說明:
apply-log:因為在備份的時候是線上的,如果有新插入的SQL語句,會記錄新增加的LSN點,然後新修改的頁面會放到這個檔案裡面(ibbackup_logfile),
同時也會放到表空間裡面.當還原使用這個引數的時候,mysqlbackup會檢測ibbackup_logfile和表空間的LSN點,
然後比較ibbackup_logfile檔案表空間LSN的差值,把這個值放到事務日誌LOG裡面.
(事務日誌如果填滿了,會進入表空間的)


第二步:copy物理檔案
mysqlbackup --defaults-file=/home/mysql-server/mysql2/my.cnf --backup-dir=/home/mysql-server/backup/2012-03-21_14-01-34/  --innodb_log_files_in_group=2  copy-back


 

B.1 壓縮全庫備份

mysqlbackup --defaults-file=/home/mysql-server/mysql3/my.cnf  --user=root --password=root --compress-level=1 --databases="mysql total2" --with-timestamp   --backup-dir=/home/mysql-server/backup  backup

 

引數說明:

--compress-level=1

1為快速壓縮.共有9個等級

B.2壓縮還原

第一步:檢測事務日誌,並解壓

mysqlbackup --defaults-file=/home/mysql-server/mysql2/my.cnf --uncompress --backup-dir=/home/mysql-server/backup/2012-03-21_14-08-33/ apply-log

uncompress解壓壓縮後的檔案.

第二步:copy物理檔案

mysqlbackup --defaults-file=/home/mysql-server/mysql2/my.cnf --innodb_log_files_in_group=2 --backup-dir=/home/mysql-server/backup/2012-03-21_14-08-33/ copy-back

增量備份不支援壓縮. backup-and-apply-log引數不能跟--compress-level同用

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29500582/viewspace-1372082/,如需轉載,請註明出處,否則將追究法律責任。

相關文章