如何每天自动备份MySql文件?
2019-03-27 08:52:10来源: hostgatorfans.com 阅读 ()
随着数据库在网站建设中的不断应用,现如今绝大多数网站已经离不开数据库支持了,因为数据库不仅可以存储网站内容等信息,还可以存储用户提交的信息。由于这些信息非常宝贵,一旦丢失几乎难以挽回。
所有站长不仅要注意备份服务器上的网页html文件,图片或者程序代码,还要对数据库文件优先进行备份。
最简单的数据库备份可以通过phpMyAdmin手动备份并下载文件到指定位置,但是对于那些需要每天及时备份的站长来说,手动备份数据库比较麻烦,所以本文讲解一下如何利用国外主机的时钟程序配合shell命令代码实现每天定时备份数据库文件并下载到指定目录。
shell备份数据库
首先创建一个文件命名为:“backup.sh”,在其中输入以下命令:
#!/bin/bash
# Set a value that we can use for a datestamp
DATE=`date +%Y-%m-%d` $
# Our Base backup directory
BASEBACKUP="/backup/daily"for DATABASE in `cat /backup/db-list.txt`
do
# This is where we throw our backups.
FILEDIR="$BASEBACKUP/$DATABASE"# Test to see if our backup directory exists.
# If not, create it.
if [ ! -d $FILEDIR ]
then
mkdir -p $FILEDIR
fiecho -n "Exporting database: $DATABASE"
mysqldump --user=root --opt $DATABASE | gzip -c -9 > $FILEDIR/$DATABASE-$DATE.sql.gz
echo " ......[ Done Exporting to local backup, now exporting for remote backup] "
cp $FILEDIR/$DATABASE-$DATE.sql.gz /backup/uploads/$DATABASE.sql.gz
echo " .......[Done]"
done# AutoPrune our backups. This will find all files
# that are "MaxFileAge" days old and delete them.
MaxFileAge=4
find $BASEBACKUP -name '*.gz' -type f -mtime +$MaxFileAge -exec rm -f {} \;
简单来说,这个命令会从db-list.txt文件(一个记录有数据库名称的列表文本文件)中逐行调取数据库并输出+压缩数据文件(datastamped )到/backup/daily/databasename/目录下面;然后该命令有把一个 non-datestamped 文件存储到/backup/uploads/目录下面,并覆盖掉原有的文件。
同时,为了节约资源,该命令会自动删掉4天前的数据库文件。
时钟命令(Cron Jobs)
备份完之后要利用时钟命令将数据库备份以及存储以自动的方式每天执行,首先需要激活backup.sh;
10 4 * * * sh / backup/backup.sh
这个命令是让服务器每天早上4:10分开始执行数据库备份,当然什么时间执行是取决你的。
然后在时钟命令中输入以下命令:
10 6 * * * /usr/local/bin/ncftpput -Ef /home/admin/ncftpputlogin / /backup/uploads/*
这个命令是告诉一个命名为ncftpput的程序(该程序位于ncftputlogin目录下)每天早上6:10将数据库文件上传到/backup/uploads目录下面。ncftpputlogin目录中存有服务器的用户信息,如果你的服务器没有安装ncftp,你可以自己安装一个,很简单。
总结
如果你的数据库文件较大,可能备份的时候需要占用很多服务器资源,所以站长要尽量选择访客最少的时间段执行自动备份命令,比如凌晨4-5点左右。而且要注意给备份留下足够的时间然后执行存储命令。
因为一个服务器可能会遭到天灾人祸,备份的数据库文件要存在不同的服务器或者下载到本地更保险。
如果本文对你有帮助,请转载时保留原文链接:http://hostgatorfans.com/mysql-daily-backup.html
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 如何设计出一个有灵魂的「签到功能」? 2021-05-04
- 案例·电商 | 网易严选是如何用会员权益提升消费频次? 2021-05-04
- 什么是百度智能小程序单卡?如何获取智能小程序单卡 2020-03-16
- 难得一见的To B干货 | SaaS运营该如何开展? 2019-12-27
- 如何搭建流失用户召回体系? 2019-12-27
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash