您的位置:首页 > 数据库 > MySQL

生产环境web站点及mysql数据库备份案例

2016-10-09 13:14 666 查看

生产环境web站点及mysql数据库备份案例

此博文转载自 https://www.linux.ac.cn/linux/189.html 环境:centos 6.8
时间:2016年8月14日
目的:每周周日晚上十二点(00:00)整,自动备份web站点目录及mysql数据库到/data/backup/ 目录下,并删除60天前的备份文件。
脚本目录:/server/scripts/
存放备份文件目录:/data/backup/
web站点目录:/var/www/html/1、创建目录
[root@kali ~]# mkdir /server/script -p
[root@kali ~]# ls -ld /server/script
drwxr-xr-x 2 root root 4096 Aug 14 08:05 /server/script

[root@kali ~]# ls -ld /data/backup
drwxr-xr-x 2 root root 4096 Aug 14 08:07 /data/backup
2、编写web站点备份脚本www_backup.sh
[root@kali scripts]# cat www_backup.sh
#!/bin/bash
#backup webroot by adomiya at 20160814
cd /var/www/html/ && \
/bin/tar zcfh /data/backup/www_backup_$(date +%F).tar.gz ./www >/dev/null 2>&1 && \
/bin/find /data/backup -type f -name "web_back*.gz" -mtime +60|xargs rm -f >/dev/null 2>&1
3、编写mysql数据库备份脚本mysql_backup.sh
[root@kali scripts]# cat sql_backup.sh
#!/bin/bash
#backup mysql by adomiya at 20160814
DB_USER="root"
DB_PASS="fdFGdftytf"
DB_NAME="alics"
/usr/bin/mysqldump -u$DB_USER -p$DB_PASS $DB_NAME >/data/backup/"$DB_NAME"_"$(date +%F)".sql >/dev/null 2>&1 && \
/bin/find /data/backup -type f -name "*.sql" -mtime +60|xargs rm -f >/dev/null 2>&1
数据库用户名(root)、数据库密码(fdFGdftytf)、要备份的数据库名称(alics)。4、把上面的脚本添加到定时任务计划里运行
echo "#backup webroot by adomiya at 20160814">>/var/spool/cron/root
echo "00 00 * * 0 /bin/sh /data/server/scripts/www_backup.sh >/dev/null 2>&1" >>/var/spool/cron/root
echo "#backup mysql by adomiya at 20160814">>/var/spool/cron/root
echo "00 00 * * 0 /bin/sh /data/server/scripts/sql_backup.sh >/dev/null 2>&1">>/var/spool/cron/root
5、检测是否添加成功
[root@kali scripts]# crontab -l
00 00 * * 0 /bin/sh /data/server/scripts/www_backup.sh >/dev/null 2>&1
00 00 * * 0 /bin/sh /data/server/scripts/sql_backup.sh >/dev/null 2>&1

出现上面的信息表上添加成功
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息