Mysql多数据库备份
发布日期:2021-05-09 05:07:22 浏览次数:10 分类:博客文章

本文共 668 字,大约阅读时间需要 2 分钟。

备份数据脚本

#!/bin/bash# date是linux的一个命令  date [参数] [+格式]time=` date +%Y_%m_%d_%H_%M_%S `# 备份输出路径backupdir=/home/backup/# 备份文件路径filedir=/home/my_app/files/# 用sql语句取出所有以'test'开头的数据库。将指令通过管道传递给mysql客户端;-N表示不输出结果的表头及结尾,得到的结果是纯粹的数据集databases=(`echo 'show databases like "test%";' | mysql -N -uroot -proot`)# 将mysqldump的输出文件通过管道传给gzip压缩,gzip是不能保存原文件且不能压缩目录的mysqldump -uroot -proot --databases ${databases[*]} | gzip > $backupdir/$time.sql.gz# 备份文件。zip [压缩输出文件] [被压缩文件]zip -r $backupdir/$time.zip $filedir# 删除7天前的备份文件find $backupdir -mtime +7 -name "*" -exec rm -rf {} \;

然后设置crontab在每天凌晨运行备份脚本即可

数据恢复

mysql -u root -p DATABESE_NAME < dump.sql

或者连接mysql客户端

mysql> source dump.sql
上一篇:通过SSH隧道的本地转发实现Django连接远程数据库
下一篇:Django ORM 知识点总结

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2025年04月01日 11时18分28秒