今天就跟大家聊聊有關(guān)MySQL故障切換中事件調(diào)度器的注意事項有哪些,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
在象州等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站設(shè)計、成都網(wǎng)站制作 網(wǎng)站設(shè)計制作按需設(shè)計網(wǎng)站,公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),營銷型網(wǎng)站建設(shè),外貿(mào)網(wǎng)站建設(shè),象州網(wǎng)站建設(shè)費用合理。
事件調(diào)度器(event)是在MySQL5.1中新增的任務(wù)調(diào)度器,解決了在之前版本中只能依賴系統(tǒng)定時任務(wù)才能完成的功能。
下邊看一個案例:
開啟event:
mysql> set global event_scheduler=ON;
Query OK, 0 rows affected (0.01 sec)
mysql> show variables like 'event%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| event_scheduler | ON |
+-----------------+-------+
在主從架構(gòu)中,在master上創(chuàng)建一個event:
mysql> show create event testevent \G
*************************** 1. row ***************************
Event: testevent
sql_mode: STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION
time_zone: SYSTEM
Create Event: CREATE DEFINER=`root`@`%` EVENT `testevent` ON SCHEDULE EVERY 1 DAY STARTS '2017-09-11 23:50:00' ON COMPLETION NOT PRESERVE ENABLE DO create table test02 as select * from test01
character_set_client: utf8
collation_connection: utf8_general_ci
Database Collation: utf8_general_ci
1 row in set (0.00 sec)
使用slave進行同步,然后查看master和slave該event狀態(tài)
master
mysql> show events \G
*************************** 1. row ***************************
Db: test
Name: testevent
Definer: root@%
Time zone: SYSTEM
Type: RECURRING
Execute at: NULL
Interval value: 1
Interval field: DAY
Starts: 2017-09-11 23:50:00
Ends: NULL
Status: ENABLED
Originator: 2
character_set_client: utf8
collation_connection: utf8_general_ci
Database Collation: utf8_general_ci
slave
mysql> show events \G
*************************** 1. row ***************************
Db: test
Name: testevent
Definer: root@%
Time zone: SYSTEM
Type: RECURRING
Execute at: NULL
Interval value: 1
Interval field: DAY
Starts: 2017-09-11 23:50:00
Ends: NULL
Status: SLAVESIDE_DISABLED
Originator: 2
character_set_client: utf8
collation_connection: utf8_general_ci
Database Collation: utf8_general_ci
也就是說event只能在master上觸發(fā),在slave上不能觸發(fā),如果slave上觸發(fā)了,同步就壞掉了,當(dāng)主從故障切換之后,slave就變成了master,需要人工開啟事件狀態(tài):
alter event 'testevent' enable;
看完上述內(nèi)容,你們對MySQL故障切換中事件調(diào)度器的注意事項有哪些有進一步的了解嗎?如果還想了解更多知識或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。