基于 mysql 镜像的定时自动备份数据和清除过期备份

基于 mysql 镜像的定时自动备份数据和清除过期备份,第1张

CentOS 7

mysql8镜像

备份方式:mysqldump 命令

mysql_backup.sh 脚本,本例将其放置在 /home/test/db_bk 文件夹

执行以上脚本后,会在挂在路径下生成 “/backup/日期” 的文件夹,文件夹内存着备份的 sql 文件,当需要恢复备份时,执行对应的 sql 文件即可。

Linux 内置的 cron 进程可以用于开启定时任务

cron进程简介

进入 cron 编辑器:

编辑cron命令:

可以通过以下命令,查看定时任务情况:

执行以上脚本后,会在挂在路径下生成 “/backup/日期” 的文件夹,文件夹内存着备份的 sql 文件,当需要恢复备份时,执行对应的 sql 文件即可。

可以把备份的 sql 文件导出,然后用 navicat 之类的工具执行 sql 文件即可。

1.3.2.1

*注意: 需要设置字符集,否则会乱码,mysql -u [用户] -p --default-character-set=utf8mb4

1.3.2.2

正确的写法是:

这是我在网上CSDN,博客园看到基本全是错误的,还有人是随便转发的吧。

-exec rm {} 表示执行一段shell命令,exec选项后面跟随着所要执行的命令或脚本,然后是一对儿{},一个空格和一个,最后是一个分号。

/dev/null 2>&1 把标准出错重定向到标准输出,然后扔到/DEV/NULL下面去。通俗的说,就是把所有标准输出和标准出错都扔到垃圾桶里面;其中的&表示让该命令在后台执行。

有两种方法

写程序加到crontab里面,让定时执行,然后去删。这个方法比较常见。

通过触发器来删。给这个表建立一个触发器,每当有insert或者update的时候,就触发一条sql,这个sql就是删除过期的数据


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/8306830.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-15
下一篇2023-04-15

发表评论

登录后才能评论

评论列表(0条)

    保存