仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 829|回复: 7
打印 上一主题 下一主题

[学习教程] 绝无经由的MySQL事务调剂器Event Scheduler详解

[复制链接]
爱飞 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 20:10:34 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
MySQL数据库归MySQLAB公司所有,但是这个软件是开源的,有一个MySQL学习教程可以免费下载。稍俱常识的新入门者都可以轻松实现在一个常见硬件上安装和配置MySQL。事务调剂器是在MySQL5.1中新增的另外一个特征功效,能够作为准时义务调剂器,代替部分本来只能用操纵体系义务调剂器才干完成的准时功>能。比方,linux中的crontabe只能准确到每分钟实行一次,而MySQL的事务调剂器则能够完成每秒钟实行一个义务,这在一些对及时性要>求较高的情况下就十分有用了。

事务调剂器是准时触发实行的,在这个角度上也能够称作是"一时的触发器"。触发器只是针对某个表发生的事务实行一些语句,而事务调剂器则是在某一个(距离)工夫实行一些语句。事务是由一个特定的线程来办理的,也就是所谓的"事务调剂器"。启用事务调剂器后,具有SUPER权限的账户实行SHOWPROCESSLIST就能够看到这个线程了。经由过程设定全局变量event_scheduler的值便可静态的把持事务调剂器是不是启用。

(root:localhost:)test>SETGLOBALevent_scheduler=ON;(root:localhost:)test>showprocesslistG***************************4.row***************************Id:46147User:event_schedulerHost:localhostdb:NULLCommand:DaemonTime:1State:WaitingonemptyqueueInfo:NULL


如上,该线程的一切者是event_scheduler。

使用案例

本案例是使用eventscheduler的特征,每秒钟挪用一次存储历程,用于判别SLAVE是不是一般运转,假如发明SLAVE封闭了,疏忽0次毛病,然后从头启动SLAVE。

起首创立存储历程

delimiter//createprocedure`Slave_Monitor`()beginSELECTVARIABLE_VALUEINTO@SLAVE_STATUSFROMinformation_schema.GLOBAL_STATUSWHEREVARIABLE_NAME=SLAVE_RUNNING;IF(ON!=@SLAVE_STATUS)THENSETGLOBALSQL_SLAVE_SKip_COUNTER=0;SLAVESTART;ENDIF;end;//delimiter;

因为存储过程当中没法挪用相似SHOWSLAVESTATUS如许的语句,因而没法失掉切实的复制毛病信息和毛病代码,不克不及进一步的处置SLAVE中断的各类情形。

接着,创立义务

CREATEEVENTIFNOTEXISTS`Slave_Monitor`
ONSCHEDULEEVERY5SECOND
ONCOMPLETIONPRESERVE
DO
CALLSlave_Monitor();

创立了一个义务,每5秒钟实行一次,义务停止后仍旧保存该义务,而不是删除。固然了,在本例中的义务不会停止,除非将它手动克制了。

假如在运转中想要一时封闭一下某个义务,实行ALTEREVENT语句便可:

(root:localhost:)test>alterevent`Slave_Monitor`ON
COMPLETIONPRESERVEDISABLE;
(root:localhost:)test>alterevent`Slave_Monitor`ON
COMPLETIONPRESERVEENABLE;
如IBM公司最近宣布让渠道合作伙伴分销其SaaS应用程序的新计划。微软认为MySQL学习教程是销售其云计算服务的重要组成部分。然而即使有这种趋势,DBaaS仍然不同于内部数据库,解决方案提供商必须认识到这一点;否则,他们不仅仅是丢失几个客户,而是要失去的更多。
飘飘悠悠 该用户已被删除
沙发
发表于 2015-1-18 18:20:21 | 只看该作者
可以动态传入参数,省却了动态SQL的拼写。
深爱那片海 该用户已被删除
板凳
发表于 2015-1-27 16:16:14 | 只看该作者
可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。
再见西城 该用户已被删除
地板
发表于 2015-2-5 12:15:55 | 只看该作者
外键的级联更能扩展可能大部分的同行在设计OLTP系统的时候都不愿意建立外键,都是通过程序来控制父子数据的完整性。
金色的骷髅 该用户已被删除
5#
发表于 2015-2-11 20:09:42 | 只看该作者
这一点很好的加强了profiler的功能。但是提到profiler提醒大家注意一点。windows2003要安装sp1补丁才能启动profiler。否则点击没有反应。
因胸联盟 该用户已被删除
6#
发表于 2015-3-2 18:46:48 | 只看该作者
如果是将来做数据库的开发设计,就应该详细学习T-SQL的各种细节,包括T-SQL的程序设计、存储过程、触发器以及具体使用某个开发语言来访问数据库。
柔情似水 该用户已被删除
7#
发表于 2015-3-11 05:57:33 | 只看该作者
相信各位对数据库和怎么样学习数据库都有一些经验和看法,也会有人走了一些弯路总结出自己的经验来,希望大家能把各自的看法和经验拿出来分享,给别人一份帮助,给自己一份快乐
山那边是海 该用户已被删除
8#
发表于 2015-3-25 04:29:24 | 只看该作者
每天坚持做不一样的是,认真做笔录,定时复习。一个月你就可以有一定的收获。当然如果你想在sql方面有一定的造诣,你少不了需要看很多很多的书籍了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 20:12

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表