使用mysqlbackup 備份

使用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同用


推薦閱讀:

OCP-1Z0-051 第九題
OCP-1Z0-051 第十二題
OCP-1Z0-051 第七題
OCP-1Z0-051 第八題
OCP-1Z0-051 第十五題

TAG:數據備份 | MySQL | ocp認證 |