首頁 > 資料庫 > mysql教程 > MySQL异地增量备份

MySQL异地增量备份

WBOY
發布: 2016-06-07 17:59:11
原創
1313 人瀏覽過

MySQL异地增量备份: 1.#!/bin/sh 2. 3.#MySQL Info 4.sqluser=root 5.sqlpsw=root 6. 7./usr/bin/mysqladmin -u$sqluser -p$sqlpsw flush-logs --default-character-set=GBK 8. 9.DATADIR=/data/mysql 10.BAKDIR=/home/backup/mysql/daily 11.TEMPDIR=/home/b

MySQL异地增量备份:

1.#!/bin/sh 
2.
3.#MySQL Info  
4.sqluser=root  
5.sqlpsw=root  
6. 
7./usr/bin/mysqladmin -u$sqluser -p$sqlpsw flush-logs --default-character-set=GBK   8. 
9.DATADIR=/data/mysql  
10.BAKDIR=/home/backup/mysql/daily  
11.TEMPDIR=/home/backup/mysql/temp  
12. 
13.BINLOGNAME='mysql-bin'  14.cd $DATADIR  
15.FILELIST=$(cat $BINLOGNAME.index | cut -c3-)  16.
17.## COUNTER number  
18.COUNTER=0  
19.for file in $FILELIST   20.do  21.COUNTER=$(expr $COUNTER + 1)  
22.done  
23. 
24.NextNum=0  
25.for file in $FILELIST   26.do  27.NextNum=$(expr $NextNum + 1)  
28.if test "$NextNum" = "$COUNTER"  29.then  
30.echo "skip lastest"  31.else  32.dest=$BAKDIR/$file  
33.if test -e $dest   34.then  
35.echo "skip exist $dest"  36.else  37.cp $file $TEMPDIR  
38.fi  
39.fi  
40.done  
41.echo "backup mysql binlog ok"  42. 
43.sleep 2s  
44. 
45.cd $TEMPDIR  
46.tarname=binlog$(date +%y%m%d).tar.gz  
47.tar czf $tarname ./mysql-bin*  
48. 
49.sleep 1s  50.
51.#ftp Info  
52.ftphost=111.111.11.11  
53.ftpname=xxx  
54.ftppsw=psw  
55. 
56.cd $TEMPDIR  
57. 
58.ftp -i -n 59.open $ftphost  
60.user $ftpname $ftppsw  
61.type binary  
62.put $tarname  
63.close  
64.bye  
65.!  
66.sleep 10s  
67. 
68.echo "end upload"  69. 
70.cd $TEMPDIR  
71.mv $BINLOGNAME* $BAKDIR  
72.rm -r $tarname  
73. 
74.echo "end"  说明:

mysqladmin -u$sqluser -p$sqlpsw flush-logs:mysql自动把内存中的日志放到日志文件binlog的最后一个文件里,并生成一个空的新日志文件,之后只需要备份前面的几个即可,最后一个因为是刚生成的,并且是空的,所以不需备份。

关于binlog可参考: http://www.linuxidc.com/Linux/2012-09/70815.htm

大概思路:

把datadir和bakdir目录中的binlog进行对比,如bakdir中没有,且该binlog不是最后一个,则把该binlog复制到tempdir中;这样tempdir中的binlog都是新增的binlog。之后把tempdir中的binlog进行打包压缩,ftp到另一个服务器上。
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板