集群復制
- 數(shù)據(jù)安全:復制是MySQL多個節(jié)點之間實現(xiàn)數(shù)據(jù)同步的重要機制,主要用于搭建高可用實例主從節(jié)點以及提供多個只讀從節(jié)點提高讀擴展能力。節(jié)點之間的數(shù)據(jù)是否最終一致對于高可用方案是否生效,只讀實例讀取的數(shù)據(jù)是否正確有著嚴重影響。從機執(zhí)行show slave status可以獲取從機的復制狀態(tài),Slave_IO_Running和Slave_SQL_Running分別表示IO和SQL線程是否正常運行,如果不正常,則應及時處理。參數(shù)relay_log_recovery和relay_log_info_repository影響從節(jié)點宕機重啟后,與主機的復制位置是否正確,如果位置錯誤,則可能導致數(shù)據(jù)錯誤。
- 復制性能:復制延遲經(jīng)常用來評估復制性能是否滿足業(yè)務需求。Show slave status的Seconds behind master字段標識了從機落后主機的延遲時間。如果延遲較長,則會影響高可用實例主從切換的時間以及只讀從節(jié)點是否能夠及時讀到最新數(shù)據(jù)。通過使用并行復制技術可以提高從節(jié)點的復制性能。MySQL 5.6提供了基于Database級別的并行復制,通過slave_parallel_workers 設置并行線程數(shù);MySQL 5.7提供了基于LOGICAL_CLOCK的并行復制, 主機上同一個Group提交的binlog中包含事務在從機并行執(zhí)行,相比database,具備更高的并發(fā)性,除了設置slave_parallel_workers,還需要將slave-parallel-type設置為LOGICAL_CLOCK。slave_preserve_commit_order=1可以確保從機并行執(zhí)行的事務按序提交。同時從機的log_bin和log_slave_updates參數(shù)必須同時開啟。
網(wǎng)易蜂巢智能數(shù)據(jù)庫健康診斷系統(tǒng)
使用網(wǎng)易蜂巢的開發(fā)者,可以使用平臺提供的智能健康診斷系統(tǒng)對數(shù)據(jù)庫服務中的關系數(shù)據(jù)庫實例進行自動的健康檢查。檢查內容覆蓋6個大類,22個子項,檢查結束后根據(jù)檢查結果,會自動生成健康指數(shù),開發(fā)者根據(jù)健康指數(shù),可以快速判斷系統(tǒng)存在的風險嚴重程度,同時平臺提供了該分數(shù)在所有實例的健康檢查中的排名。
有風險的項目平臺會使用橙色標識,開發(fā)者點擊風險項目,會看到系統(tǒng)對該風險的詳細描述以及相應的修復建議。針對部分檢查內容,系統(tǒng)提供了一鍵自動修復功能。