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
相关推荐
ltl几秒前
MinIO 原理和架构:机制、AGPL 与上游 archived 风险
linux
林浩杨_17 分钟前
linux搜索命令(grep+sed)
linux·命令模式
wWYy.21 分钟前
Mysql:主键索引 唯一索引 普通索引 前缀索引
数据库·mysql
W.W.H.33 分钟前
将驱动编译成模块并安装到rootfs
linux·物联网·wifi·rootfs·驱动
ltl33 分钟前
io_uring 在生产环境翻车实录:内核 bug、资源泄漏和你不知道的限制
linux
ltl36 分钟前
内存分配器擂台:jemalloc vs tcmalloc vs mimalloc vs glibc
linux
ltl37 分钟前
Zero Copy 的肮脏秘密:在什么时候反而更慢
linux
数据知道1 小时前
宽字节注入、二次注入、堆叠注入:高级 SQLi 专题
linux·运维·安全·网络安全
童槿顏丶2 小时前
GitLab部署到Linux
linux·运维·gitlab
空堂与归5 小时前
Linux 命令实战:AI 开发者必备的终端操作手册
linux