共用方式為


伺服器組態:ADR cleaner retry timeout (min)

適用於: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 2022 (16.x) 中,清除器預設為單個線程,但可藉由設定 ADR Cleaner Thread Count 伺服器組態來進行多線程處理。

如果清除程式是單個線程,一次只能處理一個資料庫。 如果實例中有多個啟用了 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