適用於 MySQL 的 Azure 資料庫彈性伺服器中的錯誤記錄檔 (預覽)
適用於:適用於 MySQL 的 Azure 資料庫 - 彈性伺服器
適用於 MySQL 的 Azure 資料庫 - 彈性伺服器中,可讓使用者設定和存取錯誤記錄檔。 MySQL 中的錯誤記錄檔會在伺服器啟動和關機期間收集診斷訊息,並在伺服器執行時收集有助於主動疑難排解的資訊。 如需 MySQL 錯誤記錄檔的詳細資訊,請參閱 MySQL 文件的 錯誤記錄檔 區段。 在 [預覽] 階段下,只在 [伺服器記錄] 底下提供錯誤記錄檔,無法將錯誤記錄檔發出至 Azure 診斷記錄。
在適用於 MySQL 的 Azure 資料庫 - 彈性伺服器中,在 Azure 入口網站中的伺服器記錄檔底下啟用錯誤記錄檔,會使用語法 mysql-error-servername-timestamp.log 在多個檔案名稱中記錄詳細資料。 在檔案名稱中,已附加與產生檔案時相關聯的時間戳記 (GMT/UTC),識別記錄項目記錄的特定時間。 如需詳細資訊,請參閱 伺服器記錄保留。
開啟錯誤記錄檔 (預覽)
使用者可以透過伺服器記錄功能存取和設定適用於 MySQL 的 Azure 資料庫 - 彈性伺服器中的錯誤記錄檔,此功能可以使用 Azure 入口網站 或 Azure CLI 來啟用。 啟用此功能之後,MySQL 彈性伺服器會開始擷取事件,並將其寫入在活動發生時儲存的一系列檔案。
若要啟用錯誤記錄檔,請執行下列步驟。
在 Azure 入口網站中,瀏覽至您的彈性伺服器,然後在 [監視] 底下選取 [伺服器記錄]。
在 [伺服器記錄] 底下,選取 [啟用] 核取方塊,以啟用伺服器記錄功能
在 [選取要啟用的記錄] 底下,選取 [錯誤記錄檔] 核取方塊。
選取 [儲存] 以繼續進行部署。
您也可以在適用於 MySQL 的 Azure 資料庫彈性伺服器上啟用錯誤記錄檔,方法是透過 [伺服器參數] 窗格或 Azure CLI 啟用名為 「error_server_log_file」 的伺服器參數。
選取 [伺服器記錄] 窗格中的 [啟用] 核取方塊,以確定已啟動 伺服器記錄功能。 或者,將伺服器參數「log_output」設定為 FILE,以啟用伺服器記錄。 無法執行上述任一動作,會導致您的適用於 MySQL 的 Azure 資料庫彈性伺服器無法啟用 FILE 記錄。
存取錯誤記錄檔
您可以下載錯誤記錄檔,以進一步分析適用於 MySQL 的 Azure 資料庫彈性伺服器。 若要下載記錄,請在 Azure 入口網站中瀏覽至 [伺服器記錄] 區段,然後選取 [錯誤記錄檔] 索引標籤,如下所示。
在 [名稱] 下選取您要下載的記錄檔,然後在 [動作] 下選取 [下載]。
若要一次下載多個記錄檔,請在 [名稱] 底下選取您要下載的檔案,然後選取 [下載]。
使用 Azure CLI 存取錯誤記錄檔
您可以依照下列命令,從彈性伺服器列出伺服器記錄。
az mysql flexible-server server-logs list --resource-group <myresourcegroup> --server-name <server_name> --out table
若要將提及的伺服器記錄下載到您目前的目錄,請使用下列命令:
az mysql flexible-server server-logs download --resource-group <myresourcegroup> --server-name <server_name> --name <mysql-error-<server_name>-<timestamp>.log>
如需詳細資訊,請參閱 如何透過 Azure 入口網站或透過 Azure CLI 下載伺服器記錄檔。
伺服器記錄保留下的錯誤記錄檔
針對適用於 MySQL 的 Azure 資料庫 - 彈性伺服器啟用記錄時,記錄在建立之日起最多七天內可用。 如果可用記錄的大小總計超過 7 GB,則除非有空間可用,否則會刪除最舊檔案。 伺服器記錄的 7 GB 儲存體限制是免費的,且無法擴充。 記錄會每隔 24 小時或 500 MB 輪替一次 (視何者先到達)。 重要的是,您可以在輪替之前先下載記錄,確保它們能夠在保留期間內的任何時間點存取有價值的伺服器記錄。 如需各種記錄類型之記錄輪替排程和儲存體限制的詳細資訊,請參閱 伺服器記錄保留上的文件。
處理個人標識資訊 (PII) 和敏感數據
在 Azure MySQL 彈性伺服器中,我們會排定數據的安全性優先順序。 因此,由於安全性原因,錯誤記錄檔中的任何個人標識資訊(PII)或敏感數據,例如主機名、IP 位址、使用者名稱和資料庫名稱,會進行哈希處理。 這表示,雖然您可以從錯誤記錄中深入瞭解伺服器的作業狀態和潛在問題,但無法直接存取可能危害伺服器安全性的特定詳細數據。 不過,如果您需要有關錯誤的詳細資訊,例如通常會列印用戶名稱的「拒絕存取」錯誤,您可以在 Azure MySQL 彈性伺服器的稽核記錄中找到此資訊。 稽核記錄可讓您更細微地檢視伺服器上的活動和交易,讓您更有效率地進行疑難解答和解決問題。
如需如何存取及解譯稽核記錄的詳細資訊,請參閱 官方檔。
常見問題集
問: 我的錯誤記錄檔包含註釋 (如圖所示的),這代表什麼意思?
[Note] [Server] Access denied for user ''@'xx.xx.xx.X' (using password: NO).
答: 此註釋指出嘗試連線到 MySQL 伺服器失敗,因為驗證詳細資料不正確或遺失。 具體來說,提供的用戶名稱是空的(''@'xx.xx.xx.X'),而且沒有輸入密碼 (使用密碼: NO)。 此註釋可能表示有未經授權的嘗試存取您的資料庫。 如果您的伺服器可公開存取,它仍會對網際網路公開,而且可能是未經授權存取嘗試的目標。 若要增強適用於 MySQL 的 Azure 資料庫彈性伺服器的安全性,使用防火牆規則停用公用存取 或 限制存取。。