分享方式:


使用 Azure CLI 設定和存取慢速查詢記錄

適用於: 適用於 MySQL 的 Azure 資料庫 - 單一伺服器

重要

適用於 MySQL 的 Azure 資料庫單一伺服器位於淘汰路徑上。 強烈建議您升級至適用於 MySQL 的 Azure 資料庫彈性伺服器。 如需移轉至適用於 MySQL 的 Azure 資料庫彈性伺服器的詳細資訊,請參閱適用於 MySQL 的 Azure 資料庫 - 單一伺服器會發生什麼事?

您可以使用 Azure CLI (Azure 的命令列公用程式) 來下載適用於 MySQL 的 Azure 資料庫的慢速查詢記錄。

必要條件

若要逐步執行本作法指南,您需要︰

設定記錄

您可以採取下列步驟,設定伺服器以存取 MySQL 慢速查詢記錄檔:

  1. 將 [slow_query_log] 參數設定為 [ON],來開啟慢速查詢記錄。
  2. 使用 log_output 選取要將記錄輸出到的位置。 若要將記錄傳送至本機儲存體和 Azure 監視器診斷記錄,請選取 [檔案]。 若要只將記錄傳送至 Azure 監視器記錄,請選取 [無]
  3. 請調整其他參數,例如 [log_slow_admin_statements] 和 [log_slow_admin_statements]

若要了解如何透過 Azure CLI 設定這些參數的值,請參閱如何設定伺服器參數

例如,下列 CLI 命令會開啟慢速查詢記錄檔、將長時間查詢的時間設定為 10 秒,並且會關閉慢速管理陳述式的記錄。 最後,它會列出設定選項供您檢閱。

az mysql server configuration set --name slow_query_log --resource-group myresourcegroup --server mydemoserver --value ON
az mysql server configuration set --name log_output --resource-group myresourcegroup --server mydemoserver --value FILE
az mysql server configuration set --name long_query_time --resource-group myresourcegroup --server mydemoserver --value 10
az mysql server configuration set --name log_slow_admin_statements --resource-group myresourcegroup --server mydemoserver --value OFF
az mysql server configuration list --resource-group myresourcegroup --server mydemoserver

列出適用於 MySQL 的 Azure 資料庫伺服器之記錄

如果 [log_output] 設定為 [檔案],您可以直接透過伺服器的本機儲存體存取記錄。 若要列出伺服器的適用慢速記錄檔案,請執行 az mysql server-logs list 命令。

您可以針對資源群組 myresourcegroup 下的伺服器 mydemoserver.mysql.database.azure.com 列出記錄檔。 然後將記錄檔的清單導向名為 log_files_list.txt 的文字檔案。

az mysql server-logs list --resource-group myresourcegroup --server mydemoserver > log_files_list.txt

從伺服器下載記錄

如果 [log_output] 設定為 [檔案],您可以使用 az mysql server-logs download 命令,從伺服器下載個別的記錄檔。

使用下列範例,針對資源群組 myresourcegroup 下的伺服器 mydemoserver.mysql.database.azure.com,將特定的記錄檔下載至您的本機環境。

az mysql server-logs download --name 20170414-mydemoserver-mysql.log --resource-group myresourcegroup --server mydemoserver

下一步