mysql mongodb 定时备份数据库脚本
在日常服务器的运维中,对数据库的定时备份是相当重要的。
下面直接贴mysql 和mongodb的数据库定时备份脚本
1.mysql
脚本的内容如下,我这边保存为mysql_data_backup.sh,保存目录在/home/mysql_data_backup_path/
#!/bin/sh DUMP=/usr/bin/mysqldump OUT_DIR=/home/mysql_data_backup_path LINUX_USER=root DB_NAME=test DB_USER=root DB_PASS=123456 cd $OUT_DIR DATE=`date +%Y%m%d` OUT_SQL="$DATE.sql" TAR_SQL="data_bak_$DATE.tar.gz" $DUMP -u $DB_USER -p$DB_PASS $DB_NAME --default-character-set=utf8 --opt -Q -R --skip-lock-tables > $OUT_SQL tar -czf $TAR_SQL ./$OUT_SQL rm $OUT_SQL
修改/etc/crontab文件,加入定时备份数据库的定时任务,此处为每天凌晨5点进行备份操作
0 5 * * * root /home/mysql_data_backup_path/mysql_data_backup.sh
简要说明:首先 先建一个用于保存备份的数据库压缩包目录 /home/mysql_data_backup_path,然后按照当前时间年月日的格式导出sql文件,再通过tar的方式进行文件压缩,最后删除掉之前导出的sql文件
2.mongodb
脚本内容如下,脚本文件名为mongodb_data_backup.sh
#!/bin/sh DATE=`date +%Y%m%d` TAR_FILE_PATH="/home/mongodb_backup/$DATE" mongodump -h 127.0.0.1 -d test -o $TAR_FILE_PATH
同样修改/etc/crontab 加入定时备份数据库任务
0 5 * * * root /home/mongodb_backup/mongodb_data_backup.sh