MySQL ʼþµ÷¶ÈÆ÷(Event Scheduler)
Ò»¡¢¸ÅÊö
¡¡¡¡Ê¼þµ÷¶ÈÆ÷ÊÇÔÚ MySQL 5.1 ÖÐÐÂÔöµÄÁíÒ»¸öÌØÉ«¹¦ÄÜ£¬¿ÉÒÔ×÷Ϊ¶¨Ê±ÈÎÎñµ÷¶ÈÆ÷£¬È¡´ú²¿·ÖÔÏÈÖ»ÄÜÓòÙ×÷ϵͳÈÎÎñµ÷¶ÈÆ÷²ÅÄÜÍê³ÉµÄ¶¨Ê±¹¦>ÄÜ¡£ÀýÈ磬Linux ÖÐµÄ crontabe Ö»Äܾ«È·µ½Ã¿·ÖÖÓÖ´ÐÐÒ»´Î£¬¶ø MySQL µÄʼþµ÷¶ÈÆ÷Ôò¿ÉÒÔʵÏÖÿÃëÖÓÖ´ÐÐÒ»¸öÈÎÎñ£¬ÕâÔÚһЩ¶ÔʵʱÐÔÒª>Çó½Ï¸ßµÄ»·¾³Ï¾ͷdz£ÊµÓÃÁË¡£
¡¡¡¡Ê¼þµ÷¶ÈÆ÷ÊǶ¨Ê±´¥·¢Ö´Ðеģ¬ÔÚÕâ¸ö½Ç¶ÈÉÏÒ²¿ÉÒÔ³Æ×÷ÊÇ"ÁÙʱµÄ´¥·¢Æ÷"¡£´¥·¢Æ÷Ö»ÊÇÕë¶Ôij¸ö±í²úÉúµÄʼþÖ´ÐÐһЩÓï¾ä£¬¶øÊ¼þµ÷¶ÈÆ÷ÔòÊÇÔÚijһ¸ö(¼ä¸ô)ʱ¼äÖ´ÐÐһЩÓï¾ä¡£Ê¼þÊÇÓÉÒ»¸öÌØ¶¨µÄÏß³ÌÀ´¹ÜÀíµÄ£¬Ò²¾ÍÊÇËùνµÄ"ʼþµ÷¶ÈÆ÷"¡£ÆôÓÃʼþµ÷¶ÈÆ÷ºó£¬ÓµÓÐ SUPER ȨÏÞµÄÕË»§Ö´ÐÐ SHOW PROCESSLIST ¾Í¿ÉÒÔ¿´µ½Õâ¸öÏß³ÌÁË¡£Í¨¹ýÉ趨ȫ¾Ö±äÁ¿event_scheduler µÄÖµ¼´¿É¶¯Ì¬µÄ¿ØÖÆÊ¼þµ÷¶ÈÆ÷ÊÇ·ñÆôÓá£
(root:localhost:)test> SET GLOBAL event_scheduler = ON;
(root:localhost:)test> show processlist\G
*************************** 4. row ***************************
Id: 46147
User: event_scheduler
Host: localhost
db: NULL
Command: Daemon
Time: 1
State: Waiting on empty queue
Info: NULL
¡¡¡¡ÈçÉÏ£¬¸ÃÏ̵߳ÄËùÓÐÕßÊÇ event_scheduler¡£
¡¡¡¡¶þ¡¢Ó¦Óð¸Àý
¡¡¡¡±¾°¸ÀýÊÇÀûÓà event scheduler µÄÌØÐÔ£¬Ã¿ÃëÖÓµ÷ÓÃÒ»´Î´æ´¢¹ý³Ì£¬ÓÃÓÚÅÐ¶Ï SLAVE ÊÇ·ñÕý³£ÔËÐУ¬Èç¹û·¢ÏÖ SLAVE ¹Ø±ÕÁË£¬ºöÂÔ 0 ´Î´íÎó£¬È»ºóÖØÐÂÆô¶¯ SLAVE¡£
¡¡¡¡Ê×ÏÈ´´½¨´æ´¢¹ý³Ì
delimiter //
create procedure `Slave_Monitor`()
begin
SELECT VARIABLE_VALUE INTO @SLAVE_STATUS
from information_schema.GLOBAL_STATUS
WHERE VARIABLE_NAME='SLAVE_RUNNING';
IF ('ON' != @SLAVE_STATUS) THEN
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=0;
SLAVE START;
END IF;
end; //
delimiter ;
¡¡¡¡ÓÉÓÚ´æ´¢¹ý³ÌÖÐÎÞ·¨µ÷ÓÃÀàËÆ SHOW SLAVE STATUS ÕâÑùµÄÓï¾ä£¬Òò´ËÎÞ·¨µÃµ½È·Çеĸ´ÖÆ´íÎóÐÅÏ¢ºÍ´íÎó´úÂ룬²»ÄܽøÒ»²½µÄ´¦Àí SLAVE Í£Ö¹µÄ¸÷ÖÖÇé¿ö¡£
¡¡¡¡½Ó×Å£¬´´½¨ÈÎÎñ
CREATE EVENT IF NOT EXISTS `Slave_Monitor`
ON SCHEDULE EVERY 5 SECOND
ON COMPLETION PRESERVE
DO
CALL Slave_Monitor();
¡¡¡¡´´½¨ÁËÒ»¸öÈÎÎñ£¬Ã¿ 5ÃëÖÓ Ö´ÐÐÒ»´Î£¬ÈÎÎñ½áÊøºóÒÀ¾É±£Áô¸ÃÈÎÎñ£¬¶ø²»ÊÇɾ³ý¡
Ïà¹ØÎĵµ£º
1.JBPM4.3ÏÂÔØ(http://sourceforge.net/projects/jbpm)
2.ant°²×°:jBPMÏÂÔØ°üinstallĿ¼ÖÐÓÐÒ»¸öantµÄbuild.xmlÎļþ,ʹÓÃant -pÄã¿ÉÒÔ¿´µ½ËùÓеݲװ
demo.setup.jboss£º°²×°jboss£¬°Ñjbpm°²×°µ½jbossÖУ¬ Æô¶¯jboss£¬´´½¨jbpmÊý¾Ý¿â±í½á¹¹£¬²¿ÊðʵÀý£¬¼ÓÔØÊµÀýÉí·ÝÈÏÖ¤ÐÅÏ¢£¬ °²×°²¢Æô¶¯eclipse
&n ......
Ò»¡¢Á¬½ÓMYSQL¡£
¸ñʽ£º mysql -hÖ÷»úµØÖ· -uÓû§Ãû £pÓû§ÃÜÂë
1¡¢Àý1£ºÁ¬½Óµ½±¾»úÉϵÄMYSQL¡£
Ê×ÏÈÔÚ´ò¿ªDOS´°¿Ú£¬È»ºó½øÈëĿ¼ mysqlbin£¬ÔÙ¼üÈëÃüÁîmysql -uroot -p£¬»Ø³µºóÌáʾÄãÊäÃÜÂ룬Èç¹û¸Õ°²×°ºÃMYSQL£¬³¬¼¶Óû§rootÊÇûÓÐÃÜÂëµÄ£¬¹ÊÖ±½Ó»Ø³µ¼´¿É½øÈëµ½MYSQLÖÐÁË£¬MYSQLµÄÌáʾ·ûÊÇ£ºmysql>
2¡¢Àý2£ºÁ ......
1.¼ÓÔØmysqlÇý¶¯°üProperties->java Build Path->Libraries->Add External JARs...
2.Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/Êý¾Ý¿âÃû?user=root&password=ÃÜÂë"); ......
MySQL²éѯ±íÄÚÖØ¸´¼Ç¼
²éѯ¼°É¾³ýÖØ¸´¼Ç¼µÄ·½·¨
(Ò»)
1¡¢²éÕÒ±íÖжàÓàµÄÖØ¸´¼Ç¼£¬Öظ´¼Ç¼ÊǸù¾Ýµ¥¸ö×ֶΣ¨peopleId£©À´ÅжÏ
select * from people
where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1)
2¡¢É¾³ý±íÖжàÓàµÄÖØ¸´¼Ç¼£¬Öظ´¼Ç¼ÊǸù¾Ýµ¥¸ö×Ö¶Î ......