服务器配置:ADR 清理器重试超时(分钟)
适用范围:SQL Server
从 SQL Server 2019 (15.x) 开始,加速数据库恢复 (ADR) 需要此配置设置。 清理器是定期唤醒并清除不需要的页面版本的异步过程。
有时在获取对象级别锁时,清理器因其扫描过程中与用户工作负荷发生冲突而遇到问题。 它在单独的列表中跟踪此类页。 “ADR cleaner retry timeout (min)
”可控制清理器在放弃扫描之前仅重试对象锁获取和清理所需的时间。 若要在中止的事务映射中保持已中止事务的增长,100% 成功地完成扫描是非常重要的。 如果在规定的超时时间内无法清除单独的列表,将放弃当前的扫描,并启动下一次扫描。
版本 | 默认值 |
---|---|
SQL Server 2019 (15.x) | 120 |
SQL Server 2022 (16.x) 及更高版本 | 15 |
备注
清理器在 SQL Server 2019 (15.x) 中是单线程的,因此一个 SQL Server 实例一次可以处理一个数据库。 如果实例中有多个启用了 ADR 的用户数据库,则不要将超时增加到一个较大的值。 当另一个数据库发生重试时,这样做可能会延迟对一个数据库的清理。
已知问题
对于 SQL Server 2019 (15.x) CU 12 及早期版本,此值可设置为 0
。 建议使用本文中的示例手动将值重置为 120
,这是设计的默认值。
示例
下面的示例将清理器重试超时设置为默认值。
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
EXEC sp_configure 'ADR cleaner retry timeout', 120;
RECONFIGURE;
GO
示例
下面的示例将清理器重试超时设置为默认值。
EXEC sp_configure 'show advanced options', 1;
RECONFIGURE;
GO
EXEC sp_configure 'ADR cleaner retry timeout', 15;
RECONFIGURE;
GO