使用 Azure CLI 在 適用於 MariaDB 的 Azure 資料庫 中設定伺服器參數
重要
適用於 MariaDB 的 Azure 資料庫 位於淘汰路徑上。 強烈建議您移轉至 適用於 MySQL 的 Azure 資料庫。 如需移轉至 適用於 MySQL 的 Azure 資料庫 的詳細資訊,請參閱 適用於 MariaDB 的 Azure 資料庫 發生什麼事?。
您可以使用 Azure CLI,Azure 命令行公用程式,列出、顯示及更新 適用於 MariaDB 的 Azure 資料庫 伺服器的組態參數。 引擎組態的子集會在伺服器層級公開,並可加以修改。
注意
伺服器參數可以在伺服器層級全域更新、使用 Azure CLI、PowerShell 或 Azure 入口網站。
必要條件
若要逐步執行本操作指南,您需要:
- 適用於 MariaDB 的 Azure 資料庫 伺服器
- Azure CLI 命令行公用程式,或在瀏覽器中使用 Azure Cloud Shell。
列出 適用於 MariaDB 的 Azure 資料庫 伺服器的伺服器組態參數
若要列出伺服器中的所有可修改參數及其值,請執行 az mariadb server configuration list 命令。
您可以列出資源群組 myresourcegroup 下伺服器 mydemoserver.mariadb.database.azure.com 的伺服器組態參數。
az mariadb server configuration list --resource-group myresourcegroup --server mydemoserver
如需每個所列參數的定義,請參閱伺服器系統變數上的 MariaDB 參考一節。
顯示伺服器組態參數詳細數據
若要顯示伺服器特定組態參數的詳細數據,請執行 az mariadb server configuration show 命令。
此範例顯示資源群組 myresourcegroup 下伺服器 mydemoserver.mariadb.database.azure.com slow_query_log伺服器組態參數的詳細數據。
az mariadb server configuration show --name slow_query_log --resource-group myresourcegroup --server mydemoserver
修改伺服器組態參數值
您也可以修改特定伺服器組態參數的值,以更新 MariaDB 伺服器引擎的基礎組態值。 若要更新組態,請使用 az mariadb server configuration set 命令。
若要更新資源群組 myresourcegroup 下伺服器 mydemoserver.mariadb.database.azure.com slow_query_log伺服器組態參數。
az mariadb server configuration set --name slow_query_log --resource-group myresourcegroup --server mydemoserver --value ON
如果您想要重設組態參數的值,請省略選擇性 --value
參數,而服務會套用預設值。 在上述範例中,看起來會像這樣:
az mariadb server configuration set --name slow_query_log --resource-group myresourcegroup --server mydemoserver
此程式代碼會將 slow_query_log 組態重設為預設值 OFF。
未列出設定參數
如果您想要更新的伺服器參數未列在 Azure 入口網站 中,您可以選擇性地使用 init_connect
在連接層級設定 參數。 這會設定每個連線到伺服器之用戶端的伺服器參數。
更新資源群組 myresourcegroup 下伺服器 mydemoserver.mariadb.database.azure.com init_connect伺服器組態參數,以設定字元集等值。
az mariadb server configuration set --name init_connect --resource-group myresourcegroup --server mydemoserver --value "SET character_set_client=utf8;SET character_set_database=utf8mb4;SET character_set_connection=latin1;SET character_set_results=latin1;"
使用時區參數
填入時區數據表
您可以從 MariaDB 命令行或 MariaDB Workbench 等工具呼叫 mysql.az_load_timezone
預存程式,以填入您伺服器上的時區數據表。
注意
如果您是從 MariaDB Workbench 執行 mysql.az_load_timezone
命令,您可能需要先使用 SET SQL_SAFE_UPDATES=0;
關閉安全更新模式。
CALL mysql.az_load_timezone();
重要
您應該重新啟動伺服器,以確保已正確填入時區數據表。 若要重新啟動伺服器,請使用 Azure 入口網站 或 CLI。
若要檢視可用的時區值,請執行下列命令:
SELECT name FROM mysql.time_zone_name;
設定全域層級時區
您可以使用 az mariadb server configuration set 命令來設定全域層級時區。
下列命令會將資源群組 myresourcegroup 下伺服器 mydemoserver.mariadb.database.azure.com time_zone伺服器組態參數更新為 US/Pacific。
az mariadb server configuration set --name time_zone --resource-group myresourcegroup --server mydemoserver --value "US/Pacific"
設定會話層級時區
您可以從 MariaDB 命令行或 MariaDB Workbench 等工具執行 SET time_zone
命令,以設定工作階段層級時區。 下列範例會將時區設定為 美國/太平洋 時區。
SET time_zone = 'US/Pacific';
請參閱日期和時間函式的 MariaDB 檔。
下一步
- 如何在 Azure 入口網站 中設定伺服器參數