tar结合使用自动备份,二进制文件增量备份

Linux下crond,scp,tar结合使用自动备份的实现:

1、首先在my.cnf下添加二进制文件路径(windows下文件名称为my.ini)

crond:mysql备份  添加crond -e 备份时间   之后要运行service crond status

     在[mysqld]下添加 log-bin=mysql-bin

scp:安全传输功能 相当于FTP   scp -r 文件夹 ip:/root《所放的远程路径》

2、centos下默认安装mysql 5.6,数据默认文件夹下为 /var/lib/mysql

tar:把文件夹打压缩和解压缩—-备份 web目录  例:tar -cvf web.bak
/var/www

3、编写脚本

—-还原 web目录  例:tar -xvf web.bak

#!/bin/bash
#echo 增量备份
#MySQL增量备份脚本 一般在slave从库上运行 ,开启log_save_updates=1
#path

查看文件夹大小:du -sh 路径/文件夹名

#备份文件路径
BakDir=/usr/work/mysql/bak.log
echo $BakDir
cd $BakDir
DateDir=$(date +%Y%m%d)
echo $DateDir
path=$BakDir/$DateDir
echo $path
#创建时间目录
mkdir -p $DateDir
mysqladmin -uroot  flush-logs
tpath=/var/lib/mysql
echo $tpath
head -n -1  $tpath/mysql-bin.index | sed ‘s/.///’   #mysql-bin.index
里面记录的binlog文件
while read line
do
cp $tpath/$line $path/
echo $line
#拷贝
echo $tpath/$line
#cp $tpath/$line path
done < /tmp/11
#压缩
cd $BakDir
tar -zcvf $DateDir.tar.gz $DateDir/
#删除文件
rm -rf $path

图片 1

#加入FTP目录
ftp -ivn << EOF
open 192.168.1.125
user administrator zzf
cd  newslogbackup
put $DateDir.tar.gz
bye
EOF

按 :wq 保存并退出

发表评论

电子邮件地址不会被公开。 必填项已用*标注