sys.dm_tran_persistent_version_store_stats (Transact-SQL)
适用于: SQL Server 2019 (15.x)
Azure SQL 数据库
Azure SQL 托管实例
返回加速数据库恢复 (ADR) 持久版本存储 (PVS) 指标的信息。
返回的表
列名称 | 数据类型 | 描述 |
---|---|---|
database_id |
int | 此行的 database_id 。在 Azure SQL 数据库中,这些值在单一数据库或弹性池中是唯一的,但在逻辑服务器中不是唯一的。 |
pvs_filegroup_id |
smallint | 托管 PVS 版本存储的文件组。 |
persistent_version_store_size_kb |
bigint | PVS 中行外版本的大小(以 KB 为单位)。 不包括行中存储的行版本的大小。 有关详细信息,请参阅持久性版本存储(PVS)使用的空间。 |
online_index_version_store_size_kb |
bigint | 联机索引重新生成期间使用的特殊版本存储大小的大小(以 KB 为单位)。 |
current_aborted_transaction_count |
bigint | 数据库中中止的事务数。 有关详细信息,请参阅 sys.dm_tran_aborted_transactions 。 |
oldest_active_transaction_id |
bigint | 最早的活动事务的事务 ID。 |
oldest_aborted_transaction_id |
bigint | 最早中止事务的事务 ID。 如果 PVS 清理器无法删除中止的事务,则此值反映最早的值。 |
min_transaction_timestamp |
bigint | 通过快照扫描获取的系统中的最小有用时间戳。 |
online_index_min_transaction_timestamp |
bigint | 系统中用于在联机索引生成期间保存 PVS 清理的最小有用时间戳。 |
secondary_low_water_mark |
bigint | 针对可读辅助数据库的查询聚合的低水印。 该值是事务 ID,可与 oldest_active_transaction_id 和 oldest_aborted_transaction_id 匹配。 |
offrow_version_cleaner_start_time |
datetime2(7) | 非行 PVS 清理过程的最后一个开始时间。 |
offrow_version_cleaner_end_time |
datetime2(7) | 行外 PVS 清理过程的最后结束时间。 如果开始时间具有值,但结束时间没有,则意味着 PVS 清理正在此数据库上进行。 |
aborted_version_cleaner_start_time |
datetime2(7) | 上次中止的事务扫描的开始时间戳。 |
aborted_version_cleaner_end_time |
datetime2(7) | 上次中止事务扫描的结束时间戳。 如果开始时间具有值,但结束时间没有,则意味着 PVS 清理正在此数据库上进行。 |
pvs_off_row_page_skipped_low_water_mark |
bigint | 清理期间跳过的页数,因为辅助读取查询中会保留。 |
pvs_off_row_page_skipped_transaction_not_cleaned |
bigint | 由于事务中止,清理期间跳过的页数。 请注意,此值不会反映从中止的事务中保留的 PVS,因为版本清理器对中止的事务版本清理使用最小阈值。 排查大型 PVS 问题时,可以忽略。 |
pvs_off_row_page_skipped_oldest_active_xdesid |
bigint | 由于最旧的活动事务,清理期间跳过的页数。 |
pvs_off_row_page_skipped_min_useful_xts |
bigint | 由于长时间的快照扫描,清理期间跳过的页数。 |
pvs_off_row_page_skipped_oldest_snapshot |
bigint | 由于联机索引重新生成活动,清理期间跳过的页数。 |
pvs_off_row_page_skipped_oldest_aborted_xdesid |
bigint | 由于最早中止的事务,清理期间跳过的页数。 反映清理期间跳过的页面数,因为它们包含中止事务的行版本。 适用于: SQL Server 2022(16.x)及更高版本。 |
权限
对于 SQL Server 和 SQL 托管实例,需要 VIEW SERVER PERFORMANCE STATE
权限。
在 SQL 数据库“基本”、“S0”和“S1”服务目标中,对于“弹性池”中的数据库,服务器管理员帐户、Microsoft Entra 管理员帐户或 ##MS_ServerPerformanceStateReader##
服务器角色中的成员身份为必填项。 对于所有其他 SQL 数据库服务目标,需要数据库的 VIEW DATABASE PERFORMANCE STATE
权限或 ##MS_ServerPerformanceStateReader##
服务器角色中的成员身份。
相关内容
- 加速数据库恢复 的最佳做法
- 监视和排查加速数据库恢复 问题
- 加速数据库恢复
- 管理加速数据库恢复