当前位置: 首页 > news >正文

通过配置数据库事件(Event)来实现定时导出 MySQL 数据库

首先,确保 MySQL 服务器已启用事件调度器功能。你可以通过以下 SQL 语句查询:

SHOW VARIABLES LIKE 'event_scheduler';

如果 event_scheduler 的值为 ON,则表示事件调度器已启用;如果为 OFF,则可以使用以下语句启用:

SET GLOBAL event_scheduler = ON;

创建一个事件,用于每天定时导出数据库。以下是一个示例 SQL 语句:

CREATE EVENT export_database

ON SCHEDULE

EVERY 1 DAY

STARTS '2024-02-28 02:00:00'

DO

BEGIN

SET @backup_path = '/path/to/backup/';

SET @timestamp = NOW();

SET @backup_file = CONCAT(@backup_path, 'your_database_backup_', @timestamp, '.sql');

SET @export_cmd = CONCAT('mysqldump -u your_username -pyour_password your_database > ', @backup_file);

PREPARE stmt FROM @export_cmd;

EXECUTE stmt;

DEALLOCATE PREPARE stmt;

END;

替换 your_usernameyour_passwordyour_database 和 /path/to/backup/ 分别为你的数据库凭据、数据库名称和备份路径。

要激活事件调度器,确保 event_scheduler 已启用,并在 MySQL 中运行以下语句:

SET GLOBAL event_scheduler = ON;

查询所有已创建的事件:

SHOW EVENTS;

查看指定事件的详细信息:

SELECT * FROM information_schema.EVENTS WHERE event_name = 'event_name';

删除指定事件:

DROP EVENT IF EXISTS event_name;

http://www.lryc.cn/news/308265.html

相关文章:

  • 基于x86架构的OpenHarmony应用生态挑战赛等你来战!
  • LeetCode每日一题2673. Make Costs of Paths Equal in a Binary Tree
  • 贝叶斯分类器
  • 游戏服务之会话管理
  • LeetCode20 有效的括号
  • sql实战_基于某推荐比值问题
  • 协议的概念+本质+作用+最终表现形式,网络问题(技术+应用+解决的协议+存在原因),主机的对称性
  • iOS中卡顿产生的主要原因及优化思路
  • spring boot集成Elasticsearch 7.16.3
  • HTML5+CSS3小实例:环绕小球弹性loading动画
  • SpringBoot 自定义注解实现操作日志记录
  • ubuntu常见配置
  • electron+vue3全家桶+vite项目搭建【27】封装窗口工具类【1】雏形
  • 从模型到复合AI系统的转变
  • 将仓库A中的部分提交迁移到仓库B中
  • 信息安全技术基础
  • flask知识--01
  • 软考52-上午题-【数据库】-关系模式2
  • devc++跑酷小游戏3.5.0
  • Redisson限流算法
  • GPT与MBR:硬盘分区表格式的革新与区别
  • 机器学习-1
  • Stream流详解
  • javaweb学习(day05-TomCat)
  • 【Unity】构建简单实用的年份选择器(简单原理示范)
  • LeetCode 2120.执行所有后缀指令
  • 租赁小程序|租赁系统|租赁软件开发带来高效运营
  • 大数据集群管理软件 CDH、Ambari、DataSophon 对比
  • 插值、逼近、拟合、光顺
  • Java单元测试 - mock静态方法