在Linux中备份MySQL数据库
2022/9/13 2:24:19
本文主要是介绍在Linux中备份MySQL数据库,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
要求
- 每天凌晨2:30备份数据库DBTEST到 /data/banckup/db中。
- 备份开始和结束能够显示相应的信息。
- 备份后的文件要求以备份时间为文件名,并打包成.tar.gz格式的文件,例如:2020-09-11_023000.tar.gz。
- 在备份的同时,检查是否有10天前备份的数据库文件,如果有就将其删除。
代码实现
-
Shell文件-/usr/sbin/mysql_db.backup.sh
vim /usr/sbin/mysql_db.backup.sh
#!/bin/bash #备份目录 BACKUP=/data/backup/db #当前时间 DATETIME=$(date +%Y-%m-%d_%H%M%S) #数据库的地址 HOST=localhost #数据库用户名 DB_USER=root #数据库密码 DB_PW=abc123 #备份的数据库名 DATABASE=hspedu #创建备份目录, 如果不存在,就创建 [ ! -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 -rf {} \; echo "备份数据库${DATABASE} 成功~"
chomd +x /usr/sbin/mysql_db.backup.sh
-
crond代码
crontab -e 30 2 * * */usr/sbin/mysql_db.backup.sh
这篇关于在Linux中备份MySQL数据库的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-07MySQL读写分离入门:轻松掌握数据库读写分离技术
- 2024-12-07MySQL读写分离入门教程
- 2024-12-07MySQL分库分表入门详解
- 2024-12-07MySQL分库分表入门指南
- 2024-12-07MySQL慢查询入门:快速掌握性能优化技巧
- 2024-12-07MySQL入门:新手必读的简单教程
- 2024-12-07MySQL入门:从零开始学习MySQL数据库
- 2024-12-07MySQL索引入门:新手快速掌握MySQL索引技巧
- 2024-12-06BinLog学习:MySQL数据库BinLog入门教程
- 2024-12-06Binlog学习:MySQL数据库的日志管理入门教程