1. 程式人生 > >xtrabackup全量,增量備份指令碼(拿走即用)

xtrabackup全量,增量備份指令碼(拿走即用)

#!/bin/sh
# add ling
 
INNOBACKUPEX=innobackupex
INNOBACKUPEXFULL=/usr/bin/$INNOBACKUPEX
TODAY=`date +%Y%m%d%H%M`
USEROPTIONS="--user=user --password=123456"
TMPFILE="/logs/mysql/incr_$TODAY.$$.tmp"
MYCNF=/etc/my.cnf
MYSQL=/usr/local/mariadb/bin/mysql
MYSQLADMIN=/usr/local/mariadb/bin/mysqladmin
BACKUPDIR=/backup/mysql # 備份的主目錄
FULLBACKUPDIR=$BACKUPDIR/full # 全庫備份的目錄
INCRBACKUPDIR=$BACKUPDIR/incr # 增量備份的目錄

#############################################################################
# Display error message and exit
#############################################################################
error()
{
    echo "$1"
1>&2 exit 1 } # Check options before proceeding if [ ! -x $INNOBACKUPEXFULL ]; then error "$INNOBACKUPEXFULL does not exist." fi if [ ! -d $BACKUPDIR ]; then error "Backup destination folder: $BACKUPDIR does not exist." fi if [ -z "`$MYSQLADMIN $USEROPTIONS status | grep 'Uptime'`"
] ; then error "HALTED: MySQL does not appear to be running." fi if ! `echo 'exit' | $MYSQL -s $USEROPTIONS` ; then error "HALTED: Supplied mysql username or password appears to be incorrect (not copied here for security, see script)." fi # Some info output echo "----------------------------"
echo echo "$0: MySQL backup script" echo "started: `date`" echo # Create full and incr backup directories if they not exist. for i in $FULLBACKUPDIR $INCRBACKUPDIR do if [ ! -d $i ]; then mkdir -pv $i fi done # Find latest full backup LATEST_FULL=`find $FULLBACKUPDIR -mindepth 1 -maxdepth 1 -type d -printf "%P\n"` echo "LATEST_FULL=$LATEST_FULL" # Run an incremental backup if latest full is still valid. # Create incremental backups dir if not exists. TMPINCRDIR=$INCRBACKUPDIR/$LATEST_FULL mkdir -p $TMPINCRDIR BACKTYPE="incr" # Find latest incremental backup. LATEST_INCR=`find $TMPINCRDIR -mindepth 1 -maxdepth 1 -type d | sort -nr | head -1` echo "LATEST_INCR=$LATEST_INCR" # If this is the first incremental, use the full as base. Otherwise, use the latest incremental as base. if [ ! $LATEST_INCR ] ; then INCRBASEDIR=$FULLBACKUPDIR/$LATEST_FULL else INCRBASEDIR=$LATEST_INCR fi echo "Running new incremental backup using $INCRBASEDIR as base." innobackupex --defaults-file=$MYCNF $USEROPTIONS --incremental $TMPINCRDIR --incremental-basedir $INCRBASEDIR > $TMPFILE 2>&1 if [ -z "`tail -1 $TMPFILE | grep 'completed OK!'`" ] ; then echo "$INNOBACKUPEX failed:"; echo echo "---------- ERROR OUTPUT from $INNOBACKUPEX ----------" exit 1 fi # 這裡獲取這次備份的目錄 THISBACKUP=`awk -- "/Backup created in directory/ { split( \\\$0, p, \"'\" ) ; print p[2] }" $TMPFILE` echo "THISBACKUP=$THISBACKUP" echo echo "Databases backed up successfully to: $THISBACKUP" echo echo "incremental completed: `date`" exit 0
拿走改改路徑和備份命令直接用 別客氣~

相關推薦

xtrabackup,增量備份指令碼(拿走)

#!/bin/sh # add ling INNOBACKUPEX=innobackupex INNOBACKUPEXFULL=/usr/bin/$INNOBACKUPEX TODAY=`date +%Y%m%d%H%M` USEROPTIONS="--user=user --password=1234

Oracle Database 12c RMAN+增量備份+歸檔日誌恢復詳解

Oracle可以非常方便的把資料庫恢復到具體某個時間的狀態,而且還支援全備和多級增備,備份無需停止應用服務。比起DB2需要手動逐級恢復增量備份和歸檔日誌,RMAN是非常簡單好用的資料庫商業解決方案。下面是我的環境:作業系統:CentOS 6.7Oracle版本:Oracle

mysql 備份增量備份指令碼

  全量備份 [[email protected] scripts]# cat wqbk.sh #!/bin/bash #use mysqldump to fully backup mysql data BakDir=/mnt/sata02/backup/wq

MySQL自動化(+增量備份指令碼

文章轉自:http://www.it-hack.cn/forum.php?mod=viewthread&tid=220&extra=page%3D1一、MySQL的日常備份方案:全備+增量備份:1、週日凌晨三點進行全備;2、週一到週日增量備份。不是往常的週日全備份,週一到週六增量備份,這樣如果

xtrabackup 增量備資料庫指令碼

#!/bin/sh #xtrabackup備份指令碼 #獲取指令碼所存放目錄 cd `dirname $0` bash_path=`pwd` #指令碼名 me=$(basename $0) #定義變數 LOG=/var/log/mysql_backup.log

xtrabackup增量備份恢復mysql數據庫

多少 prepare crypt seq shutdown info 備份恢復 NPU locked 一. 全量備份恢復: 查看原表內容: MariaDB [(none)]> select * from testdb.students; +----+-------

XtraBackup備份與恢復MySQL數據

備份 mysql xtrabackup 防偽碼:沒有相當程度的孤獨是不可能有內心的平和。1、概述Percona XtraBackup(簡稱PXB)是 Percona 公司開發的一個用於 MySQL 數據庫物理熱備的備份工具,支持 MySQl(Oracle)、Percona Server 和 Mar

Mysql備份系列(3)--innobackupex備份mysql大資料(+增量)操作記錄

    在日常的linux運維工作中,大資料量備份與還原,始終是個難點。關於mysql的備份和恢復,比較傳統的是用mysqldump工具,今天這裡推薦另一個備份工具innobackupex。innobackupex和mysqldump都可以對mysql進行熱備份的,mys

lvm-snapshot備份mysql資料(+增量

lvm-snapshot:基於LVM快照的備份 1.關於快照: 1)事務日誌跟資料檔案必須在同一個捲上; 2)剛剛創立的快照卷,裡面沒有任何資料,所有資料均來源於原卷 3)一旦原卷資料發生修改,修改的資料將複製到快照卷中,此時訪問資料一部分來自於快照卷,一部分來自於原卷 4)當快照使用過程中,如果修

Mysql備份+增量+恢復)方案操作記錄

1、開啟mysql的binlog日誌&檢視$備份 2、shell指令碼 mysqldump 變數說明 --all-databases針對所有資料庫進行備份  --databases databasename 針對單個數據庫進行備份 --flush-logs為結束當前

mysqldump備份+增量)方案操作記錄

在日常運維工作中,對mysql資料庫的備份是萬分重要的,以防在資料庫表丟失或損壞情況出現,可以及時恢復資料。 線上資料庫備份場景:每週日執行一次全量備份,然後每天下午1點執行MySQLdump增量備份. 下面對這種備份方案詳細說明下:1.MySQLdump增量備份配置

MySQL資料庫之+增量+二進位制日誌的備份與恢復

一、簡介資料的備份與恢復 1、為什麼備份? 災難恢復:人為錯誤、硬體故障(冗餘)、軟體故障(bug)、自然災害、黑客攻擊、誤操作、…; 測試; 2、備份時應該注意些什麼? 能容忍最多丟失多少資料; 恢復資料需要在多長時間內完成; 需要恢復哪些資料;

MySQL 系列連載之 XtraBackup 熱備 or 恢復實踐(2)

導讀 如果您在本文遇到任何問題或疑問請到QQ群中與我們交流。也可在下方進行評論。我將在第一時間和您進行交流,共同學習。 QQ群:201777608、526871767、1689067(加群時註明:運維派) 1、準備工作 #系統環境 [[email protected] tools]# c

阿里雲RDS(mysql)異機增量恢復

使用阿里雲的RDS服務(也就是MySQL資料庫)時,有時需要將其資料取出後拿到別的機器上使用,這就需要進行RDS的異機恢復。 說明:本文恢復使用的機器環境為CentOS 6.5 x64。 1. 獲取備份下載地址 RDS控制檯 -> 備份恢復 -> 資

阿里巴巴去Oracle資料遷移同步工具(+增量,目標支援MySQL/DRDS)

摘要: 阿里資料庫遷移專案yugong開源啦!yugong解決了單機Oracle無法滿足的擴充套件性問題,當時也掀起一股去IOE專案的浪潮,愚公這專案因此而誕生,其要解決的目標就是幫助使用者完成從Oracle資料遷移到MySQL上,完成去IOE的第一步。DBA的小夥伴們趕快來圍觀! 專案簡介 yugong(

xtrabackup 實現mysql增量備份和還原

啟動服務 test drop -a www. 實現 sse edi .com 下載xtrabackup工具包 percona-xtrabackup-24-2.4.13-1.el7.x86_64.rpm 工具包可以從官網下載https://www.percona.com/do

Hbase實用技巧:+增量資料的遷移方法

摘要:本文介紹了一種Hbase遷移的方法,可以在一些特定場景下運用。 背景 在Hbase使用過程中,使用的Hbase叢集經常會因為某些原因需要資料遷移。大多數情況下,可以跟使用者協商用離線的方式進行遷移,遷移離線資料的方式就比較容易了,將整個Hbase的data儲存目錄進行搬遷就行,但是當叢集資料量比較多的時

拿走的代碼

tr1 style none code turn encoding body 安全 src 環境:Python3.6.2 + win10 1.hashlib加密 # 安全哈希算法sha1返回的字符串 from hashlib import sha1, md5 impor

mySql資料庫一些非常規查詢,工作中可能會到,備份一下以便

這些東西純屬個人經驗,由於資歷尚淺,可能會做一些冗餘操作,歡迎指正。 1.有時候需要你去統計以下庫裡多張表的總記錄數。恰好這些表的名稱都比較類似(比如都以tb_開頭),這個時候我們可以先把所需要的表的查詢SQL全部連起來,然後再去查詢。 SELECT CONCAT(

mongodb增量備份指令碼

mongodb備份指令碼,可以全量或增量進行備份,兩年前所寫,目前網上mongodb備份相關的指令碼也還是很少。 功能 定期對mongodb資料庫資料進行全量備份或增量備份(副本集架構),並可以壓縮上傳到阿里雲oss(本地會先生成壓縮包,可以設定不上傳oss)。 指令碼執行環境 使用python語言編寫,