Aurora 我的SQL等待事件 - Amazon Aurora

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

Aurora 我的SQL等待事件

以下是 Aurora My 的一些常見等待事件SQL。

注意

如需使用等待事件調整 Aurora 我的SQL效能的相關資訊,請參閱使用等待事件調校 Aurora MySQL

如需 My SQL wait 事件中使用之命名慣例的相關資訊,請參閱我的SQL文件中的效能結構描述儀器命名慣例

cpu

準備好執行的作用中連線數目一直高於的數目vCPUs。如需詳細資訊,請參閱cpu

io/aurora_redo_log_flush

工作階段正在將資料保留至 Aurora 儲存體。通常,此等待事件適用於 Aurora My 中的寫入 I/O 作業SQL。如需詳細資訊,請參閱io/aurora_redo_log_flush

io/aurora_respond_to_client

查詢處理已完成,且結果正在傳回至應用程式用戶端的下列 Aurora 我的SQL版本:2.10.2 及更高版本的 2.10 版本、2.09.3 及更高版本的 2.09 版本,以及 2.07.7 及更高版本的 2.07 版本。將資料庫執行個體類別的網路頻寬與傳回的結果集大小進行比較。此外,請檢查用戶端回應時間。如果用戶端沒有回應且無法處理封包,則可能會發生TCP封包丟棄和TCP重新傳輸。這種情況會對網路頻寬造成負面影響。在低於 2.10.2、2.09.3 和 2.07.7 的版本中,等待事件錯誤地包含閒置時間。若要了解如何在此等待重要時調整資料庫,請參閱 io/aurora_respond_to_client

io/file/csv/data

線程正在以逗號分隔值(CSV)格式寫入表。檢查您的CSV餐桌使用情況。此事件通常是因為資料表上設定 log_output

io/file/sql/binlog

執行緒正在等待將寫入至磁碟的二進位日誌 (binlog) 檔案。

io/重新登錄_沖洗

工作階段正在將資料保留至 Aurora 儲存體。通常,此等待事件適用於 Aurora My 中的寫入 I/O 作業SQL。如需詳細資訊,請參閱io /重做日誌沖洗

io/socket/sql/client_connection

mysqld 程式忙於建立執行緒來處理傳入的新用戶端連線。如需詳細資訊,請參閱io/socket/sql/client_connection

io/table/sql/handler

引擎正在等待存取資料表。無論是在緩衝集區中快取資料,還是在磁碟上存取資料,都會發生此事件。如需詳細資訊,請參閱io/table/sql/handler

lock/table/sql/handler

此等候事件是一個資料表鎖定事件處理常式。如需效能結構描述中原子和分子事件的詳細資訊,請參閱我的文件中的效能結構描述原子和分子事SQL件。

synch/cond/innodb/row_lock_wait

多個資料操作語言 (DML) 陳述式會同時存取相同的資料庫資料列。如需詳細資訊,請參閱synch/cond/innodb/row_lock_wait

synch/cond/innodb/row_lock_wait_cond

多個DML語句在同一時間訪問相同的數據庫行。如需詳細資訊,請參閱synch/cond/innodb/row_lock_wait_cond

同步/連續/平方米/_ MDL 上下文:COND

執行緒正在等待資料表中繼資料鎖定。引擎使用這種類型的鎖定來管理資料庫結構描述的並行存取,並確保資料一致性。如需詳細資訊,請參閱 My SQL 文件中的最佳化鎖定作業。若要了解如何在此事件重要時調整資料庫,請參閱 synch/cond/sql/MDL_context::COND_wait_status

同步/連續/平方米/_ _:_ 完成 MYSQL BIN LOG COND

您已開啟二進位日誌。可能有很高的遞交輸送量、大量交易遞交,或複本讀取 Binlog。考慮使用多列陳述式或將陳述式綁定成一個交易。在 Aurora 中,使用全域資料庫而非二進位日誌複寫,或使用 aurora_binlog_* 參數。

synch/mutex/innodb/aurora_lock_thread_slot_futex

多個DML語句在同一時間訪問相同的數據庫行。如需詳細資訊,請參閱synch/mutex/innodb/aurora_lock_thread_slot_futex

synch/mutex/innodb/buf_pool_mutex

緩衝集區不夠大,無法容納工作資料集。或者,工作負載會從特定資料表存取頁面,這會導致緩衝集區中的爭用。如需詳細資訊,請參閱synch/mutex/innodb/buf_pool_mutex

synch/mutex/innodb/fil_mutex

程序正在等待存取資料表空間記憶體快取。如需詳細資訊,請參閱synch/mutex/innodb/fil_mutex

synch/mutex/innodb/fil_mutex

操作以一致或受控的方式IDs在 InnoDB 中檢查,更新,刪除或添加事務。這些作業需要 trx_sys 互斥呼叫,這是由效能結構描述偵測來追蹤。作業包括在資料庫啟動或關閉時管理交易系統、回復、復原清除、資料列讀取存取,以及緩衝集區載入。具有大量交易的高資料庫負載會導致此等待事件頻繁出現。如需詳細資訊,請參閱synch/mutex/innodb/fil_mutex

同步/互斥/神KEY話/_:: 緩存鎖 CACHE

keycache->cache_lock互斥鎖控制對我的ISAM表的密鑰緩存的訪問。雖然 Aurora My SQL 不允許使用「我的資料ISAM表」來儲存持續性資料,但它們是用來儲存內部暫存資料表。請考慮檢查 created_tmp_tablescreated_tmp_disk_tables 狀態計數器,因為在某些情況下,暫存資料表會在不再容納於記憶體時寫入至磁碟。

同步/互斥/平方米/_AS_FILE: _ 偏移 TABLE LOCK

開啟或建立資料表中繼資料檔案時,引擎會取得此互斥。當這個等待事件過於頻繁發生時,表示正在建立或開啟的資料表數目已爆增。

同步/互斥/平方米/_ _ _ _ _ _ _ 列FILE表 TABLE LOCK

在追蹤所開啟資料表的內部結構上執行 reset_sizedetach_contentsadd_contents 之類的作業時,引擎會取得此互斥。互斥會同步對清單內容的存取。當這個等待事件頻繁發生時,它表示先前存取的資料表集突然變更。引擎需要存取新的資料表或放下與先前存取之資料表相關的內容。

同步/共用/平方米/_開LOCK放

工作階段正在開啟的資料表數目超過資料表定義快取或資料表開啟快取的大小。增加這些快取的大小。如需詳細資訊,請參閱我的SQL開啟和關閉資料表的方式。

同步/共用/平方米/_表格緩LOCK存

工作階段正在開啟的資料表數目超過資料表定義快取或資料表開啟快取的大小。增加這些快取的大小。如需詳細資訊,請參閱我的SQL開啟和關閉資料表的方式。

同步/共用/平方米/ LOG

在此等候事件中,執行緒正在等待日誌鎖定。例如,一個執行緒可能會等待鎖定寫入至慢查詢日誌檔案。

同步/互斥/平方米/_ _MYSQL:_ 提交 BIN LOG LOCK

在此等候事件中,有一個執行緒正在等候取得欲提交至二進位日誌的鎖定。在具有非常高度變動率的資料庫上可能會發生二進位記錄爭用。根據您的 My 版本SQL,有一些鎖被用來保護二進制日誌的一致性和耐久性。在 RDS [My] 中SQL,二進位記錄會用於複寫和自動備份程序。在 Aurora My 中SQL,原生複寫或備份不需要二進位記錄。他們依預設為停用,但可以啟用並用於外部複寫或變更資料擷取。如需詳細資訊,請參閱 My SQL 文件中的二進位記錄

同步/互斥/平方米/_ _: MYSQL _: _ 執行緒量度 _ 集合 BIN LOG LOCK

如果開啟了二進位記錄,則在引擎將作用中傾印執行緒指標列印至引擎錯誤記錄日誌和內部作業映射時,其會取得此互斥。

同步/互斥/平方米/_ _: MYSQL _ 不活躍 _ 檔案 _ 映射 BIN LOG LOCK

如果開啟了二進位記錄,則在引擎新增至其中、從中刪除,或搜尋最新清單後面的完整 Binlog 檔案清單時,其會取得此互斥。

同步/互斥/平方米/_ _MYSQL:_ 緩存 BIN LOG LOCK

如果開啟了二進位記錄,引擎會在 Aurora Binlog IO 快取作業期間取得此互斥:配置、調整大小、釋放、寫入、讀取、清除和存取快取資訊。如果此事件經常發生,引擎會存取 Binlog 事件存放所在的快取。若要減少等待時間,請減少遞交。嘗試將多個陳述式分組成單一交易。

同步/互斥/平方米/_ _MYSQL:_ 日誌 BIN LOG LOCK

您已開啟二進位日誌。可能有很高的遞交輸送量、許多交易遞交,或複本讀取 Binlog。考慮使用多列陳述式或將陳述式綁定成一個交易。在 Aurora 中,使用全域資料庫而非二進位日誌複寫,或使用 aurora_binlog_* 參數。

同步/互斥/平方米/_SERVER:_ 同步 THREAD LOCK

互斥 SERVER_THREAD::LOCK_sync 是在排程、處理或啟動執行緒以進行檔案寫入期間取得的。過度發生此等待事件表示資料庫中的寫入活動增加。

同步/互斥/sql/TABLESPACES: 鎖

引擎會在下列資料表空間作業期間取得 TABLESPACES:lock 互斥:建立、刪除、截斷和延伸。過度發生此等待事件表示資料表空間作業頻率很高。範例是將大量資料載入至資料庫。

synch/rwlock/innodb/dict

在此等候事件中,執行緒在 InnoDB 資料字典保存的 rwlock (讀取寫入鎖定) 上進行等待。

synch/rwlock/innodb/dict_operation_lock

在此等候事件中,執行緒正在 InnoDB 資料字典操作上持有鎖定。

synch/rwlock/innodb/dict sys RW lock

同時觸發資料定義語言程式碼 (DCLs) 中的大量並行資料控制語言陳述式 (DDLs)。在常規應用程序活動DDLs期間減少應用程序的依賴關係。

synch/rwlock/innodb/index_tree_rw_lock

大量類似的資料操作語言 (DML) 陳述式會同時存取相同的資料庫物件。嘗試使用多列陳述式。此外,將工作負載分散到不同的資料庫物件上。例如,實作分割。

synch/sxlock/innodb/dict_operation_lock

同時觸發資料定義語言程式碼 (DCLs) 中的大量並行資料控制語言陳述式 (DDLs)。在常規應用程序活動DDLs期間減少應用程序的依賴關係。

synch/sxlock/innodb/dict_sys_lock

同時觸發資料定義語言程式碼 (DCLs) 中的大量並行資料控制語言陳述式 (DDLs)。在常規應用程序活動DDLs期間減少應用程序的依賴關係。

synch/sxlock/innodb/hash_table_locks

工作階段找不到緩衝集區中的頁面。引擎需要讀取檔案,或修改緩衝集區最近使用的最少 (LRU) 清單。考慮增加緩衝區快取大小,並改善相關查詢的存取路徑。

synch/sxlock/innodb/index_tree_rw_lock

許多類似的資料操作語言 (DML) 陳述式會同時存取相同的資料庫物件。嘗試使用多列陳述式。此外,將工作負載分散到不同的資料庫物件上。例如,實作分割。

如需有關疑難排解同步等待事件的詳細資訊,請參閱效能洞見中為什麼我的資SQL料庫執行個體顯示大量SYNCH等待等待等待事件的作用中工作階段? 。