

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

# 存取 MariaDB 慢查詢日誌及一般日誌
<a name="USER_LogAccess.MariaDB.Generallog"></a>

您可在資料庫參數群組中設定參數，將 MariaDB 慢查詢日誌與一般日誌寫入至檔案或資料庫表格。如需建立和修改資料庫參數群組的詳細資訊，請參閱[Amazon RDS 的參數群組](USER_WorkingWithParamGroups.md)。您必須先設定這些參數，才可在 Amazon RDS 主控台中檢視慢查詢記錄或一般記錄，或者使用 Amazon RDS API、AWS CLI 或 AWS SDK 檢視。

您可以使用清單中的參數來控制 MariaDB 日誌：
+ `slow_query_log` 或 `log_slow_query`：若要建立慢速查詢日誌，請設為 1。預設值為 0。
+ `general_log`：若要建立一般日誌，請設為 1。預設值為 0。
+ `long_query_time` 或 `log_slow_query_time`：若要避免快速執行查詢記錄於慢速查詢日誌中，請為需記錄之最短查詢執行時間指定一個值，以秒為單位。預設為 10 秒，最短時間為 0。若 log\$1output = FILE，您可以指定以毫秒解析度為單位的浮點值。若 log\$1output = TABLE，您必須指定以秒為單位的整數值。只會記錄執行時間超過 `long_query_time` 或 `log_slow_query_time` 值的查詢。例如，將 `long_query_time` 或 `log_slow_query_time` 設為 0.1 可避免記錄任何在 100 毫秒內執行之查詢。
+ `log_queries_not_using_indexes`：若要將所有不使用索引的查詢記錄於慢查詢日誌中，請將此參數設為 1。預設為 0。將會記錄不使用索引的查詢，即使其執行時間低於 `long_query_time` 參數的值。
+ `log_output option`：您可為 `log_output` 參數指定下列其中一個選項：
  + **TABLE** (預設) – 將一般查詢寫入 `mysql.general_log` 表格，而慢查詢則寫入 `mysql.slow_log` 表格。
  + **FILE** – 同時將一般與慢查詢日誌寫入檔案系統中。日誌檔案每小時輪換。
  + **NONE**– 停用日誌記錄。

記錄啟用時，Amazon RDS 輪換表格日誌或以規律間隔來刪除日誌檔案。此方法為預防措施，可降低大型日誌檔封鎖資料庫使用或影響效能的可能性。`FILE` 與 `TABLE`​ 日誌記錄運用以下方式執行輪換與刪除：
+ 當 `FILE` 日誌記錄啟用時，每個小時將檢視日誌檔，而早於 24 小時前的日誌檔將會刪除。在部分情況下，刪除後剩餘的總日誌檔大小可能超過資料庫執行個體配得之空間的 2% 閾值。在這些情況中，最大的日誌檔將被刪除，直到日誌檔大小不再超過閾值。
+ 當 `TABLE` 日誌記錄啟用時，在某些情況下，日誌資料表每 24 小時會輪換一次。在表格日誌使用的空間超過所配置儲存空間的 20% 時，就會發生輪換。如果所有日誌合併後的大小超過 10 GB 時，也會發生這種情況。若資料庫執行個體使用的空間總量高於資料庫執行個體配得之儲存空間的 90% 時，日誌輪換的閾值將會降低。在表格日誌使用的空間超過所配置儲存空間的 10% 時，就會輪換日誌表格。如果所有日誌合併後的大小超過 5 GB 時，也會轉換它們。

  輪換日誌資料表時，目前日誌資料表會複製到備份日誌資料表，並移除目前日誌資料表中的項目。如果備份日誌資料表已存在，則其會在目前日誌資料表複製到備份之前刪除。如有需要，您可以查詢備份日誌資料表。`mysql.general_log` 資料表的備份日誌資料表名為 `mysql.general_log_backup`。`mysql.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 中同時記錄 `TABLE` 與 `FILE` 日誌輪換，並傳送通知給您。

若要從 Amazon RDS 主控台、Amazon RDS API、Amazon RDS CLI 或 AWS SDK 使用記錄，請將 `log_output` 參數設為 FILE。如同 MariaDB 錯誤日誌，這些日誌檔案也會每小時輪換一次。前 24 小時之間產生的日誌檔案將會保留。

如需有關慢查詢與一般日誌的詳細資訊，請參閱 MariaDB 文件中的下列主題：
+ [慢查詢日誌](http://mariadb.com/kb/en/mariadb/slow-query-log/)
+ [一般查詢日誌](http://mariadb.com/kb/en/mariadb/general-query-log/)