共用方式為


sys.dm_db_xtp_checkpoint_stats (Transact-SQL)

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體

傳回目前資料庫中記憶體內部 OLTP 檢查點作業的相關統計數據。 如果資料庫沒有記憶體內部 OLTP 物件, sys.dm_db_xtp_checkpoint_stats 則會傳回空的結果集。

如需詳細資訊,請參閱 In-Memory OLTP (記憶體中最佳化)

USE [In_Memory_db_name]
SELECT * FROM sys.dm_db_xtp_checkpoint_stats;  

SQL Server 2014 (12.x) 與較新版本大不相同,且在 SQL Server 2014 主題中會較低討論。

SQL Server 2016 (13.x) 和更新版本

下表描述 中的數據sys.dm_db_xtp_checkpoint_stats行,從 SQL Server 2016 (13.x) 開始

資料行名稱 類型 描述
last_lsn_processed bigint 控制器看到的最後一個 LSN。
end_of_log_lsn numeric(38) 記錄結尾的 LSN。
bytes_to_end_of_log bigint 控制器未處理的記錄位元組,對應至和end_of_log_lsn之間的last_lsn_processed位元組。
log_consumption_rate bigint 控制器的事務歷史記錄耗用量率(以 KB/秒為單位)。
active_scan_time_in_ms bigint 控制器在主動掃描事務歷史記錄時所花費的時間。
total_wait_time_in_ms bigint 未掃描記錄檔時,控制器的累計等候時間。
waits_for_io bigint 控制器線程所產生記錄 IO 的等候次數。
io_wait_time_in_ms bigint 控制器線程在記錄 IO 上等候的累計時間。
waits_for_new_log_count bigint 控制器線程產生新記錄檔所產生的等候次數。
new_log_wait_time_in_ms bigint 控制器線程等候新記錄檔的累計時間。
idle_attempts_count bigint 控制器轉換成閑置狀態的次數。
tx_segments_dispatched bigint 控制器所看見的區段數目,並分派至串行化程式。 區段是記錄的連續部分,可形成串行化單位。 它目前的大小為 1 MB,但未來可能會變更。
segment_bytes_dispatched bigint 自資料庫重新啟動后,控制器分派給串行化程式的位元組總數。
bytes_serialized bigint 資料庫重新啟動後串行化的位元組總數。
serializer_user_time_in_ms bigint 串行化程式在使用者模式中花費的時間。
serializer_kernel_time_in_ms bigint 串行化程式在核心模式中花費的時間。
xtp_log_bytes_consumed bigint 自資料庫重新啟動後所耗用的記錄位元組總數。
checkpoints_closed bigint 資料庫重新啟動后關閉的檢查點計數。
last_closed_checkpoint_ts bigint 上次關閉檢查點的時間戳。
hardened_recovery_lsn numeric(38) 從此 LSN 開始復原。
hardened_root_file_guid uniqueidentifier 因上次完成檢查點而強化之根檔案的 GUID。
hardened_root_file_watermark bigint 僅限內部。 最多讀取根檔案的有效程度(這隻是內部相關的類型 -- 稱為 BSN)。
hardened_truncation_lsn numeric(38) 截斷點的 LSN。
log_bytes_since_last_close bigint 最後一個接近目前記錄結尾的位元組。
time_since_last_close_in_ms bigint 自上次關閉檢查點以來的時間。
current_checkpoint_id bigint 目前會將新的區段指派給此檢查點。 檢查點系統是管線。 目前的檢查點是記錄檔中要指派的區段。 一旦達到限制,控制器就會釋放檢查點,並建立為目前的新檢查點。
current_checkpoint_segment_count bigint 目前檢查點中的區段計數。
recovery_lsn_candidate bigint 僅限內部。 關閉時 current_checkpoint_id 要挑選為復原的候選專案。
outstanding_checkpoint_count bigint 管線中等待關閉的檢查點數目。
closing_checkpoint_id bigint 關閉檢查點的識別碼。

串行化程式會以平行方式運作,因此一旦完成,檢查點就會是關閉線程所關閉的候選專案。 但是關閉線程一次只能關閉一個,而且必須依序關閉,因此關閉檢查點就是關閉線程正在處理的檢查點。
recovery_checkpoint_id bigint 要用於復原的檢查點標識碼。
recovery_checkpoint_ts bigint 復原檢查點的時間戳。
bootstrap_recovery_lsn numeric(38) 啟動程序復原 LSN。
bootstrap_root_file_guid uniqueidentifier 啟動程式根檔案的 GUID。
internal_error_code bigint 任何控制器、串行化程式、關閉和合併線程所看到的錯誤。
bytes_of_large_data_serialized bigint 已串行化的數據量。
db_in_checkpoint_only_mode bit True 是表示 如果資料庫處於記憶體內部 OLTP 檢查點專用模式。

SQL Server 2014 (12.x)

下表描述 中 sys.dm_db_xtp_checkpoint_statsSQL Server 2014 (12.x) 的數據行。

資料行名稱 類型 描述
log_to_process_in_bytes bigint 線程目前記錄序號 (LSN) 與記錄結尾之間的記錄位元元組數目。
total_log_blocks_processed bigint 自伺服器啟動後處理的記錄區塊總數。
total_log_records_processed bigint 自伺服器啟動後處理的記錄記錄總數。
xtp_log_records_processed bigint 伺服器啟動後所處理的記憶體內部 OLTP 記錄記錄總數。
total_wait_time_in_ms bigint 以毫秒為單位的累計等候時間。
waits_for_io bigint 記錄 IO 的等候次數。
io_wait_time_in_ms bigint 等候記錄 IO 的累計時間。
waits_for_new_log bigint 等候產生新記錄的數目。
new_log_wait_time_in_ms bigint 等候新記錄檔的累計時間。
log_generated_since_last_checkpoint_in_bytes bigint 自上次記憶體內部 OLTP 檢查點之後產生的記錄量。
ms_since_last_checkpoint bigint 上次記憶體內部 OLTP 檢查點之後的毫秒數。
checkpoint_lsn numeric (38) 與上次完成的記憶體內部 OLTP 檢查點相關聯的復原記錄序號 (LSN)。
current_lsn numeric (38) 目前正在處理的記錄檔記錄 LSN。
end_of_log_lsn numeric (38) 記錄結尾的 LSN。
task_address varbinary(8) SOS_Task的位址。 加入以 sys.dm_os_tasks 尋找其他資訊。

權限

需要資料庫的 VIEW DATABASE STATE 權限。

SQL Server 2022 和更新版本的權限

需要資料庫上的 VIEW DATABASE PERFORMANCE STATE 權限。