码迷,mamicode.com
首页 > 其他好文 > 详细

rsync远程备份脚本

时间:2020-09-17 18:16:25      阅读:34      评论:0      收藏:0      [点我收藏+]

标签:mysqldump   传输   数据   class   sync   soft   zip   mnt   创建   

 

使用rsync进行简单的数据远程备份脚本

 

一、实验环境:
1、centos-A网站服务器:192.168.0.101/24
提前准备好网站源代码和数据库
2、centos-B备份服务器:192.168.0.102/24

二、ssh客户端centos-A生成公钥和私钥对
ssh-keygen -t rsa 命令生成一个文件对 (非对称加密算法)
id_rsa 私钥文件
id_rsa.pub 公钥文件

三、把centos-A上公钥传输一份到centos-B服务器
把id_rsa.pub传到centos-B服务器
ssh-copy-id -i .ssh/id_rsa.pub 192.168.0.102

四、无口令登陆测试
ssh 192.168.0.102


五、使用rsync借助ssh无口令远程备份到centos-B服务器上指定目录
rsync -e ssh -avz /mnt 192.168.0.102:/home/webserver
[root@x112 software]# rsync -e ssh -avz Discuz_7.2_FULL_SC_UTF8.zip root@192.168.0.101:/home/webserver

#!/bin/bash
#description for rsync to backup data
#到目标服务器102已经做了ssh免密登陆

#常用变量
time=`date +%Y-%m-%d`
backdir="/mnt/${time}"
back_webdir="${backdir}/web"
back_datadir="${backdir}/data"
webdir="/usr/local/apache/htdocs/myshop"
mysql_conn="/usr/local/mysql/bin/mysqldump -uroot -p123 myshop"
#创建目录
mkdir -p ${back_webdir}
mkdir -p ${back_datadir}
#复制网站目录
rsync -r ${webdir} ${back_webdir} &> /dev/null
#导出数据库sql语句
${mysql_conn} > "${back_datadir}/myshop.sql" &>/dev/null
#目标目录压缩完成
zip -r ${backdir}.zip ${backdir} &>/dev/null
#源目录删除完成
rm -rf ${backdir}
#把数据远程传输到Centos-B服务器指定目录下完成
rsync -e ssh -az ${backdir}.zip  192.168.0.102:/mnt

  

rsync远程备份脚本

标签:mysqldump   传输   数据   class   sync   soft   zip   mnt   创建   

原文地址:https://www.cnblogs.com/xiaofeng666/p/13631861.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!