Sql-Server
在本地 CRM 2015 上啟用 RCSI
我們有 crm-2015 on-prem、inplace 和 running,當有人嘗試批量更新任何內容時,如果多個使用者正在閱讀這些活動,則會導致大量死鎖。
我們計劃開啟 RCSI。我已經在 DEV 上做過了。伺服器並經過測試,沒有得到任何鎖,但我知道這不是正確的,也是唯一的測試。
我在這裡向所有專家提出的問題是,
- 目前的 DB 大小為 40 GB,現在將該選項設置為 ON 有多難。
- 一旦我們打開,我們是否可以使用相同的過程關閉所有服務,僅使用一個活動事務創建 DB,然後執行 ALTER DB 命令並將設置選項設置為 OFF。
- 我還讀到一些程式碼更改需要但在現有應用程序中通知我們的開發人員更改程式碼的內容,或者最好執行我們正在執行的所有操作,看看是否有任何問題。
- 最後但我想這是最重要的,一旦我們打開tempdb 數據庫版本儲存清理 會自行發生還是我們必須打開,如果我們必須從哪裡開始?
請幫忙。
謝謝。
在沒有應用程序供應商和您自己的開發人員證明他們支持它的情況下,您不要在數據庫上啟用 RCSI,這一點至關重要。原因是所有讀取查詢的行為都會發生變化,但實際上不會以重放工作負載會檢測到的方式中斷。閱讀https://www.brentozar.com/archive/2013/01/implementing-snapshot-or-read-committed-snapshot-isolation-in-sql-server-a-guide/上的第 3 部分。
要回答您的具體問題:
- 開啟幾乎是瞬間的(假設只有一個數據庫連接)。
- 是的,關機同樣輕鬆。
- 往上看。
- 清理會自行發生。上面文章的第 2 節有一些事情需要考慮。