mysql 5.1ʼþµ÷¶ÈÆ÷²âÊÔ
Î塢ʼþµ÷¶ÈÆ÷²âÊÔ
5.1¡¢²âÊÔÄ¿µÄ
5.1.1 ÅäÖ÷½·¨
5.1.2 ÊÇ·ñÕý³£¹¤×÷
5.1.3 ÈÕ³£µÄά»¤
5.2¡¢Ê¼þµ÷¶ÈÆ÷½éÉÜ
×ÔMySQL5.1.6Æð£¬Ôö¼ÓÁËÒ»¸ö·Ç³£ÓÐÌØÉ«µÄ¹¦ÄÜ
–ʼþµ÷¶ÈÆ÷(Event Scheduler)£¬¿ÉÒÔÓÃ×ö¶¨Ê±Ö´ÐÐÄ³Ð©ÌØ¶¨ÈÎÎñ£¨ÀýÈ磺ɾ³ý
¼Ç¼¡¢¶ÔÊý¾Ý
½øÐлã×ܵȵȣ©£¬À´È¡´úÔÏÈÖ»ÄÜÓɲÙ×÷ϵͳ
µÄ¼Æ»®ÈÎÎñÀ´Ö´ÐеŤ×÷¡£¸üÖµµÃÒ»ÌáµÄÊÇMYSQLµÄʼþµ÷¶ÈÆ÷¿ÉÒÔ¾«È·µ½Ã¿ÃëÖÓÖ´ÐÐÒ»¸öÈÎÎñ£¬¶ø²Ù×÷ϵͳ
µÄ¼Æ»®ÈÎÎñ£¨È磺Linux
쵀CRONȘWindows
ϵÄÈÎÎñ¼Æ»®£©Ö»Äܾ«È·µ½Ã¿·ÖÖÓÖ´ÐÐÒ»´Î¡£¶ÔÓÚһЩ¶ÔÊý¾ÝʵʱÐÔÒªÇó±È½Ï¸ßµÄÓ¦ÓÃ
£¨ÀýÈ磺¹ÉƱ¡¢ÅâÂÊ¡¢±È·ÖµÈ£©¾Í·Ç³£Êʺϡ£
ʼþµ÷¶ÈÆ÷ÓÐʱҲ¿É³ÆÎªÁÙʱ´¥·¢Æ÷(temporal triggers)£¬ÒòΪʼþµ÷¶ÈÆ÷ÊÇ»ùÓÚÌØ¶¨Ê±¼ä
ÖÜÆÚ´¥·¢À´Ö´ÐÐijЩÈÎÎñ£¬¶ø´¥·¢Æ÷(Triggers)ÊÇ»ùÓÚij¸ö±íËù²úÉúµÄʼþ´¥·¢µÄ£¬Çø±ðÒ²¾ÍÔÚÕâÀï¡£
ÔÚʹÓÃÕâ¸ö¹¦ÄÜ֮ǰ±ØÐëÈ·±£event_schedulerÒÑ¿ªÆô£¬¿ÉÖ´ÐÐ
SET GLOBAL event_scheduler = 1;
»òÎÒÃÇ¿ÉÒÔÔÚÅäÖÃmy.iniÎļþ
ÖмÓÉÏ event_scheduler = 1»ò
SET GLOBAL event_scheduler = ON;
À´¿ªÆô£¬Ò²¿ÉÒÔÖ±½ÓÔÚÆô¶¯ÃüÁî
¼ÓÉÏ“–event_scheduler=1”£¬ÀýÈ磺
mysql
d ... --event_scheduler=1
Òª²é¿´µ±Ç°ÊÇ·ñÒÑ¿ªÆôʼþµ÷¶ÈÆ÷£¬¿ÉÖ´ÐÐÈçÏÂSQL£º
SHOW VARIABLES LIKE 'event_scheduler';
»ò
SELECT @@event_scheduler;
»ò
ÓµÓÐ SUPER ȨÏÞµÄÕË»§Ö´ÐÐ SHOW PROCESSLIST ¾Í¿ÉÒÔ¿´µ½Õâ¸öÏß³ÌÁË
5.3¡¢¶¨Ê±·þÎñ
ÅäÖÃ
ÏÈÀ´¿´Ò»ÏÂËüµÄÓï·¨£º
CREATE EVENT [IF NOT EXISTS] event_name
ON SCHEDULE schedule
[ON COMPLETION [NOT] PRESERVE]
[ENABLE | DISABLE]
[COMMENT 'comment']
DO sql_statement;
schedule:
AT TIMESTAMP [+ INTERVAL INTERVAL]
| EVERY INTERVAL [STARTS TIMESTAMP] [ENDS TIMESTAMP]
INTERVAL:
quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |
WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |
DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}
5.3.1ÿÃë²åÈëÒ»Ìõ¼Ç¼µ½Êý¾Ý±í
USE te
Ïà¹ØÎĵµ£º
MySQL ´¥·¢Æ÷¼òµ¥ÊµÀý
1¡¢Óï·¨£º
CREATE TRIGGER <´¥·¢Æ÷Ãû³Æ> --´¥·¢Æ÷±ØÐëÓÐÃû×Ö£¬×î¶à64¸ö×Ö·û£¬¿ÉÄܺóÃæ»á¸½Óзָô·û.ËüºÍMySQLÖÐÆäËû¶ÔÏóµÄÃüÃû·½Ê½»ù±¾ÏàÏó.
{ BEFORE | AFTER } --´¥·¢Æ÷ÓÐÖ´ÐеÄʱ¼äÉèÖ㺿ÉÒÔÉèÖÃΪʼþ·¢Éúǰ»òºó¡£
{ INSERT | UPDATE | DELETE } --ͬÑùÒ²ÄÜÉ趨´¥· ......
update article set body = (REPLACE(body, '</div>', ' ')) where typeid=21
ÓÃupdateºÍreplaceÔÚmysqlÖÐÌæ»»Ä³Ò»¸ö×ֶεIJ¿·ÖÄÚÈÝ
update users_settings set `ConfigValue` = replace(configvalue,' fromstr' 'tostr') where `ConfigName`='accesslist'
¶ÔÓÚÕë¶Ô×Ö·û´®Î»ÖõIJÙ×÷£¬µÚÒ»¸öλÖñ»±ê¼Ç ......
linuxÏÂÍü¼ÇÁËmysqlµÄrootÓû§ÃÜÂë½â¾ö°ì·¨£º
¡¡¡¡Ò»¡¢ÒÔϵͳµÄrootÓû§£¨Ê²Ã´£¬ÄãµÄϵͳµÄrootÓû§ÃÜÂëÒ²ÍüÁË¡£ÄÇÖ»ºÃ¿´ÎÒÁíÍâһƪlinuxÏÂÍü¼ÇrootÓû§µÄ½â¾ö°ì·¨ÁËÏȽâ¾öÕâ¸öÎÊÌ⣩µÇ½ϵͳ£¬½øÈëÖÕ¶Ë
¡¡¡¡[root@localhost /]#
¡¡¡¡¶þ¡¢É±µômysql½ø³Ì
¡¡¡¡·½·¨1¡¢[root@localhost /]#killall mysqld
¡¡¡¡·½·¨2¡ ......
Èç¹ûÒªËæ»ú»ñÈ¡¼Ç¼Êý£¬ÔÚmysqlÀï×î¼òµ¥µÄ·½·¨¿Ï¶¨ÊÇorder
by
rand
()ÁË£¬µ«ÊÇÕâÖÖ·½·¨Ö»ÄÜÔÚ±í¼Ç¼¼«ÉÙµÄÇé¿öϲÅÄÜʹÓá£Ö÷ÒªÊÇÒòΪorder
by
rand
()µ¼ÖÂÁËusing filesort.Õâ¸öʱºò²éѯÀàÐÍ»á±ä³Éall£¬Ë÷Òý»áʧЧ¡£Ö»Ðè¼òµ¥µÄ±äͨÏ£¬Íê³É¿ÉÒÔ×öµ½Í¬ÑùµÄЧ¹û¡£
¸ù¾Ý¼Ç¼µÄÀàÐÍ£¬·ÖÀàÁ¬ÐøºÍ·ÇÁ¬ÐøÁ½ÖÖ¡£
Á¬ÐøÖ ......
ÔÚWindowsÉÏÔËÐÐMySQLµÄ»·¾³¼°ÖµµÃ×¢Òâ
Ò»¸ö32λWindows²Ù×÷ϵͳ£¬Èç³ð£¬ÎÒ£¬NT£¬2000£¬XP»òWindows Server 2003µÄ¡£
Ó²¼þ»·¾³ÒªÇó²¢²»ÊǺܸßÕâ¾ÍÃâÁË¡£
»ùÓÚWindows NT²Ù×÷ϵͳ£¨ÐĄ̂±Ò£¬2000£¬XP£¬2003Ä꣩£¬ÔÊÐíÄúÔËÐÐ×÷Ϊ·þÎñMySQL·þÎñÆ÷¡£Ò»¸öWindows NTʹÓõIJÙ×÷ϵͳ£¬Ç¿ÁÒ½¨Òé¡£²ÎÔĵÚ2.3.11£¬“Æô¶¯MySQL ......