Centos编写mysql备份脚本

1. 编写 MySQL 备份脚本

创建一个名为 backup.sh 的脚本,定期备份 fuint-food 数据库。

bash 复制代码
#!/bin/bash
# 获取当前时间戳
TIMESTAMP=$(date +"%F-%H%M")
# 备份存储路径
BACKUP_DIR="/path/to/backup/$TIMESTAMP"
# MySQL 相关信息
MYSQL_USER="your_user"
MYSQL_PASSWORD="your_password"
MYSQL_DATABASE="fuint_food"
# 创建备份目录
mkdir -p "$BACKUP_DIR"
# 执行备份
mysqldump --user=$MYSQL_USER --password=$MYSQL_PASSWORD $MYSQL_DATABASE > "$BACKUP_DIR/fuint_food_$TIMESTAMP.sql"
# 打印成功消息
echo "Backup for $MYSQL_DATABASE completed at $TIMESTAMP"

注意: 请将 your_user 和 your_password 替换为你的 MySQL 用户名和密码。

2. 设置脚本定期执行

在 Linux 系统中使用 cron 任务计划

1.打开终端并编辑 cron 任务:

bash 复制代码
crontab -e

添加一行来设置备份频率(例如,每天凌晨 2 点执行):

bash 复制代码
0 2 * * * /path/to/backup.sh
这将会每天凌晨 2 点运行 backup.sh 脚本并备份数据库。

3. 设置脚本开机自启动

你可以将脚本添加到系统的启动项中,确保开机后会自动执行。

1.在 systemd 中添加服务:

创建一个 systemd 服务文件:

bash 复制代码
sudo nano /etc/systemd/system/backup.service

在服务文件中添加以下内容:

bash 复制代码
[Unit]
Description=MySQL Backup Service
After=network.target

[Service]
ExecStart=/path/to/backup.sh
Type=oneshot

[Install]
WantedBy=multi-user.target

2.使该服务在开机时自动启动:

bash 复制代码
sudo systemctl enable backup.service

3.启动服务并检查其状态:

bash 复制代码
sudo systemctl start backup.service
sudo systemctl status backup.service
相关推荐
AlfredZhao1 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
唐青枫1 天前
MySQL JSON 实战详解:从存储、查询、更新到 JSON_TABLE 与索引
sql·mysql
小满8781 天前
5.Mysql事务隔离级别与锁机制
mysql
元Y亨H2 天前
技术笔记:MySQL 字符集排序规则与大小写敏感性问题解决方案
mysql
戴为沐2 天前
Linux内存扩容指南
linux
zylyehuo3 天前
Linux 彻底且安全地删除文件
linux
这个DBA有点耶3 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵3 天前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
用户805533698033 天前
主线 U-Boot 上 RK3506:和闭源 rkbin 拔河的三个隐性契约
linux·嵌入式
用户034095297913 天前
linux fcitx 5 雾凇拼音 设置在中文输入法下仍然输入英文标点
linux