操作場景
有讀寫分離需求的業務場景。
需要按照權重分發請求到后端只讀實例的場景。
連接數過多導致主實例負載過高的場景。
一主多備,備節點支持可讀的場景。
約束限制
數據庫版本: 5.7,8.0。
實例類型為:單機、一主一備、一主兩備。
開通數據庫代理服務時,數據庫狀態為運行中才可以開啟數據庫代理服務。
開通數據庫代理服務后,需要先設置代理服務和IP白名單。
配置代理服務時,需要滿足的條件是MySQL主實例和數據庫代理狀態同時為運行中。
配置IP白名單時,需要滿足的條件是MySQL主實例和數據庫代理狀態同時為運行中。
說明
如果控制臺提示“您當前數據庫實例對應的高可用組件版本暫不支持代理功能,如需使用代理功能請訂購新的數據庫實例”,是因為存量的實例(主要指2023年12月30日之前開通的實例)受底層高可用組件版本限制,如您需要使用代理功能請重新開通數據庫實例。
步驟一:開啟數據庫代理
在天翼云官網首頁的頂部菜單欄,選擇產品 > 數據庫 > 關系型數據庫 > 關系數據庫MySQL版,進入關系數據庫MySQL產品頁面。然后單擊管理控制臺,進入概覽頁面。
在左側導航欄,選擇MySQL > 實例管理,進入實例列表頁面。然后在頂部菜單欄,選擇區域和項目。
在實例列表中,單擊目標實例名稱,進入實例基本信息頁面。
單擊數據庫代理,進入數據庫代理頁面。
單擊立即開啟代理,進入關系數據庫MySQL版-數據庫代理服務頁面。
按需修改代理實例名稱,勾選我已經閱讀,理解并接受, 然后單擊下一步。
確認配置信息, 單擊立即創建。
等待服務開啟完成。
步驟二:配置MySQL數據庫代理服務
在天翼云官網首頁的頂部菜單欄,選擇產品 > 數據庫 > 關系型數據庫 > 關系數據庫MySQL版,進入關系數據庫MySQL產品頁面。然后單擊管理控制臺,進入概覽頁面。
在左側導航欄,選擇MySQL > 實例管理,進入實例列表頁面。然后在頂部菜單欄,選擇區域和項目。
在實例列表中,單擊目標實例名稱,進入實例基本信息頁面。
單擊數據庫代理,進入數據庫代理頁面。
在讀寫規則選項下,單擊設置。
在對話框內,選擇需要的選項進行設置。
注意
對于可以處理讀寫請求的主節點,如果主實例的主節點權重設置為0,則不會處理任何讀寫請求,將影響您的寫入操作。
建議將主節點權重設置為非0值,其他備節點權重設置相對較大值以分擔讀請求。
當您新創建一個賬號后,馬上通過數據庫代理使用新賬號連接的時候,會提示拒接訪問。是因為定時任務同步需要大約2-3分鐘的時間導致的,請您2-3分鐘后再嘗試連接即可。
參數 說明 讀寫屬性 設置讀寫方式。
讀寫(讀寫分離)(默認):同時連接主實例和只讀實例(或備節點),可以接受寫請求。
連接池 代理連接地址設置的連接池類型:
事務級連接池:適用于總連接數比較多(如連接數上萬)的場景。
會話級連接池:適用于短連接場景。
延遲閾值 只讀實例或備節點同步主實例數據時允許的最長延遲時間。若一個節點的延遲時間超過該閾值,讀請求不會轉發至該節點。 事務拆分 是否開啟事務拆分功能。事務拆分能夠將事務內的讀請求轉發到只讀實例或者備節點,降低主實例負載。
默認為關閉 。
讀寫分離權重分配 實例的讀權重越高,處理的讀請求越多。例如,假設實例有1個主節點和3個備節點(包含只讀實例),讀權重分別為100、100、200和200,則表示主節點、3個備節點按照1:1:2:2的比例處理讀請求。
系統分配:系統根據實例規格自動分配各個節點的讀權重。后續該主節點下新增的只讀節點不會自動設置權重,需要手動重新配置加入到讀寫分離鏈路中。更多信息請參見系統權重分配規則。
自定義:手動設置各個節點的讀權重,權重輸入范圍為0-100000,且必須是100的整數倍。后續該主節點下新增只讀節點的讀權重默認為0,需要您手動配置。
說明
分配權重展示的是主節點和備節點(包含只讀實例),例如:一主兩備實例,則展示三個節點,用于配置權重。
單擊確定,等待配置生效。
步驟三:配置IP白名單
在天翼云官網首頁的頂部菜單欄,選擇產品 > 數據庫 > 關系型數據庫 > 關系數據庫MySQL版,進入關系數據庫MySQL產品頁面。然后單擊管理控制臺,進入概覽頁面。
在左側導航欄,選擇MySQL > 實例管理,進入實例列表頁面。然后在頂部菜單欄,選擇區域和項目。
在實例列表中,單擊目標實例名稱,進入實例基本信息頁面。
單擊IP白名單,進入白名單管理頁面。
單擊添加白名單或者修改已有分組。
修改或者添加IP,多個IP通過逗號分隔。
單擊確認。
從源IP訪問數據庫確認是否有連接報錯。
說明
開啟數據庫代理后,若進行了系列升級、遷移可用區等導致實例的節點信息發生變更的操作,則需要在數據庫代理頁面重新設置節點權重,以刷新后端的節點信息。