近来由于打击。所以各地难免会出现封机房。断网的情况。针对这种情况。站长们最需要的就是能及时备份自己的数据。本文是根据作者自己多年的维护经验。来和大家分享下网站数据自动备份的一些经验。
目前站长们大多使用的网站程序无外乎ASP\asp.net\php\jsp 数据库的话。大多是access\sqlserver\mysql
我们分2种情况来说明下。
对于win服务器下的自动数据备份。网站文件。自然是比较好备份的。那么如果数据库也可以自动备份。那就基本实现完美自动备份。
如果你有独立服务器。那么这个备份工作就更加简单。下面我们来看看:
独立服务器数据异地自动备份
网站文件我们使用绿环FTP备份软件。在异地的服务器上挂上绿环FTP。设置好备份任务。然后设置好网站数据FTP。利用绿环的自动备份功能。就可以轻松对网站的文件进行自动异地备份。
数据库。我们先在服务器上做备份。然后利用绿环把备份文件异地备份到备份服务器。
mysql数据库:我们可以使用以下批处理脚本:
复制代码 代码如下:
net stop mysql
xcopy c:\mysql\data\bbs\*.* d:\db_bak\bbs\%date:~0,10%\ /y
net start mysql
比如。设置这个为批处理文件bak.bat。然后设置windows的计划任务。每天定时运行该批处理。就可以自动备份MYSQL了。注意。里边的路径。请自己修改为自己的路径。c:\mysql\data\bbs\*.*为MYSQL数据文件路径。d:\db_bak\bbs\%date:~0,10%后边这个为MYSQL数据库备份路径。
有的朋友的计划任务不能正常运行。请查看服务里边的计划任务的服务Task Scheduler是否开启。另注意服务器装有麦咖啡的朋友。请注意你的麦咖啡规则设置。看是否有限制备份的规则存在。
对于SQLserver,我们知道。SQLsever本身有按计划备份的功能。所以。你可以用同样的原理。进行备份。然后进行异地备份操作。本文不在这里详述了。
同样。对于linux下的mysql备份。就更简单。利用crontab系统每天定时备份MySQL数据库。至于详细设置。本文引用下网上的老鸟的做法:
1。创建保存备份文件的路径/mysqldata
#mkdir /mysqldata
2。创建/usr/sbin/bakmysql文件
#vi /usr/sbin/bakmysql
输入
rq=` date +%Y%m%d `
tar zcvf /mysqldata/mysql$rq.tar.gz /var/lib/mysql
或者写成
rq=` date +%Y%m%d `
mysqldump --all-databases -u root -p980405 > /mysqldata/mysql$rq.tar.gz
/var/lib/mysql是你数据库文件的目录。部分用户是/usr/local/mysql/data。每个人可能不同
/mysqldata/表示保存备份文件的目录。这个每个人也可以根据自己的要求来做。
3。修改文件属性。使其可执行
# chmod +x /usr/sbin/bakmysql
4。修改/etc/crontab
#vi /etc/crontab
在下面添加
01 3 * * * root /usr/sbin/bakmysql
表示每天3点钟执行备份
5。重新启动crond
# /etc/rc.d/init.d/crond restart
完成。
这样每天你在/mysqldata可以看到这样的文件
mysql20100101.tar.gz
在tar命令执行前。停止数据库服务进程或锁定数据库。你可以利用时间差设置个计划任务。暂停掉数据库。或者在执行备份脚本时候设置。注意。当使用上面的第2种热备份模式。是不需要停止MYSQL服务器的。不然你就没法备份了。
以上是对于对立服务器用户。那么对于虚拟主机用户。我想你可以在本地电脑设置绿环FTP。备份文件就没问题了。对于数据库。你可以设置一个自动脚本。每天0点触发这个脚本。关于mysql的备份脚本。网上很多。至于如何触发。有很多方法吧。我想用过discuz的朋友。都知道discuz中计划任务的原理吧。另外dede系统也有自动定时生成HTML的脚本。都是这样的原理。
当然。对于ASP程序的用户。如果没有数据库。那就更简单了。
好了。进行了以上的相关设置。那么就可以实现数据全自动异地备份。就再也不怕服务器被封了。
本文地址:https://gpu.xuandashi.com/41402.html,转载请说明来源于:渲大师
声明:本站部分内容来自网络,如无特殊说明或标注,均为本站原创发布。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。分享目的仅供大家学习与参考,不代表本站立场!