適用於:適用於 MySQL 的 Azure 資料庫 - 彈性伺服器
適用於 MySQL 的 Azure 資料庫提供數個內建預存程式,以簡化和自動化進階資料庫管理工作。 這些預存程式可協助用戶設定功能,例如數據傳入複寫、復原記錄清除,以及有效率的外掛程式管理。
本文介紹適用於 MySQL 的 Azure 資料庫中可用的內建預存程式、其功能,以及如何使用這些預存程式。
目前可用的內建預存程式
1.資料傳入複寫管理
適用於 MySQL 的 Azure 資料庫提供預存程式來管理數據傳入複寫,包括啟動、停止、檢查狀態,以及重設複寫。
如需這些程序的詳細資訊,請參閱 如何設定適用於 MySQL 的 Azure 資料庫 - 彈性伺服器資料複寫。
2. 外掛程式管理
適用於 MySQL 的 Azure 資料庫支援 驗證密碼外掛程式,以強制執行密碼強度原則。 使用者可以使用下列預存程式來啟用或停用此外掛程式:
啟用驗證密碼外掛程式
CALL az_install_validate_password_plugin();
啟用外掛程式之後,您可以在 Azure 入口網站的 [伺服器參數] 頁面上檢視及設定相關參數。
停用驗證密碼外掛程式
CALL az_uninstall_validate_password_plugin();
此預存程序會移除外掛程式。
備註
- 針對 HA(高可用性)伺服器,這些預存程式必須先在 主 伺服器上執行,之後再執行 強制故障轉移,然後在新的主要複本上重新執行預存程式。
- 針對 複本伺服器,在主要伺服器上執行這些預存程式 不會 自動同步至複本伺服器。 在主要複本上執行它們之後,必須在每個複本上手動執行它們。
3.復原記錄清除
在某些情況下,您的復原記錄可能會變大,而且您可能想要清除它。 適用於 MySQL 的 Azure 資料庫提供預存程式,可協助您完成這項工作。
- 若要檢查您的資料表空間,請先執行下列命令。
SELECT NAME, FILE_SIZE, STATE FROM INFORMATION_SCHEMA.INNODB_TABLESPACES WHERE SPACE_TYPE = 'Undo' AND STATE = 'active' ORDER BY NAME;
- 如果您發現復原記錄很大,請呼叫下列命令來建立新的資料表空間。
目前,我們最多支援八個數據表空間,包括兩個預設的。 X 值必須介於 3 到 8 之間。 命令完成之後,新的數據表空間應該處於作用中狀態。call az_create_undo_tablespace(X)
- 執行下列命令以停用 innodb_undo_001 (預設值為一)。
然後等候 innodb_undo_001 的狀態變成空白 (這表示復原記錄檔已截斷)。call az_deactivate_undo_tablespace(1)
- 執行下列命令以啟動innodb_undo_001 (預設一個)。
然後等候 innodb_undo_001 的狀態變成使用中。call az_activate_undo_tablespace(1)
- 針對innodb_undo_002重複 1-4 個步驟。
- 執行
call az_deactivate_undo_tablespace(3);
以停用新建立的數據表空間。 等候狀態變成空白。 然後執行Call az_drop_undo_tablespace(3);
以卸除新建立的數據表空間。 您無法刪除預設的(innodb_undo_001,innodb_undo_002),只可刪除您所建立的檔案,例如在此範例中是x_undo_003。在卸除之前,請先停用x_undo_003,使其處於空白狀態。
結論
適用於 MySQL 的 Azure 資料庫提供內建預存程式,可簡化進階資料庫管理工作。 這些程式可讓使用者設定複寫、管理復原記錄,以及有效率地啟用外掛程式。 藉由套用這些工具,資料庫管理員可以增強效能、優化記憶體,並確保數據同步處理順暢。