在VPS的数据最好定时备份,免得服务器出了什么问题,数据就全丢了。我使用dropbox定时同步wordpress文件夹和数据库信息。
首先下载dropbox
1
|
wget -O dropbox. tar .gz http: //www .dropbox.com /download/ ?plat=lnx.x86
|
然后解压包
1
|
tar xzvf dropbox. tar .gz
|
执行
1
|
~/.dropbox-dist /dropboxd
|
这里会出现一个url,访问这个url,绑定服务器和dropbox账号
dropbox同步的文件夹默认是 ~/Dropbox
1
|
cd ~ /Dropbox
|
下一步把wordPress文件夹同步到dropbox
1
|
ln -s /home/www ( /home/www 为wordPress文件夹)
|
然后是备份mysql数据库(~/backup/mysqlbackup.sh)
脚本如下:
1
2
|
echo "start mysql back up " ${ date } >> /root/backup/backup .log
mysqldump -uroot -p123456 wordpress > /root/mysqlback .sql
|
然后把mysqlback.sql连接到Dropbox文件夹下
1
|
cd ~ /Dropbox ln -s ~ /backup/mysqlback .sql
|
然后定时执行mysqlbackup.sh。
1
|
crontab -e
|
在最后加上(注意先设置好mysqlbackup.sh的权限)
1
|
* 3 * * * /root/backup/mysqlbackup .sh
|
这里有个问题dropbox一直开着对于vps可怜的内存和cpu来说,还是一定的负担的。并且也没有必要一直开着dropbox。写个脚本定时运行和关闭dropbox.
创建脚本 ~/backup/dropboxswitch.sh
脚本如下
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
date=`date +%Y%m%d_%H:%M:%S` start() { echo "starting dropbox "${date} >> /root/backup/backup.log
/root/dropbox/.dropbox-dist/dropbox &
}
stop() { echo "stoping dropbox "${date} >> /root/backup/backup.log
pkill dropbox
}
case "$1" in start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
esac
|
然后定时每天凌晨4点启动dropbox,6点关闭。
1
|
crontab -e
|
然后增加下面内容
1
2
|
* 4 * * * /root/backup/dropboxswitch start * 6 * * * /root/backup/dropboxswitch stop |
到此vps的备份就搞掂了,用到的都是比较简单的命令,但是却很有效;)