天天看點

mysqlbackup 備份恢複資料

全備份

./mysqlbackup --defaults-file=/etc/my.cnf --user=root --password=aixocm --socket=/var/lib/mysql/mysql.sock --backup-dir=/data/ backup

--defaults-file my.cnf檔案的路徑,主要用于一台伺服器多個mysql服務.預設位置是/etc/my.cnf

--backup-dir備份的目錄

backup  表明,這是備份操作

全庫還原

1.檢測事務日志

./mysqlbackup --defaults-file=/etc/my.cnf --backup-dir=/data/ apply-log

apply-log:因為在備份的時候是線上的,如果有新插入的SQL語句,會記錄新增加的LSN點,

然後新修改的頁面會放到這個檔案裡面(ibbackup_logfile),同時也會放到表空間裡面.當還原使用這個參數的時候,

mysqlbackup會檢測ibbackup_logfile和表空間的LSN點,然後比較ibbackup_logfile檔案表空間LSN的內插補點,

把這個值放到事務日志LOG裡面.(事務日志如果填滿了,會進入表空間的)

2.copy實體檔案

還原所有資料庫

./mysqlbackup --defaults-file=/etc/my.cnf --backup-dir=/data/ --innodb_log_files_in_group=2 copy-back --force

增量備份

1. 第一次增量備份

./mysqlbackup --defaults-file=/etc/my.cnf --socket=/var/lib/mysql/mysql.sock --user=root

 --password=aixocm --incremental --incremental-backup-dir=/incre/ --incremental-base=dir:/data/ backup

 --incremental :代表為增量備份

 --incremental-backup-dir : 增量備份存放到哪個路徑下

 --incremental-base : 增量備份的基礎備份或增量備份的檔案

 還原

 1.全備還原

 ./mysqlbackup --defaults-file=/etc/my.cnf --backup-dir=/data/ apply-log

 2.增備份還原

 ./mysqlbackup --backup-dir=/data/ --incremental-backup-dir=/incre/  apply-incremental-backup

 3.進行實體檔案複制

 ./mysqlbackup --defaults-file=/etc/my.cnf --backup-dir=/data/ copy-back --force

     本文轉自小白的希望 51CTO部落格,原文連結:http://blog.51cto.com/haoyonghui/2052635,如需轉載請自行聯系原作者