首页 MySQL 在 centos 上备份
文章
取消

MySQL 在 centos 上备份

MySQL 在 centos 上备份

写一个脚本,需求是,备份最近 7 天 MySQL 的数据,过期删除:

backup_mysql_exam.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/bin/bash

# MySQL 用户名
USER="root"
# MySQL 密码
PASSWORD="123456"
# 要备份的数据库
DATABASE="exam"
# 备份的数据
BACKUP_DIR="/data/mysqlbackup"
DATE=$(date +"%Y-%m-%d")
# MySQL TCP 端口
PORT=8889


mkdir -p ${BACKUP_DIR}


mysqldump -u${USER} -p${PASSWORD} -hlocalhost --port=${PORT} ${DATABASE} > ${BACKUP_DIR}/${DATABASE}_${DATE}.sql


find ${BACKUP_DIR} -type f -name "${DATABASE}_*.sql" -mtime +7 -exec rm {} \;

给脚本增加执行权限:

1
chmod +x 文件全路径

定义定时任务,每天凌晨执行脚本:

1
crontab -e

增加定义任务 cron 表达式:

1
0 0 * * * 脚本全路径
本文由作者按照 CC BY 4.0 进行授权

-

Supabase技术调研