mysql异机备份脚本_mysql异机备份 - osc_lv07cfd1的个人空间 - OSCHINA - 中文开源技术交流社区...

xx.xx..4.43----xx.xx..4.51

1、配置client通过密钥来连接server

43机器上:

/root/.ssh 目录下执行

ssh-keygen -t rsa

ls  /root/.ssh会发现在/root/.ssh下生成一对密钥id_dsa和id_dsa.pub,将生成的公钥id_dsa.pub拷贝到server的/root/.ssh目录下:

scp  -P 10022 /root/.ssh/id_dsa.pub  xx.xx..4.51:~/.ssh/ id_dsa.pub

51上:

cat id_rsa.pub >>authorized_keys

在43上ssh 登录51 免密登录---ok

2、编写备份数据的脚本

可以通过编写shell脚本,执行脚本实质上是一个指令集,它的编写正确与否是实现自动异地备份数据库的关键所在。

假设shell脚本命名为auto.sh,处于目录/home/mysql/autobackup下,脚本编辑如下:

DATE=`date +%Y%m%d`

DATEOLD=`date -d"-3 day" +%Y%m%d`

mysqldump  --database mysql>"home/mysql/autobackup/$DATE.sql" -uroot -h localhost –p mysql

tar -czvPf /home/mysql/autobackup/$DATE.tar.gz  /home/mysql/autobackup

scp -P 10022 /home/mysql/autobackup/$DATE.tar.gz xx.xx..4.51:/home/backup1

rm -rf /opt/$DATEOLD.tar.gz

针对以上脚本,需要注意以下几点:

u       DATE和DATEOLD是系统用来获取当前以及3天前日期的参数,格式书写十分重要,“`”是指tab键上方的符号,“+”前一定要有空格。

u       client下的目录/opt/backup以及server下的目录/opt/backup1事先要存在

u       压缩指令为tar -czvPf,不加P参数系统会有报错提示,因为此时系统把/opt/backup当成相对路径。

u       auto.sh的文件属性为755

注:auto.sh中的每一条指令可通过手动执行来验证其正确性,无误后进行下一步操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值