Linux系统定时备份mysql数据库

1、创建shell脚本mysql_db_backup并赋予执行权限

powershell 复制代码
#!/bin/bash
#备份目录
BACKUP=/data/backup/db
#当前时间
DATETIME=$(date +%Y-%m-%d_%H%M%S)
echo $DATETIME
#数据库地址
HOST=localhost
#数据库用户名
DB_USER=root
#数据库密码
DB_PW=pwd@123
#备份的数据库名
DATABASE=ApolloPortalDB

#创建备份目录,如果不存在,就创建
[ ! -d "${BACKUP}/${DATETIME}" ] && mkdir -p "${BACKUP}/${DATETIME}"

#备份数据库
mysqldump -u${DB_USER} -p${DB_PW} --host=${HOST} -q -R --databases ${DATABASE} | gzip >${BACKUP}/${DATETIME}/$DATETIME.sql.gz

#将文件处理为tar.gz
cd ${BACKUP}
tar -zcvf $DATETIME.tar.gz $DATETIME

#删除对应的备份目录
rm -rf ${BACKUP}/${DATETIME}

#删除10天前的备份文件
find ${BACKUP} -atime +10 -name "*.tar.gz" -exec rm {} \;

echo "备份数据库${DATABASE}成功~"

2、将脚本添加到crontad中:

powershell 复制代码
30 2 * * * /usr/sbin/mysql_db_backup.sh
相关推荐
设计师小聂!15 小时前
宝塔 Linux 面板保姆级教程
linux·mysql·开源·运维开发
小小龙学IT16 小时前
Go 泛型深度解析:从设计哲学到工程实践
服务器·数据库·golang
天行健,君子而铎16 小时前
2026年通用行业数据分类分级产品排名——聚焦成本低、全链路覆盖与高性能计算的优质选型
大数据·数据库·人工智能
Tong Z16 小时前
Mysql DDL中的ALGORITHM
数据库·mysql
电商API_1800790524717 小时前
Python 实现闲鱼商品列表批量采集,接口异常重试机制搭建
大数据·开发语言·数据库·爬虫·python
焦虑的说说18 小时前
redis和数据库的一致性如何保证
数据库·redis·缓存
阿狸猿19 小时前
论基于云原生数据库的企业信息系统架构设计
数据库·云原生
MXsoft61820 小时前
**配置自动备份与变更告警:杜绝“黑变更”风险**
网络·数据库
骑士雄师20 小时前
19.3 langgraph的工作节点和路由函数
java·前端·数据库