欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Mysql备份多个数据库代码实例

程序员文章站 2023-11-10 19:54:04
这篇文章主要介绍了mysql备份多个数据库代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 备份数据脚本 #!...

这篇文章主要介绍了mysql备份多个数据库代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

备份数据脚本

#!/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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。