概觀 - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

概觀

您可以監視下列類型的 的我的SQL記錄檔:

  • 錯誤日誌

  • 慢查詢日誌

  • 一般日誌

  • 稽核日誌

依預設會產SQLRDS生我的SQL。透過在資料庫參數群組中設定參數,產生慢查詢日誌和一般日誌。

的SQL錯誤日誌

的我SQL寫在mysql-error.log文件中的錯誤。每個記錄檔的名稱後面都會附加產生的小時 (inUTC)。日誌檔案也有時間戳記,可協助您判定日誌項目寫入的時間。

只有在啟動、關機以及遇到錯誤時,才SQL會寫入錯誤記錄檔的 「的版本」。SQL RDS資料庫執行個體可在未寫入新項目到錯誤日誌的情況下持續執行數小時或數日。若您沒有看到最近的項目,這是因為伺服器未遇到需寫入日誌項目的錯誤。

根據設計,系統會篩選錯誤日誌,以僅顯示未預期的事件,例如錯誤。不過,錯誤日誌還包含一些其他未顯示的資料庫資訊,例如查詢進度。因此即使沒有任何實際錯誤,但錯誤日誌的大小可能會因為在進行的資料庫活動而增加。雖然您可能會看到以位元組或 KB 為單位的錯誤記錄中的特定大小 AWS Management Console,但下載時可能會有 0 個位元組。

的我SQLmysql-error.log入磁盤每 5 分鐘。這會將日誌的內容追加到 mysql-error-running.log

RDS為我每小時SQL旋轉一次mysql-error-running.log文件。它會保留最近兩週產生的日誌。

注意

Amazon RDS 和 Aurora 之間的日誌保留期不同。

的SQL緩慢查詢和一般日誌

您可以將 的SQL慢速查詢記錄和一般記錄寫入檔案或資料庫資料表。若要這樣做,請在您的資料庫參數群組中設定參數。如需建立和修改資料庫參數群組的詳細資訊,請參閱 的參數組 RDS。您必須先設定這些參數 RDSAPI,才能在 Amazon RDS 主控台或使用 Amazon、Amazon 或檢視慢速查詢日誌或一般日誌 AWS SDKs。RDS CLI

您可以使用下列清單中SQLRDS的參數來控制我的SQL記錄的 My:

  • slow_query_log:若要建立慢查詢,請設為 1。預設為 0。

  • general_log:若要建立一般日誌,請設為 1。預設值為 0。

  • long_query_time:若要避免快速執行查詢記錄於慢查詢日誌中,請為需記錄之最短查詢執行時間指定一個值,以秒為單位。預設為 10 秒,最短時間為 0。如果 log_output =FILE,則可以指定轉到微秒解析度的浮點值。如果 log_output =TABLE,則必須指定具有第二個分辨率的整數值。只會記錄執行時間超過 long_query_time 值的查詢。例如,將 long_query_time 設為 0.1 可避免記錄任何在 100 毫秒內執行之查詢。

  • log_queries_not_using_indexes:若要將所有不使用索引的查詢記錄於慢查詢日誌中,請設為 1。系統會記錄不使用索引的查詢,即使其執行時間低於 long_query_time 參數的值。預設值為 0。

  • log_output option:您可為 log_output 參數指定下列其中一個選項。

    • TABLE(預設值) — 將一般查詢寫入mysql.general_log資料表,並將慢速查詢寫入mysql.slow_log資料表。

    • FILE— 將一般和慢速查詢記錄檔寫入檔案系統。

    • NONE— 停用記錄。

如需有關慢速查詢和一般記錄檔的詳細資訊,請移至我的SQL文件中的下列主題:

我的SQL稽核記錄

若要存取稽核記錄,資料庫執行個體必須使用含有選項 MARIADB_AUDIT_PLUGIN 的自訂選項群組。如需詳細資訊,請參閱MariaDB 稽核外掛程式支援 MySQL

[我的] 的記錄輪換和保留 RDS SQL

啟用記錄功能後,Amazon 會定期RDS輪換表格日誌或刪除日誌檔。此方法為預防措施,可降低大型日誌檔封鎖資料庫使用或影響效能的可能性。RDS對於我的SQL操作框旋轉和刪除,如下所示:

  • My SQL 慢速查詢記錄檔、錯誤記錄檔和一般記錄檔大小限制為資料庫執行個體配置的儲存空間不超過 2%。為保持此閾值,日誌會每小時自動輪換。我SQL刪除了兩週以上的日誌文件。若在移除舊日誌檔案後總日誌檔案大小仍超過閾值,將會從最舊的日誌檔案開始刪除,直到日誌檔案大小不再超過閾值為止。

  • 啟用 FILE 日誌記錄時,系統會每小時檢查日誌檔案,並刪除超過兩週的日誌檔案。在部分情況下,刪除後剩餘的總日誌檔大小可能超過資料庫執行個體配得之空間的 2% 閾值。於這些狀況中,最舊的日誌檔將遭刪除,直到日誌檔大小不再超過閾值。

  • TABLE 日誌記錄啟用時,在某些情況下,日誌資料表每 24 小時會輪換一次。在表格日誌使用的空間超過所配置儲存空間的 20% 時,就會發生輪換。如果所有日誌合併後的大小超過 10 GB 時,也會發生這種情況。若資料庫執行個體使用的空間總量高於資料庫執行個體配得之儲存空間的 90% 時,日誌輪換的閾值將會降低。在表格日誌使用的空間超過所配置儲存空間的 10% 時,就會輪換日誌表格。如果所有日誌合併後的大小超過 5 GB 時,也會轉換它們。您可訂閱 low_free_storage 事件,日誌表格輪換以釋放空間時就會通知您。如需詳細資訊,請參閱使用 Amazon RDS 事件通知

    輪換日誌表格時,目前日誌表格首先會複製到備份日誌表格。然後移除目前日誌表格中的項目。如果備份日誌資料表已存在,則其會在目前日誌資料表複製到備份之前刪除。如有需要,您可以查詢備份日誌資料表。mysql.general_log 資料表的備份日誌資料表名為 mysql.general_log_backupmysql.slow_log 資料表的備份日誌資料表名為 mysql.slow_log_backup

    您可以呼叫 mysql.general_log 程序來輪換 mysql.rds_rotate_general_log 表格。您可以呼叫 mysql.slow_log 程序來輪換 mysql.rds_rotate_slow_log 表格。

    表格日誌會在資料庫版本升級時輪換。

若要使用 Amazon RDS 主控台、Amazon RDS API、Amazon 或 AWS SDKs日誌 RDSCLI,請將log_output參數設定為FILE。就像我的SQL錯誤日誌一樣,這些日誌文件每小時旋轉一次。系統會保留在過去兩週內產生的日誌檔案。請注意,Amazon RDS 和 Aurora 之間的保留期不同。

重做日誌的大小限制

對RDS於我的SQL版本 8.0.32 及更低版本,此參數的默認值是 256 MB。此數量是由參數的預設值 (128 MB) 乘以innodb_log_file_size參數的預設值 (2) 而得出。innodb_log_files_in_group如需詳細資訊,請參閱為我的 Amazon RDS 設定參數的最佳實務SQL,第 1 部分:與效能相關的參數

從我RDS的SQL版本 8.0.33 開始,Amazon RDS 使用innodb_redo_log_capacity參數而不是參數。innodb_log_file_size該參數的 Amazon RDS 默認innodb_redo_log_capacity值是 2 GB。如需詳細資訊,請參閱我的文件中的 My SQL 8.0.30 中的SQL變更。