CentOS release 5.9安裝xtrabackup2.1.5與測試SLAVE重置

jasperjohn發表於2013-09-30
CentOS release 5.9安裝xtrabackup2.1.5與測試SLAVE重置
sep1:OS_info:
kenel_rel:2.6.18-348.12.1.el5xen
mysql_version:5.6.10-log

Sep2:下載percona-xtrabackup-2.1.5-680-Linux-x86_64.tar.gz
mkdir /opt/mysqlsoft

wget http://www.percona.com/redir/downloads/XtraBackup/LATEST/binary/Linux/x86_64/percona-xtrabackup-2.1.5-680-Linux-x86_64.tar.gz

需要下載perl_DBD pkg
yum install:
yum install perl-DBD-MySQL


Sep3:install_percona-xtrabackup:

cd /opt/mysqlsoft

mkdir /usr/local/xtrabackup --存放xtrabackup軟體目錄

tar -xf percona-xtrabackup-2.1.5-680-Linux-x86_64.tar.gz -C /usr/local/xtrabackup

Sep4:配置環境變數
把xtrabackup變數配置到/etc/profile檔案
在最後一行新增:
export PATH=$PATH:/usr/local/xtrabackup/bin

Sep5:複製必要的命令
方法1:需要拷貝一些命令到/usr/bin
cd /usr/local/xtrabackup/bin
cp innobackupex /usr/bin/innobackupex
cp xtrabackup  /usr/bin/xtrabackup
cp xtrabackup_55  /usr/bin/xtrabackup_55

方法2:建立軟連線也可以:

ln -s /usr/bin/innobackupex /usr/local/xtrabackup/bin/innobackupex
ln -s /usr/bin/xtrabackup /usr/local/xtrabackup/bin/xtrabackup
ln -s /usr/bin/xtrabackup_55 /usr/local/xtrabackup/bin/xtrabackup_55




Sep6:測試
備份測試:
mkdir -p /data/backup --存放備份資料目錄

全庫備庫:

innobackupex --user=root --password --defaults-file=/etc/my.cnf   --socket=/tmp/mysql.sock  /data/backup
 
備份指定資料庫:(壓縮備份)
innobackupex --user=root --password --defaults-file=/etc/my.cnf --database=nb21db  --socket=/tmp/mysql.sock --stream=tar /data/backup/ 2>/data/backup/nb21db.log | gzip     1>/data/backup/nb21db.tar.gz



slave:恢復資料
      1) 先停止資料庫:service mysqld stop
      2) 解壓 tar -izxvf zztx.tar.gz -C /data/back_data/dbbak/   (沒有db ,需要mkdir /data/back_data/dbbak/)
      3) 恢復 innobackupex --user=root --password --defaults-file=/etc/my.cnf  --apply-log /data/back_data/dbbak/  (--apply-log選項的命令是準備在一個備份上啟動mysql服務)
              innobackupex --user=root --password --defaults-file=/etc/my.cnf  --copy-back /data/back_data/dbbak/  (--copy-back 選項的命令從備份目錄拷貝資料,索引,日誌到my.cnf文   件裡規定的初始位置。)
      4) 賦權 chown -R mysql.mysql data_dir*
      5) 重啟資料庫 service mysqld restart
      6) 刪除垃圾 cd /usr/local/mysql/data/  && rm xtrabackup*
    

cd /data/backup
tar -cf 2013-09-30_12-39-42.tar.gz 2013-09-30_12-39-42

scp -r 2013-09-30_12-39-42.tar.gz slave:/mysqldata_dir

然後解壓:

cd /mysqldata_dir

tar -xf 2013-09-30_12-39-42.tar.gz
cat xtrabackup_binlog_info

mysql>stop slave;
mysql>reset slave;
mysql>rester master;
     
mysql>CHANGE MASTER TO
MASTER_HOST='',
MASTER_USER='',
MASTER_PASSWORD='',
MASTER_LOG_FILE='',
MASTER_LOG_POS=;
mysql>START SLAVE;

至此,slave重置完成,在不影響主庫業務下。(主庫不鎖表)
注意:該備份方法支援innodb儲存引擎的表
 
 

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

相關文章