当前位置: 首页 > article >正文

Mysql自动备份脚本(本地备份、远程备份、删除冗余备份)

Mysql自动备份脚本(本地备份、远程备份、删除冗余备份)

1. 脚本功能

自动备份mysql数据到服务器上,可以通过linux的 crontab定义备份周期。

自动删除七天前的备份数据。

2. 脚本内容

#!/bin/bash
# auth Eric
source  /etc/profile
# 设置备份目录和文件名
backup_directory="/usr/local/data"
backup_filename="test_$(date +%Y%m%d).sql"

# 设置MySQL连接参数
mysql_host="数据库IP"
mysql_user="数据库用户名"
mysql_password="数据库密码"
mysql_database="数据库名称"

# 创建备份目录(如果不存在)
mkdir -p "$backup_directory"

# 执行备份命令
mysqldump -h "$mysql_host" -u "$mysql_user" -p"$mysql_password" "$mysql_database" > "$backup_directory/$backup_filename"

#删除7天前数据
find $backup_directory -name "test_*.sql" -mtime +7 -exec rm {} \;

# 检查备份是否成功
if [ $? -eq 0 ]; then
  echo "MySQL数据库备份成功:$backup_directory/$backup_filename"
else
  echo "MySQL数据库备份失败"
fi

3. 如何使用

新建backupmysql.sh填入脚本内容。

1.在mysql的宿主机执行备份

可以直接执行脚本backupmysql.sh,然后就可以查看备份后的脚本文件了

2.在远程机器上备份

需要在远程机器上安装mysql访问客户端

apt-get install mysql-client

或者

yum install mysql-client

然后再执行脚本

4. 定义备份周期

通过linux自带的corntab来实现脚本的定时备份

这里我们定义每天0点备份一次数据库

crontab e

添加一行命令

0 0 * * * sh /home/Shell/backupmysql.sh

更多crontab表达式


http://www.kler.cn/news/162417.html

相关文章:

  • 记录 | 使用samba将ubuntu文件夹映射到windows实现共享文件夹
  • C语言——2048完整版
  • Kubernetes - 为什么 K8S 在容器里不能调用自己?
  • 制作一个RISC-V的操作系统三-编译与链接
  • 理解 HTTP POST 请求:表单与 JSON 数据格式深入解析20231208
  • JVM的内存结构详解「重点篇」
  • el-form表单校验值为0提示校验不通过
  • 圣诞树网页效果代码详解
  • 应急响应-挖矿病毒处理
  • 【C语言】字符串函数strlen #strcpy #strcmp #strcat #strstr及其模拟实现
  • JS APl关于电梯导航做法(ES6)
  • 正则表达式详细讲解
  • openEuler JDK21 部署 Zookeeper 集群
  • 盘点11月Sui生态发展,了解Sui的近期成长历程!
  • springboot3.0更新后,idea创建springboot2.x项目
  • js写旋转的时钟动态
  • 在Windows 10或11中,复制和粘贴不起作用,不一定是键盘的问题
  • canvas基础:绘制虚线
  • Python 爬虫 之scrapy 框架
  • SAP 后继物料简介
  • promethesu告警规则配置,alertmanager通过webhook通知
  • 使用Rust 构建C 组件
  • php爬虫规则与robots.txt讲解
  • HarmonyOs 4 (二) HelloWord
  • (1)(1.4) ESP32 wifi telemetry
  • Unity 性能优化的手段【更新中】
  • 前端组件库开发
  • 【开题报告】基于SpringBoot的影视作品网站的设计与实现
  • 利用异或、取反、自增bypass_webshell_waf
  • 电脑出现错误代码0xc000000f怎么办,有效解决0xc000000f问题