mysql shell自动备份
Database 2024/8/9 17:37:53 点击:不统计
http://%77w%77%2E%66%6F%72%61%73%70%2E%63n网站制作学习
mysql,可以通过shell 脚本调用mysqldump 进行自动备份,需要说明的是配置.my.cnf 账号密码,不用输入账号密码了。
1. 第一步 shell 备份脚本, 可以直接复制保存为back.sh
#!/bin/bash
# 数据库信息
DB_NAME="DataBase Name"
# 备份文件目录
BACKUP_DIR="/opt/backdata"
BACKUP_DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="$BACKUP_DIR/${DB_NAME}_backup_$BACKUP_DATE.sql"
# 确保备份目录存在
mkdir -p $BACKUP_DIR
# 导出数据库
mysqldump --defaults-file=.my.cnf $DB_NAME > $BACKUP_FILE
# 可选:删除超过30天的备份文件
#find $BACKUP_DIR -type f -name "*.sql" -mtime +30 -exec rm {} \;
# 记录日志
#echo "[$(date +'%Y-%m-%d %H:%M:%S')] Backup of $DB_NAME completed: $BACKUP_FILE" >> /var/log/mysql_backup.log
2. 第二步编辑 .my.cnf 可以任意路径,对应路径配置上面的 --defaults-file=文件权限需要 600 -rw------- 内容格式如下:
[client]
user=账号
password=你的密码
host=127.0.0.1
3.第三步 ,在crontab 中配置执行定时自动备份
# 每天凌晨3天开始备份
0 3 * * * /opt/back.sh
以上就是 mysql shell 自动备份
http://%77%77%77%2E%66%6F%72%61%73%70%2E%63%6E
·上一篇:mysql 自动备份 >> ·下一篇:EC2 mysql 无法连接 3306不通 >>