Xtrabackup安裝及使用

小亮520cl發表於2015-05-12

Xtrabackup安裝及使用

簡介:
  Xtrabackup是一個對InnoDB做資料備份的工具,支援線上熱備份(備份時不影響資料讀寫),是商業備份工具InnoDB Hotbackup的一個很好的替代品。
    Xtrabackup有兩個主要的工具:xtrabackup、innobackupex
  (1)xtrabackup只能備份InnoDB和XtraDB兩種資料表,而不能備份MyISAM資料表
  (2)innobackupex-1.5.1則封裝了xtrabackup,是一個指令碼封裝,所以能同時備份處理innodb和myisam,但在處理myisam時需要加一個讀鎖
  (3)使用幫助:

環境:CentOS 5.4,xtrabackup-1.6.tar.gz

1、首先從下載
       wget 

2、檢查伺服器是否安裝了Mysql版本,如果沒有就要安裝好mysql
   my.cnf中必須有datadir=/var/lib/mysql

3、開始安裝xtrabackup
     1)解壓     
         cd /qeedoodb/setup
         tar zxvf xtrabackup-1.6.tar.gz 
     2)複製innobackupex、xtrabackup、xtrabackup_51 工具到/usr/bin
        cp /qeedoodb/setup/xtrabackup-1.6/bin/innobackupex /usr/bin/innobackupex
        cp /qeedoodb/setup/xtrabackup-1.6/bin/xtrabackup  /usr/bin/xtrabackup
        cp /qeedoodb/setup/xtrabackup-1.6/bin/xtrabackup_51  /usr/bin/xtrabackup_51
     
  
    
4、備份並打包壓縮
      innobackupex --user=root --password=123456 --defaults-file=/etc/my.cnf --database=zztx --stream=tar /data/back_data/ 2>/data/back_data/zztx.log | gzip     1>/data/back_data/zztx.tar.gz
      
      說明:
      --database=zztx 單獨對zztx資料庫做備份 ,若是不新增此引數那就那就是對全庫做備份
      2>/data/back_data/zztx.log  輸出資訊寫入日誌中
      1>/data/back_data/zztx.tar.gz 打包壓縮儲存到該檔案中
      
      此處可以寫個指令碼做備份(backup.sh)
      #!/bin/sh
      echo "開始備份..."`date`
      log=zztx01_`date +%y%m%d%H%M`.log
      str=zztx01_`date +%y%m%d%H%M`.tar.gz
      innobackupex --user=root --password=123456 --defaults-file=/etc/my.cnf --database=zztx --stream=tar /data/back_data/ 2>/data/back_data/$log | gzip 1>/data/back_data/$str
      echo "備份完畢..."`date`
      
5、恢復資料
      1) 先停止資料庫:service mysqld stop
      2) 解壓 tar -izxvf zztx.tar.gz -C /data/back_data/db/   (沒有db ,需要mkdir /data/back_data/db/)  
      3) 恢復 innobackupex --user=root --password --defaults-file=/etc/my.cnf  --apply-log /data/back_data/db/  (--apply-log選項的命令是準備在一個備份上啟動mysql服務)
              innobackupex --user=root --password --defaults-file=/etc/my.cnf  --copy-back /data/back_data/db/  (--copy-back 選項的命令從備份目錄複製資料,索引,日誌到my.cnf文   件裡規定的初始位置。)
      4) 賦權 chown -R mysql.mysql /var/lib/mysql/*
      5) 重啟資料庫 service mysqld restart
      6) 刪除垃圾 cd /var/lib/mysql/  && rm xtrabackup*
      進入資料庫檢視,一切OK~

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

相關文章