mysql 自定义序列号_在mysql中怎样设置,才能自动添加序列号
事件發生的線程ID(THREAD_ID)
活動名稱(EVENT_NAME)
起止時間戳以及事件的總持續時間(TIMER_START,TIMER_END 和 TIMER_WAIT)
在事件停止之前完成的工作單位和預估工作單位(WORK_COMPLETED,WORK_ESTIMATED)
因此,當自動重新加入過程開始時,它將在performance schema中注冊一個名為“stage / grouprpl / Undergoing auto-rejoinprocedure”的事件。使用表performance_schema.events_stage_current,??performance_schema.events_stages_summary_global_by_event_name和performance_schema.events_stages_history_long我們可以觀察到以下內容:
是否正在進行自動重新加入程序
到目前為止,已經減少重試的次數
直到下一次重試的估計剩余時間
自動重新加入過程狀態
可以通過過濾包含“auto-rejoin”字符串的活動事件來查找自動重新加入過程狀態(即,是否正在進行):
SELECT COUNT(*) FROM performance_schema.events_stages_current
WHERE EVENT_NAME LIKE '%auto-rejoin%';
COUNT(*)
1
查詢結果存在,證明服務器上運行了自動重新加入過程。
到目前為止的重試次數
如果正在進行自動重新加入程序,我們可以通過選擇階段事件上的工作單元數來檢查到目前為止嘗試的重試次數:
SELECT WORK_COMPLETED FROM performance_schema.events_stages_current WHERE
EVENT_NAME LIKE '%auto-rejoin%';
WORK_COMPLETED
1
在這個例子中,到目前為止只有一次嘗試。
預計到下次重試的剩余時間
在每次重新加入嘗試之間,服務器將處于 5 分鐘的可中斷睡眠中。 重新加入嘗試直到成功或失敗之間的時間是無法估計的。 因此,為了粗略估計剩余時間,我們可以將到目前為止嘗試的重試次數乘以 5 分鐘,并減去到目前為止的階段事件所花費的時間,以估計我們還需要多長時間:
SELECT (300.0 - ((TIMER_WAIT*10e-12) - 300.0 * num_retries)) AS time_remaining FROM
(SELECT COUNT(*) - 1 AS num_retries FROM
performance_schema.events_stages_current WHERE EVENT_NAME LIKE '%auto-rejoin%') AS T,
performance_schema.events_stages_current WHERE EVENT_NAME LIKE '%auto-rejoin%';
time_remaining
30.0
所以在這個例子中,在下一次重新加入之前還有 30 秒。注意性能模式表中的所有時間記帳都以微秒精度保持,因此我們將 TIMER_WAIT 縮放為秒。
使用自動重新加入與驅逐超時的權衡
到目前為止,在這篇文章中我們只關注自動重新加入。實際上,有兩種不同的方法可以實現離開組的成員的重新加入:
設置自動重新加入嘗試次數來實現自動重新加入
設置該成員的驅逐超時時間然后配合手動干預
能有延緩刪除組內可疑成員,并且如果配置為足夠長的驅逐超時時間,則增加了重新建立連接的機會,再次與組進行交互。
雖然這兩個功能實現了相同的目標,但它們的工作方式是不同的,并且需要權衡。通過使用驅逐超時,您可以維護組中可疑的成員,其缺點是您無法添加或刪除成員或選擇新的主機。如果通過使用自動重新加入,該成員將不再是該組的正常組員,將保持在 superreadonly 模式,直到重新加入該組。但在此期間,重新加入成員的同步舊數據的可能性將增加。自動重新加入過程可監控,而驅逐超時不是真正可監控的。
所以,總結一下:
驅逐超時的優點
- 該成員一直在該組內
- 可能更適合足夠小的網絡故障
驅逐超時的缺點
- 在懷疑某個成員時,無法在該組上添加/刪除成員
- 在懷疑某個成員時,無法選擇新的主機
- 您無法監控此過程
自動重新加入的優點
- 該組將在沒有重新加入成員的情況下運行,您可以添加/刪除成員并選擇新的主機
- 您可以監控該過程
自動重新加入的缺點
- 您增加了重新加入成員上過時讀取的可能性
- 可能不適合足夠小的網絡故障
總而言之,我從啟用自動重新加入中獲得了什么?
通過啟用自動重新加入,您可以減少對MySQL實例的手動干預的需要。您的系統
更加適應瞬間網絡故障,同時滿足對容錯性和高可用的保證。
摘要
我們引入了一個名為group_replication_autorejoin_tries的新系統變量,允許用戶設置 MGR 成員在被驅逐或與組的大多數人失去聯系后嘗試重新加入組的次數。
默認情況下,此自動重新加入過程處于關閉狀態。它能幫助用戶在面對瞬間網絡故障時避免對 MGR 成員進行手動干預。
總結
以上是生活随笔為你收集整理的mysql 自定义序列号_在mysql中怎样设置,才能自动添加序列号的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java 进程崩溃_java程序崩溃自启
- 下一篇: java 随机 数字 字母组合_java