it编程 > 前端脚本 > Powershell

MySQL备份Shell脚本的实现

54人参与 2025-03-25 Powershell

你可以编写一个 shell 脚本来自动备份 mysql 数据库。下面是一个示例脚本,它会:

示例:mysql 备份 shell 脚本

#!/bin/bash

# 配置部分
backup_dir="/backup/mysql"  # 备份存放目录
mysql_user="root"           # mysql 用户名
mysql_password="yourpassword" # mysql 密码
mysql_host="localhost"      # mysql 服务器地址
database_name="your_database"  # 备份的数据库名,若要备份所有数据库,改为 --all-databases
retention_days=7            # 保留的天数,自动删除旧备份

# 获取当前日期
date=$(date +"%y-%m-%d_%h-%m-%s")

# 备份文件名
backup_file="$backup_dir/${database_name}_$date.sql.gz"

# 确保备份目录存在
mkdir -p "$backup_dir"

# 执行备份
mysqldump -h "$mysql_host" -u "$mysql_user" -p"$mysql_password" "$database_name" | gzip > "$backup_file"

# 检查备份是否成功
if [ $? -eq 0 ]; then
    echo "mysql 备份成功: $backup_file"
else
    echo "mysql 备份失败!"
    exit 1
fi

# 删除 n 天前的旧备份
find "$backup_dir" -type f -name "${database_name}_*.sql.gz" -mtime +$retention_days -exec rm {} \;

echo "已清理 $retention_days 天前的旧备份"

使用方式

复制脚本到 linux 服务器,如 /backup/mysql_backup.sh

修改脚本参数(数据库名、用户名、密码等)。

赋予执行权限

chmod +x /backup/mysql_backup.sh

手动运行测试

/backup/mysql_backup.sh

设置定时任务,每天凌晨 2 点自动备份:

crontab -e

添加:

0 2 * * * /backup/mysql_backup.sh >> /backup/backup.log 2>&1

这样,你的 mysql 数据库就能每天自动备份并清理旧备份,确保数据安全!

到此这篇关于mysql备份shell脚本的实现的文章就介绍到这了,更多相关mysql备份shell脚本内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

Win11/win10管理PowerShell新方式:支持自动更新

03-03

详解如何利用PowerShell提取wps表格中嵌入的图片

02-13

利用PowerShell一键下载Nuget某个包的所有版本

02-13

Mongo Shell 执行环境的基本操作

02-13

Xshell远程连接失败以及解决方案

01-14

接入混元AI大模型! 努比亚Watch GT智能手表发布: 599元

01-04

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论