Linux下mysql异地如何自动备份?本篇文章小编给大家分享一下Linux下mysql异地自动备份方法,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
mysql_backup.sh 用于备份数据
mysql_restore.sh 用于恢复数据
remove_backup.sh 用于删除一段时间以前的备份文件
一、数据备份准备
1.1创建备份目录
注:这里把备份文件放在/data/backup/mysql下面,把脚本放在 /data/backup 下面
创建一个文件夹(如果创建过请忽略)
mkdir -p /data/backup/mysql cd /data/backup
1.2创建脚本文件
创建mysql_backup.sh脚本
vi mysql_backup.sh
粘贴下面的脚本内容
#!/bin/bash # 需要的话,自己改这里哦 #db_user='root' #db_password=`cat /data/www/mysql_password` db_name='wuqilong' backup_dir='/data/backup/mysql/' current_time=$(date +'%Y-%m-%d_%H%M%S') filepath=$backup_dir$current_time'.sql.gz' #此处没有使用 $db_password $db_user, 已经写入到配置文件中 echo '开始导出数据库...' mysqldump --defaults-extra-file=/data/backup/my_mysql.cnf $db_name | gzip > $filepath echo '导出成功,文件名为: '$filepath
新建配置文件, 就在我们的当前目录下 即 /data/backup
vi my_mysql.cnf
下面的是文件内容,这里可以设置一下允许导出的文件大小上限
这里的host填写你需要从那台服务器下进行备份
[mysqldump] max_allowed_packet = 400M host=ip地址(192.168.1.**) user=root password='root' [mysql] host=ip地址(192.168.1.**) user=root password='root'
这样导出shell脚本就已经写好了哈,接下来给它加一下权限。
chmod +x ./mysql_backup.sh
现在可以使用下面的命令来导出了
sh ./mysql_backup.sh # 查看一下结果 ll ./mysql