前言:
基本上不管是对于我们自己使用,还是给客户部署服务器,,mysql备份都是必不可少的一部分,这里给大家分享一下我是如何实现linux上做异地自动备份的。
- mysql_backup.sh 用于备份数据
- mysql_restore.sh 用于恢复数据
- remove_backup.sh 用于删除一段时间以前的备份文件
一、数据备份准备
1.1创建备份目录
注:这里我是吧备份文件放在/data/backup/mysql下面,把脚本放在 /data/backup 下面
些创建一个文件夹(如果创建过请忽略)
1
2
|
mkdir -p /data/backup/mysql cd /data/backup |
1.2创建脚本文件
创建mysql_backup.sh脚本
vi mysql_backup.sh
粘贴下面的脚本内容
1
2
3
4
5
6
7
8
9
10
11
12
|
#!/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填写你需要从那台服务器下进行备份
1
2
3
4
5
6
7
8
9
|
[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
现在可以使用下面的命令来导出了
1
2
3
|
sh . /mysql_backup .sh # 查看一下结果 ll . /mysql |
总结
到此这篇关于Linux下mysql异地自动备份的文章就介绍到这了,更多相关Linux下mysql异地自动备份内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/weixin_41235754/article/details/106585328