服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - Linux下mysql异地自动备份的方法

Linux下mysql异地自动备份的方法

2021-01-21 16:34Bainily_Wu Mysql

这篇文章主要介绍了Linux下mysql异地自动备份的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

前言:

基本上不管是对于我们自己使用,还是给客户部署服务器,,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异地自动备份的文章就介绍到这了,更多相关Linux下mysql异地自动备份内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/weixin_41235754/article/details/106585328

延伸 · 阅读

精彩推荐