首页 > CentOS, MongoDB, Mysql > mysql mongodb 定时备份数据库脚本

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
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.
*