久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Percona Xtrabackup快速備份MySQL

 goldbomb 2015-07-12

老規(guī)矩,開(kāi)場(chǎng)白,剛開(kāi)始用mysqldump,備份100G+的數(shù)據(jù)庫(kù),再加上服務(wù)器繁忙,,備份速度像蝸牛似的,于是尋找更高效的備份方法,。網(wǎng)上都說(shuō)用xtrabackup比較適合備份大的數(shù)據(jù)庫(kù),,而且備份效率也高,就嘗試使用一次,,結(jié)果明顯感覺(jué)比mysqldump備份與恢復(fù)速度就是快不少,,那以后就用它了。大禮拜日的在家也沒(méi)事,,結(jié)合生產(chǎn)環(huán)境,,寫(xiě)了這篇文檔,剛接觸的朋友,,可以參考下,,不多說(shuō),入正題,!

1,、初次備份前準(zhǔn)備工作

   1.1 了解備份方式

       熱備份:讀寫(xiě)不受影響(mysqldump-->innodb)

       溫備份:僅可以執(zhí)行讀操作(mysqldump-->myisam)

       冷備份:離線備份,讀寫(xiě)都不可用

       邏輯備份:將數(shù)據(jù)導(dǎo)出文本文件中(mysqldump)

       物理備份:將數(shù)據(jù)文件拷貝(xtrabackup,、mysqlhotcopy

       完整備份:備份所有數(shù)據(jù)

       增量備份:僅備份上次完整備份或增量備份以來(lái)變化的數(shù)據(jù)

       差異備份:僅備份上次完整備份以來(lái)變化的數(shù)據(jù)

   1.2 創(chuàng)建備份用戶

1
2
     mysql> grant reload,lock tables,replication client on *.* to 'bak'@'localhost' identified by 'bak2015';
     mysql> flush privileges;

   1.3 安裝方式

     CentOS:

       # rpm -ivh http://www./downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm

       # yum install percona-xtrabackup  #xtrabackup2.2不支持MySQL5.1的Innodb引擎,如需要可安裝2.0版本https://www./downloads/XtraBackup/XtraBackup-2.0.8/RPM/rhel6/x86_64/percona-xtrabackup-20-2.0.8-587.rhel6.x86_64.rpm)

     Ubuntu:

       # sudo apt-get install xtrabackup  #14.04默認(rèn)有這個(gè)包,,14.04之前版本如果沒(méi)有再這個(gè)地址下載對(duì)應(yīng)的版本:https://www./downloads/XtraBackup/

   1.4 了解常用參數(shù)

       --user=     #指定數(shù)據(jù)庫(kù)備份用戶

       --password=  #指定數(shù)據(jù)庫(kù)備份用戶密碼

       --port=     #指定數(shù)據(jù)庫(kù)端口

       --host=     #指定備份主機(jī)

       --socket=    #指定socket文件路徑

       --databases=  #備份指定數(shù)據(jù)庫(kù),多個(gè)空格隔開(kāi),如--databases="dbname1 dbname2",不加備份所有庫(kù)

       --defaults-file=       #指定my.cnf配置文件

       --apply-log         #日志回滾

       --incremental=          #增量備份,,后跟增量備份路徑

       --incremental-basedir=     #增量備份,,指上次增量備份路徑

       --redo-only         #合并全備和增量備份數(shù)據(jù)文件

       --copy-back         #將備份數(shù)據(jù)復(fù)制到數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)目錄要為空

       --no-timestamp          #生成備份文件不以時(shí)間戳為目錄名

       --stream=             #指定流的格式做備份,--stream=tar,將備份文件歸檔

      --remote-host=user@ip DST_DIR #備份到遠(yuǎn)程主機(jī)

2,、完整備份與恢復(fù)

   2.1 完整備份

      # innobackupex --user=bak --password='bak2015' /mysql_backup   

   2.2 備份恢復(fù)

      # innobackupex --defaults-file=/etc/mysql/my.cnf --copy-back /home/loongtao/mysql_backup/2015-02-08_11-56-48/

   2.3 備份文件說(shuō)明

      # ls 2015-02-08_11-56-48

      backup-my.cnf:記錄innobackup使用到mysql參數(shù)

      xtrabackup_binary:備份中用到的可執(zhí)行文件

    xtrabackup_checkpoints:記錄備份的類(lèi)型,、開(kāi)始和結(jié)束的日志序列號(hào)

      xtrabackup_logfile:備份中會(huì)開(kāi)啟一個(gè)log copy線程,,用來(lái)監(jiān)控innodb日志文件(ib_logfile),如果修改就會(huì)復(fù)制到這個(gè)文件

3,、完整備份+增量備份與恢復(fù)

   3.1 完整備份

      # innobackupex --user=bak --password='bak2015' /mysql_backup

      #備份后位置是:/mysql_backup/2015-02-08_11-56-48

   3.2 增量備份1

      # innobackupex --user=bak --password='bak2015' --incremental /data1/mysql_backup --incremental-basedir=/mysql_backup/2015-02-08_11-56-48  #指定上次完整備份目錄

   3.3 增量備份2

      # innobackupex --user=bak --password='bak2015' --incremental /data1/mysql_backup --incremental-basedir=/mysql_backup/2015-02-08_12-16-06  #指定上次增量備份目錄

   3.4 查看xtrabackup_checkpoints文件,一目了然,,可以看到根據(jù)日志序號(hào)來(lái)增量備份

wKioL1TXGvCSc7KkAALo5ttBsM8636.jpg

   3.5 備份恢復(fù)

      3.5.1 備份恢復(fù)思路

        將增量備份1,、增量備份2...合并到完整備份,加到一起出來(lái)一個(gè)新的完整備份,,將新的完整備份以拷貝的形式到數(shù)據(jù)庫(kù)空目錄(rm /var/lib/mysql/* -rf)

      3.5.2 預(yù)備完整備份

      #xtrabackup把備份過(guò)程中可能有尚未提交的事務(wù)或已經(jīng)提交但未同步數(shù)據(jù)文件的事務(wù),,寫(xiě)到xtrabackup_logfile文件,所以要先通過(guò)這個(gè)日志文件回滾,,把未完成的事務(wù)同步到備份文件,,保證數(shù)據(jù)文件處于一致性。

        # innobackup --apply-log --redo-only 2015-02-08_11-56-48

      3.5.3 合并第一個(gè)增量備份

        # innobackupex --apply-log --redo-only /mysql_backup/2015-02-08_11-56-48/ --incremental-dir=mysql_backup/2015-02-08_12-16-06

      3.5.4 合并第二個(gè)增量備份

        # innobackupex --apply-log --redo-only /mysql_backup/2015-02-08_11-56-48/ --incremental-dir=mysql_backup/2015-02-08_16-06-53

      3.5.5 恢復(fù)完整備份(這時(shí)2015-02-08_11-56-48完整備份已經(jīng)包含所有增量備份,,可以通過(guò)查看checkpoints來(lái)核實(shí)

        # innobackupex --defaults-file=/etc/mysql/my.cnf --copy-back /mysql_backup/2015-02-08_11-56-48/

      3.5.6 修改恢復(fù)數(shù)據(jù)文件權(quán)限

        # chown -R mysql.mysql /var/lib/mysql

      3.5.7 啟動(dòng)MySQL,查看數(shù)據(jù)庫(kù)恢復(fù)情況

        # /etc/init.d/mysqld start

4,、備份文件歸檔壓縮

   4.1 歸檔并發(fā)送到備份服務(wù)器

      # innobackupex --databases=test --user=bak --password='bak2015' --stream=tar /mysql_backup 2>/mysql_backup/bak.log |ssh [email protected] "cat - > /mysql_backup/`date +%F`.tar"

      解壓:tar -ixvf `date +%F`.tar

   4.2 歸檔備份

      # innobackupex --databases=test --user=bak --password='bak2015' --stream=tar /mysql_backup > /mysql_backup/`date +%F`.tar

      解壓:tar -ixvf `date +%F`.tar

   4.3 壓縮歸檔備份

      # innobackupex --databases=test --user=bak --password='bak2015' --stream=tar /mysql_backup |gzip >/mysql_backup/`date +%F`.tar.gz

      解壓:tar -izxvf `date +%F`.tar.gz

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多