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
相关推荐
小贾要学习9 分钟前
【C++后端开发项目】Reactor 模型 / C++ 仿写 muduo HTTP 服务器:让底层网络库真正跑起网页
linux·服务器·c++·http·网络编程·muduo·reactor模型
Blockbuater_drug23 分钟前
OpenMM分子动力学模拟02 安装:Linux:conda 一条命令装通 GPU 加速的分子模拟环境
linux·conda·cuda·gpu驱动·pythonpath·openmm安装
程序员JerrySUN26 分钟前
PCIe Gen5 SSD 为什么读得快、写得慢?从存储原理到 Linux 性能实测
linux·服务器·网络
Android系统攻城狮40 分钟前
Linux FFmpeg深度解析之avcodec_parameters_copy调用流程与实战(二十五)
linux·运维·服务器·ffmpeg·音视频·车载音频
余槐i42 分钟前
Spring Boot 3.2 偶发500无日志:线程池复用导致请求上下文丢失
spring boot·redis·后端·mysql·性能优化
孤狼GPT1 小时前
ChatGPT、Codex数据库实战:MyBatis-Plus第一页查询正常,翻到第10000页为什么越来越慢?
mysql·chatgpt·mybatis-plus·codex·深分页
Decay__1 小时前
17_MySQL 监控体系构建 —— mysqld_exporter + Prometheus + Grafana 全栈实战
运维·数据库·sql·mysql·架构
ITKEY_1 小时前
emacs 文件管理Dired, the Directory Editor
linux·编辑器·emacs
源图客1 小时前
解决CentOS操作系统网络异常问题
linux·运维·centos
Franciz小测测2 小时前
MySQL 增量备份实践:文件都在,为什么仍可能恢复失败?
数据库·mysql·binlog