|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
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仍然不同于内部数据库,解决方案提供商必须认识到这一点;否则,他们不仅仅是丢失几个客户,而是要失去的更多。 |
|