[SQL SERVER]停用鎖定擴大

[SQL SERVER]停用鎖定擴大

以前我寫過SQL Server鎖定擴大行為(預設),鎖定擴大基本上就是要減輕記憶體壓力,

但現在記憶體相當便宜,另外SQL Server普遍都64bit為主,

如果你現在系統和我一樣屬於高用量系統的話,

建議可以停用鎖定擴大,以利加強Concurrency,

我目前會針對熱資料表(讀寫比率很高)來停用鎖定擴大,

或是可以透過TF1224進行全域變更。

 

關閉資料表鎖定擴大

alter table t1 set (LOCK_ESCALATION=disable)
 
關閉資料庫鎖定擴大
dbcc traceon(1224,-1)

 

參考

[SQL SERVER][Performance]淺談鎖定擴大

Trace Flags (Transact-SQL)

Dynamics AX and SQL Server Trace Flags, Quick and Dirty