linux服务器之间文件及数据库备份

查看原文:http://www.sijitao.net/859.html
虽然小博数据不是很重要,但是如果哪天主机商跑路了,而且几年的文章都不存在了,那我还是会很不舍得的。我想所有的博主应该和我一样,所以上周我把博客数据远程连接到mysql数据库了。远程连接之后就是备份数据了。这里章郎虫的一台vps放数据,另外一台当备份,而且我两个vps都是linu系统。

1、首先需要实现linux之间SSH无密码登录,实现的原理是使用一种被称为"公私钥"认证的方式来进行ssh登录。具体方法如下:

登录服务器(放数据的vps),输入ssh-keygen -t rsa。这样在这台服务器上就生成了一个密钥。然后把这个密钥传到另外一台vps(备份服务器)上,可以使用这个命令,ssh-copy-id root@xxx.xxx.xxx.xxx。这时系统会提示你输入vps(备份服务器)的密码。最后传输完成之后,登录备份服务器,打开备份服务器中的文件.ssh/authorized_keys,确认已经传输成功。

2、创建编辑批处理文件,以下是小弟写的一个备份批处理文件。很简单,欢迎高手提意见。

#! /bin/bash
cd /home
WebBakName=web_$(date +%y%m%d).tar.gz
tar zcvf $WebBakName wwwroot
SqlBakName=sql_$(date +%y%m%d).tar.gz
/usr/local/mysql/bin/mysqldump -uroot -pdyourpassword1 yourdatabase1>database1.sql
/usr/local/mysql/bin/mysqldump -uroot -pdyourpassword2 yourdatabase2>database2.sql
/usr/local/mysql/bin/mysqldump -uroot -pdyourpassword3 yourdatabase3>database3.sql
tar zcvf $SqlBakName *.sql
scp /home/$WebBakName root@xxx.xxx.xxx.xxx:/home/backup
scp /home/$SqlBakName root@xxx.xxx.xxx.xxx:/home/backup

rm -f database1.sql database2.sql database3.sql $WebBakName $SqlBakName

3、编辑上面创建的批处理文件,chmod x filename ,使他可执行。最后创建计划任务,这里你可以使用crontab,具体方法可以参考这篇文章哦。Linux系统中计划任务的用法及举例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值