欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

基于XtraBackup的備份有效性檢查腳本-創(chuàng)新互聯(lián)

    生產環(huán)境的MySQL是通過crontab的方式,定時調度熱備腳本備份數(shù)據(jù)。目前是通過XtraBackup軟件實現(xiàn)熱備。關于熱備腳本方面,請查看我原先的博客《使用shell實現(xiàn)mysql自動全備、增備&日志備份》:http://linzhijian.blog.51cto.com/1047212/1891745 ,這里不再展開說明。

靈石ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!

    備份存放:通過XtraBackup的流式備份,將備份異地存放到備份服務器上。

    備份策略:周日全備,周一到周六增備。

    目前缺漏:這些備份數(shù)據(jù)未能實現(xiàn)有效性檢查,無法探知這些備份是否具有可用性,需要通過一定的機制實現(xiàn)有效性檢測。

    目前在備份機的備份文件列表如下:

drwxr-xr-x 18 mysql mysql 4096 Apr   9 03:28 mysql01_20170409_023001_full drwxr-xr-x 18 mysql mysql 4096 Apr 10 03:25 mysql01_20170410_023001_incr drwxr-xr-x 18 mysql mysql 4096 Apr 11 03:26 mysql01_20170411_023001_incr drwxr-xr-x 18 mysql mysql 4096 Apr 12 03:25 mysql01_20170412_023001_incr drwxr-xr-x 18 mysql mysql 4096 Apr 13 03:26 mysql01_20170413_023001_incr drwxr-xr-x 18 mysql mysql 4096 Apr 14 03:26 mysql01_20170414_023001_incr drwxr-xr-x 18 mysql mysql 4096 Apr 15 03:27 mysql01_20170415_023001_incr drwxr-xr-x 18 mysql mysql 4096 Apr 16 03:29 mysql01_20170416_023001_full drwxr-xr-x 18 mysql mysql 4096 Apr 17 03:26 mysql01_20170417_023001_incr

    其中full結尾的說明當天是全備的,incr結尾的說明當天是增備的。

    腳本實現(xiàn)邏輯:自動恢復全備數(shù)據(jù),并依次恢復其余的增備數(shù)據(jù)到全備數(shù)據(jù)中,最后將恢復完畢的全備數(shù)據(jù)用mysqld拉起來,檢查MySQL的錯誤日志是否有異常報錯來判斷恢復是否正常。

    vim dbrecover.sh

#!/bin/sh if [ $# -ne 1 ] then     echo "usage: `basename $0` [mysql01|mysql02]"     exit 1 fi hostname=$1 today=`date +%Y%m%d` sh /home/mysql/shell/mysql_recover.sh $hostname $today

    vim mysql_recover.sh

#!/bin/sh if [ $# -ne 2 ] then     echo "usage: `basename $0` [mysql01|mysql02|mysql03] 20170501 "     exit 1 fi hostname=$1 #hostname="mysql02" #today=`date +%Y%m%d` today=$2 #week=`date +%w` week=`date -d $today +%w` time1=`date +%s` timestamp=`date +%Y%m%d%H%M%S` logdir="/home/mysql/log/mysqlrecoverlog/$hostname/$timestamp" dir="/mysqlbackup/databak/$hostname/" fullname="$dir/full_backup_file.txt" incrname="$dir/incr_backup_file.txt" datadir=`grep datadir /etc/my.cnf|awk -F \= '{print $NF}'` errlog=`grep log-error /etc/my.cnf|awk -F \= '{print $NF}'` n1="0" ##周幾做熱備,周一到周六為1~6,周日為0。 n2="6" ##周幾最后一次增備,周一到周六為1~6,周日為0。 mkdir $logdir ##創(chuàng)建日志目錄 function getdir() { if [ $week -eq "$n1" ] then     fulldir=`find /mysqlbackup/databak/${hostname}/ -type d -name "*${today}*full"`     #/mysqlbackup/databak/mysql01/mysql01_20170430_023001_full     if [ ! -n "$fulldir" ]      then         echo "the fulldir not exist!!!" >> $logdir/recover_${timestamp}.log         exit 1     fi     num=`find /mysqlbackup/databak/${hostname}/ -type d -name "*${today}*full"|wc -l`      #/mysqlbackup/databak/mysql01/mysql01_20170429_023001_incr     if [ $num -eq "1" ]      then         echo $fulldir > $fullname     else         echo "there are not only full dbbackup in $today, please check!!!" >> $logdir/recover_${timestamp}.log         exit 1     fi      else     incrdir=`find /mysqlbackup/databak/${hostname}/ -type d -name "*${today}*incr"`     if [ ! -n "$incrdir" ]     then         echo "the incrdir not exist!!!" >> $logdir/recover_${timestamp}.log     fi     num=`find /mysqlbackup/databak/${hostname}/ -type d -name "*${today}*incr"|wc -l`     if [ $num -eq "1" ]     then         echo $incrdir > $incrname     else         echo "there are not only incr dbbackup in $today, please check!!!" >> $logdir/recover_${timestamp}.log         exit 1     fi         fi } function uncompress() {     dir=$1     /usr/bin/innobackupex --decompress --parallel=8 $dir >>$logdir/uncompress_${timestamp}.log 2>&1     success_flag=`cat $logdir/uncompress_${timestamp}.log|grep "completed OK"`     if [ -n success_flag ]     then         echo "$dir decompress sucessfully!" >> $logdir/recover_${timestamp}.log     else         echo "$dir decompress failed " >> $logdir/recover_${timestamp}.log         exit 1     fi } function full_recover()  {         fullbakdir=$1     uncompress $fullbakdir     /usr/bin/innobackupex --use-memory=2G --apply-log --redo-only $fullbakdir >>$logdir/full_recover_${timestamp}.log 2>&1      success_flag=`cat $logdir/full_recover_${timestamp}.log|grep "innobackupex: completed OK"`     if [ -n "$success_flag" ]            then             echo "the full dbbackup $fullbakdir recovery is success!" >> $logdir/recover_${timestamp}.log           else             echo "the full dbbackup $fullbakdir recovery is fail!" >> $logdir/recover_${timestamp}.log             exit 1            fi } function incr_recover() {     incrbakdir=$1     fullbakdir=$2     uncompress $incrbakdir     uncompress $fullbakdir     if [ $week -ne "$n2" ]     then         /usr/bin/innobackupex --use-memory=2G --apply-log --redo-only --incremental-dir=$incrbakdir $fullbakdir >>$logdir/incr_recover_${timestamp}.log 2>&1     else         /usr/bin/innobackupex --use-memory=2G --apply-log --incremental-dir=$incrbakdir $fullbakdir >>$logdir/incr_recover_${timestamp}.log 2>&1     fi     success_flag=`cat $logdir/incr_recover_${timestamp}.log|grep "innobackupex: completed OK"`         if [ -n "$success_flag" ]          then                 echo "the incr dbbackup $incrbakdir recovery is success!" >> $logdir/recover_${timestamp}.log         else                 echo "the incr dbbackup $incrbakdir recovery is fail!" >> $logdir/recover_${timestamp}.log                 exit 1          fi } function mysqlrecover() {     fullbakdir=$1         #uncompress $fullbakdir     rm -fr $datadir     /bin/ln -s $fullbakdir  $datadir     chown -R mysql:mysql $datadir      chown -R mysql:mysql $fullbakdir     /sbin/service mysqld start     error_flag=`grep -i error $errlog`         if [ -z "$error_flag" ]         then                 echo "the mysqld don't report error, mysql recover is success!" >> $logdir/recover_${timestamp}.log         else                 echo "the mysqld report error, mysql recover is fail, please check!" >> $logdir/recover_${timestamp}.log                 exit 1         fi     /sbin/service mysqld stop      } getdir if [ $week -eq "$n1" ] then     full=`cat $fullname`     full_recover $full else     incr=`cat $incrname`     full=`cat $fullname`     incr_recover $incr $full     if [ $week -eq "$n2" ]     then         mysqlrecover $full     fi fi time2=`date +%s` times=$((${time2}-${time1})) echo "it takes $times seconds to finish the recover!!!" >> $logdir/recover_${timestamp}.log

   備份機目前采用二進制包安裝MySQL的方式,直接上傳到/usr/local/mysql目錄上,配置好相應的/etc/profile和/etc/my.cnf即可。

cat /etc/my.cnf

[mysqld] datadir=/mysqlbackup/mysql_test socket=/mysqlbackup/mysql_test/mysql.sock user=mysql # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 [mysqld_safe] log-error=/mysqlbackup/mysql_test/mysqld.log pid-file=/mysqlbackup/mysql_test/mysqld.pid

    生成的日志文件如下:

-rw-r--r-- 1 root root 613918 May  4 09:34 incr_recover_20170504092501.log -rw-r--r-- 1 root root   307 May  4 09:34 recover_20170504092501.log -rw-r--r-- 1 root root 259310 May  4 09:26 uncompress_20170504092501.log

其中:

uncompress_20170504092501.log:解壓備份文件時產生的日志信息

incr_recover_20170504092501.log:XtraBackup應用備份文件時產生的日志信息

recover_20170504092501.log:當次恢復備份文件記錄的簡要日志信息

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。

當前題目:基于XtraBackup的備份有效性檢查腳本-創(chuàng)新互聯(lián)
當前地址:http://aaarwkj.com/article30/cchjpo.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供微信小程序外貿網(wǎng)站建設、品牌網(wǎng)站設計、手機網(wǎng)站建設、靜態(tài)網(wǎng)站、網(wǎng)站設計公司

廣告

聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設計公司
日本五十路亲子在线一区| 人妻中文字幕av资源| 国产一级内射在线视频| 夜夜草av一区二区三区| 又黄又爽又刺激的性视频| 一区二区在线日韩视频| 色婷婷丝袜一区网站| 久久综合激情亚洲欧美专区| av一区二区三区高潮| 亚洲欧美午夜激情啪啪视频| 夫妻晚上同房太猛视频| 久久精人妻一区二区三区| 日韩精品一区二区三区电影在线播放| 中文字幕亚洲欧美日韩高清| 国产成人综合亚洲不卡| 一区二区三区成人高清视频| 欧美日韩另类综合一区| 欧美成人高清在线播放| 欧美性大片一区二区三区| 国产日韩精品一区二区在线 | 精品国产av色一区二区| 欧美黄片在线免费观看| 97热久久精品中文字幕一区| 91午夜精品亚洲一区二区三区| 久久久偷拍美女撒尿尿| 国产传媒网约在线观看| 国产亚洲一区二区三区av| 婷婷久久香蕉五综合加勒比| 日韩av裸体在线播放| 日韩黄av在线免费观看| 国产成人国产精品国产三级| 中文字幕乱码人妻一二三| 国产女同一区二区三区久久| 免费国产网站在线观看不卡| 成人激情视频在线观看| 亚洲av天堂免费在线观看| 国产精品精品久久久久久| 中文字幕亚洲入口久久| 精品在线免费视频观看| 国产日本韩国三级在线| 国产欧美一区二区另类精品|