centos中创建自动备份Mysql脚本任务并定期删除过期备份
背景:
OA系统数据库是mysql,引擎为myisam,可以直接通过拷贝数据库文件的方式进行备份
创建只备份数据库的任务:
创建保存mysql数据库备份文件的目录mysqlbak
mkdir /home/mysqlbak编辑shell脚本
vi /usr/sbin/bakmysql
加入如下内容:
#关闭mysql数据库服务
/opt/lampp/lampp stopmysql
#创建以当前日期为名称的目录
cd /home/mysqlbak
time=$(date '+%Y%m%d')
mkdir $time
cp /opt/lampp/var/mysql/TD_OA/*.* /home/mysqlbak/$time
#备份完成后开启mysql数据库服务
/opt/lampp/lampp startmysql
3、修改文件属性,使其可执行
chmod +x /usr/sbin/bakmysql
4、修改/etc/crontab
vi /etc/crontab
#每天3点执行脚本
01 3 * * * root /usr/sbin/bakmysql
5、重新启动crond
/etc/rc.d/init.d/crond restart
========================================================
创建备份任务并自动删除15天以前备份的语句:
mkdir /home/mysqlbak
编辑shell脚本
vi /usr/sbin/bakmysql
加入如下内容:
#关闭mysql数据库服务
/opt/lampp/lampp stopmysql
#创建以当前日期为名称的目录
cd /home/mysqlbak
time=$(date '+%Y%m%d')
mkdir $time
cp /opt/lampp/var/mysql/TD_OA/*.* /home/mysqlbak/$time
#备份完成后开启mysql数据库服务
/opt/lampp/lampp startmysql
#删除9天以前的备份
find /home/mysqlbak -type d -mtime +9 -exec rm -rf {} \;
3、修改文件属性,使其可执行
chmod +x /usr/sbin/bakmysql
4、修改/etc/crontab
vi /etc/crontab
#每天3点执行脚本
01 3 * * * root /usr/sbin/bakmysql
5、重新启动crond
/etc/rc.d/init.d/crond restart
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律