標籤:mysql mysql備份 xtrabackup
mysql備份之xtrabackup(建議用來備份innodb)
:https://www.percona.com/downloads/XtraBackup/
安裝xtrabackup
[[email protected] ~]# yum install percona-xtrabackup
完全備份節點一
修改設定檔,設定為每張表單獨一個資料表空間,此項必須在安裝資料庫的時候就設定
[[email protected] ~]# vim /etc/my.cnf[mysqld]innodb_file_per_table=ON
建立備份目錄
[[email protected] ~]# mkdir /backpus/
備份
[[email protected] ~]# innobackupex --user=root /backpus/
複製給節點2
[[email protected] ~]# scp -r /backpus/2016-07-13_20-27-04 192.168.1.114:/root/
節點二
(節點二的mysql安裝後不要啟動,啟動後因產生有初始設定檔案無法還原)
[[email protected] ~]# yum install percona-xtrabackup
把備份檔案移動到/backups目錄下
[[email protected] ~]# mkdir /backups/[[email protected] ~]# mv 2016-07-13_20-27-04/ /backups/
對備份檔案進行整理
[[email protected] ~]# innobackupex --apply-log /backups/2016-07-13_20-27-04/
還原
[[email protected] ~]# innobackupex --copy-back /backups/2016-07-13_20-27-04/
修改檔案許可權
[[email protected] ~]# chown -R mysql:mysql /var/lib/mysql/*
增量備份
修改資料
[[email protected] ~]# mysqlMariaDB [(none)]> use hellodb;MariaDB [hellodb]> create table xxoo2 (id int);MariaDB [hellodb]> insert into xxoo2 values (1),(10),(83);
對之前完全備份的檔案進行增量備份
[[email protected] ~]# innobackupex --incremental /backpus/ --incremental-basedir=/backpus/2016-07-13_20-27-04
對完全備份做唯讀,為增量和完全合并做準備
[[email protected] ~]# innobackupex --apply-log --redo-only /backpus/2016-07-13_20-27-04/
合并增量到完全中
[[email protected] ~]# innobackupex --apply-log --redo-only /backpus/2016-07-13_20-27-04/ --incremental-dir=/backpus/2016-07-13_23-13-25/
查看增量備份檔案
[[email protected] ~]# less /backpus/2016-07-13_23-13-25/xtrabackup_checkpoints backup_type = incrementalfrom_lsn = 1642047to_lsn = 1646912last_lsn = 1646912compact = 0
查看完全備份檔案
[[email protected] ~]# less /backpus/2016-07-13_20-27-04/xtrabackup_checkpointsbackup_type = full-preparedfrom_lsn = 0to_lsn = 1646912last_lsn = 1646912compact = 0
之後如果有新的增量備份檔案還可以繼續在完全備份檔案上合并 還原時將完全備份檔案拿去還原即可
注意:mysql的存取權限,我操作過程中多次出現錯誤,都是在mysql資料庫的屬主和屬組許可權出現的問題。
本文出自 “信風” 部落格,請務必保留此出處http://xsllqs.blog.51cto.com/2308669/1827608
mysql備份之xtrabackup