mysql数据库定时器开启(mysql设置定时任务)

  • 1、mysql如何查看定时器有没有执行
  • 2、mysql定时操作有关时间差的问题
  • 3、如何在程序中实现对mysql的定时访问
  • 4、如何实现Mysql数据库每天自动备份定时备份?

mysql如何查看定时器有没有执行

1.查看是否开启evevt与开启evevt。

1.1、MySQL evevt功能默认是关闭的,可以使用下面的语句来看evevt的状态,如果是OFF或者0,表示是关闭的。

show VARIABLES LIKE ‘%sche%’;

1.2、开启evevt功能

SET GLOBAL event_scheduler = 1;

2.创建定时器的过程

2.1、创建测试表test

drop table if exists test;

create table test

(

id int(11) not null auto_increment primary key,

time datetime not null

) engine=innodb default charset=utf8;

2.2、创建evevt要调用的存储过程test_proce

delimiter //

drop procedure if exists test_proce//

create procedure test_proce()

begin

insert into test(time) values(now());

end//

delimiter ;

2.3、开启evevt(要使定时起作用,MySQL的常量GLOBAL event_scheduler必须为on或者是1)

执行show variables like ‘event_scheduler’;查看evevt是否开启;

若没开启执行set global event_scheduler=’on’;

2.4、创建事件test_event(其作用:每隔一秒自动调用test_proce()存储过程)

drop event if exists test_event;

create event test_event

on schedule every 1 second

on completion preserve disable

do call test_proce();

2.5、开启事件test_event

MySQL从5.1开始支持event功能,类似oracle的job功能。

创建定时器 调用的存储过程

DELIMITER $$

DROP PROCEDURE IF EXISTS e_test $$

CREATE PROCEDURE e_test()

BEGIN

update pcdemo set v_isbag=0 where v_isbag=1 and to_days(now())-to_days(d_lasttime)=10;

END $$

DELIMITER ;

要使定时起作用 MySQL的常量GLOBAL event_scheduler必须为on或者是1

查看是否开启定时器

SHOW VARIABLES LIKE ‘%sche%’;

开启定时器 0:off 1:on

SET GLOBAL event_scheduler = 1;

创建事件

–每隔一秒自动调用e_test()存储过程

CREATE EVENT IF NOT EXISTS event_test

ON SCHEDULE EVERY 1 SECOND

ON COMPLETION PRESERVE

DO CALL e_test();

开启事件

ALTER EVENT event_test ON

COMPLETION PRESERVE ENABLE;

关闭事件

ALTER EVENT event_test ON

COMPLETION PRESERVE DISABLE;

修改 mysql 的 连接时间

============

第一种方法就是修改mysql,当时查资料《mysql5 管理员手册》里面说 mysql的timeout时间缺省是28800秒,也就是8小时,增加一个0就没问题了。 及在mysql界面里面输入mysqld-nt –default-table-type=innodb –interactive_timeout=288000。

如果是MySQL5以前的版本,需要修改连接池配置中的URL,添加autoReconnect=true

如果是MySQL5 以后的版本,需要修改my.cnf(或者my.ini)文件,在[mysqld]后面添加

wait_timeout = 172800

interactive-timeout = 172800

单位都是秒,记得必须都添加,否则不起作用,通过show variables查看wait_timeout的值。

第二种方法是在系统中做相应的配置,这种配置又分为两种,一种是传统的在系统中写定时检查连接的文件,另外一种就是交给服务器,让服务器来完成。先说第一种吧,我当时用的是c3p0链接池(因为当时还很崇尚hibernate),就是把3p0.testConnectionOnCheckout设置为true,然后将c3p0.preferredTestQuery设置为”select id from users where id=1″(users是我在项目中用户表,你也可以根据自己的实际换其他的表,但是查询的数据必须存在,*在附件中附上c3p0的常用属性)。第二种,jndi,其他的都差不多,及Resource name=”jdbc/TestDB” auth=”Container” type=”javax.sql.DataSource”

maxActive=”100″ maxIdle=”30″ maxWait=”10000″

username=”feiji” password=”111111″ driverClassName=”com.mysql.jdbc.Driver”

url=”jdbc:mysql://localhost:3306/javatest?autoReconnect=true”/其他的就不多做解释了,因为都很简单的东西,很多都是官方文档上面有的

利用UCache灾备云平台,可作为一个工具,在window服务器现有架构不变的情况下,针对Mysql数据库每天自动备份定时备份。

(1)新建备份任务

UCACHE灾备云控制台登录账号后:点击【服务器定时数据保护】–【数据备份】点击【新建】按钮,然后选要保护的对象(您的生产服务器节点),选中对应的客户端,选择【文件系统】然后点击【 下一步 】

(2)设置备份策略

选择要进行备份的文件

(3)永久增量备份与数据保留设置

选择完要过滤的数据之后点击下一步,可进行下一步备份的高级功能选择,各个选项说明如下:

【永久增量备份】开启了永久增量备份每一次增量备份都会进行一次时间点合成形成新的一个永久增量时间点等效于完备时间点。

【数据保留策略】开启数据保留策略一共有三种保留策略分别为数据保留期限、保留副本数、按备份策略的备份周期设置副本保留策略默认选中数据保留期限一年。可以设置保留完全副本的个数最大可设置1024个副本按备份策略的备份周期设置副本保留策略最大可设置99999个副本。

【传输和存储加密】开启传输加密与存储加密选项开启此功能的任务的数据在传输和存储上都经过加密处理。一共有两种加密方式AES256加密算法、SM4加密算法。

【数据压缩】默认不开启开启该选项后默认启用快速压缩可选择启用强力压缩

【重复数据删除】勾选该选项可以启动源端重复数据删除的功能该选项在建立任务后不能通过修改任务的方式更改此属性。指纹库需要提前创建才能成功开启重删功能

最后新建完成

目录和文件内容,可以全选和分选,还可以利用UCACHE灾备云控制台的“文件过滤”“目录过滤”“时间过滤”功能进行不必要的数据不进行备份策略添加。为了备份效率不建议两个任务包含同一文件。

(4)设置邮件告警

备份执行完毕,会得到系统的执行反馈,也可以设定告警监控策略,进行邮件监控

原创文章,作者:GX4DF,如若转载,请注明出处:https://www.506064.com/n/126604.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
GX4DFGX4DF
上一篇 2024-10-03 23:09
下一篇 2024-10-03 23:09

相关推荐

  • 如何修改mysql的端口号

    本文将介绍如何修改mysql的端口号,方便开发者根据实际需求配置对应端口号。 一、为什么需要修改mysql端口号 默认情况下,mysql使用的端口号是3306。在某些情况下,我们需…

    编程 2025-04-29
  • Python 常用数据库有哪些?

    在Python编程中,数据库是不可或缺的一部分。随着互联网应用的不断扩大,处理海量数据已成为一种趋势。Python有许多成熟的数据库管理系统,接下来我们将从多个方面介绍Python…

    编程 2025-04-29
  • openeuler安装数据库方案

    本文将介绍在openeuler操作系统中安装数据库的方案,并提供代码示例。 一、安装MariaDB 下面介绍如何在openeuler中安装MariaDB。 1、更新软件源 sudo…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29
  • Python操作MySQL

    本文将从以下几个方面对Python操作MySQL进行详细阐述: 一、连接MySQL数据库 在使用Python操作MySQL之前,我们需要先连接MySQL数据库。在Python中,我…

    编程 2025-04-29
  • Saturn 定时任务用法介绍

    本文将从以下几个方面对Saturn定时任务进行详细的阐述: 一、Saturn 定时任务简介 Saturn是一个分布式任务调度系统,支持在线添加、修改定时任务,支持多种任务类型,如J…

    编程 2025-04-29
  • 数据库第三范式会有删除插入异常

    如果没有正确设计数据库,第三范式可能导致删除和插入异常。以下是详细解释: 一、什么是第三范式和范式理论? 范式理论是关系数据库中的一个规范化过程。第三范式是范式理论中的一种常见形式…

    编程 2025-04-29
  • MySQL递归函数的用法

    本文将从多个方面对MySQL递归函数的用法做详细的阐述,包括函数的定义、使用方法、示例及注意事项。 一、递归函数的定义 递归函数是指在函数内部调用自身的函数。MySQL提供了CRE…

    编程 2025-04-29
  • leveldb和unqlite:两个高性能的数据库存储引擎

    本文将介绍两款高性能的数据库存储引擎:leveldb和unqlite,并从多个方面对它们进行详细的阐述。 一、leveldb:轻量级的键值存储引擎 1、leveldb概述: lev…

    编程 2025-04-28
  • Python怎么导入数据库

    Python是一种高级编程语言。它具有简单、易读的语法和广泛的库,让它成为一个灵活和强大的工具。Python的数据库连接类型可以多种多样,其中包括MySQL、Oracle、Post…

    编程 2025-04-28

发表回复

登录后才能评论