继上一篇 《Linux用crontabs做MySQL本地备份》 之后,这次换做异地备份
本来想用rsync来做备份,但是用rsync需要另外在开一个端口,免得麻烦所以选择scp,scp用来做 mysql异地备份还是够用了。。。
首先让本地的服务器登陆线上ssh免密码
用root登陆本地服务器,输入
ssh-keygen -t rsa
然后一阵回车。。。过后/root/.ssh 目录下面应该会有两个文件。
id_rsa 和 id_rsa.pub
把id_rsa.pub传到线上服务器 /root/.ssh/authorized_keys
这样就可以免密码登陆了,然后写脚本
#!/bin/bash backupdir=/home/backup date=` date +%Y%m%d ` #record log echo `date` start >> $backupdir/backup_local.log dbname=$backupdir/$date-dbname.sql.gz scp -P 22 phpquan.com:$dbname $backupdir/ #record log echo `date` finish >> $backupdir/backup_local.log
然后根据线上服务器备份的时间,大约晚1小时左右,执行此脚本。这样就完成了 异地本分