下文内容主要给大家带来mysql、mongoDB是如何自动化备份脚本与恢复,所讲到的知识,与书籍不同,都是亿速云专业技术人员在与用户接触过程中,总结出来的,具有一定的经验分享价值,希望给广大读者带来帮助。
mysql自动备份脚本
vim /var/tool/mysqlbackup.sh
#!/bin/bash
shijie=`date +%Y%m%d%H`
backDatabaseDB=database$shijie.sql
backDatabaseFile=database$shijie.tar.gz
cd /var/mysql/back/
/usr/local/mysql/bin/mysqldump -uroot -p123456 --default-character-set=utf8 --opt --extended-insert=false --triggers -R --hex-blob --single-transaction database > $backDatabaseDB
tar czf $backDatabaseFile $backDatabaseDB
rm $backDatabaseDB -rf
定时任务
00 * * * * root /var/tool/mysql/backup.sh #每小时0分执行
00 5 * * * root find /var/mysql/back/ -mtime +0 -type f -exec rm -f {} \; #每天5点整删除24小时以前的文件
mongo自动备份脚本
#!/bin/bash
shijie=`date +%Y%m%d%H`
backmongodbFile=mongodb$shijie.tar.gz
cd /var/mongo/back/
/usr/local/mongo/bin/mongodump -h 127.0.0.1 --port 27017 -u mongo -p 123456 -d my_mongodb -o my_mongodb_dump/
tar czf $backmongodbFile my_mongodb_dump/
rm my_mongodb_dump -rf
定时执行与删除与mysql类似
备份后恢复
mysql恢复:
mysql -uroot -p 123456 database < database.sql
mongo恢复:
/usr/local/mongo/bin/mongorestore -d my_mongodb my_mongodb_dump/my_mongodb/* 指向每个文件
/usr/local/mongo/bin/mongorestore -h 127.0.0.1 --port 27017 -- drop --directoryperdb my_mongodb_dump/my_mongodb 指向一个目录
解释:加--drop 参数会在导入数据前先清空数据
对于以上关于mysql、mongoDB是如何自动化备份脚本与恢复,如果大家还有更多需要了解的可以持续关注我们亿速云的行业推新,如需获取专业解答,可在官网联系售前售后的,希望该文章可给大家带来一定的知识更新。