1.需求
在本地化部署的过程中,为了使系统相对来说高可用,一般情况下,我们都会做一个负载,但是客户又会考虑成本,所以只有可怜巴巴的两台服务器,要全部服务都做负载,这个就实现不了。所以只能把两台服务器的环境都部署成一样,然后每天把数据库备份的数据同步一次到另外一台服务器上。
2.同步脚本
两个关键因素:最新的变量名,推送文件脚本。
同时这边分为两种方式登陆,一种是使用用户名和密码,另外一种是使用密钥登陆。
这里本地化部署,很多情况下都是使用用户名和密码登陆。
这里会使用一个工具,可以直接帮助我们输入密码,进行传输文件
3.编写脚本
vi bf.sh
#!/bin/bash
echo '##########################################'
echo '###### 每天凌晨03:00 自动备份传送数据 ######'
echo '##########################################'
# 设置环境变量
DATE=$(date +%Y%m%d)
echo '获取系统日期:' $DATE
sshpass -p '12345678' scp /datadrive/DB/bak/mgcr_$DATE.sql.gz root@172.22.0.77:/datadrive/DB/bak/zfwbak
echo '备份完成'
赋予可执行文件:
chmod +x bf.sh
4.加入定时任务中,让其每天执行
crontab -e
00 3 * * * sh /datadrive/script/bf.sh
每天凌晨3点执行该脚本。