2012-04-16 53 views
2

我們遇到了在單個數據庫(SQL Server 2008 R2)中執行DROP USER需要很長時間的問題。它似乎有波動,但需要15到30秒。沒有任何DDL觸發器作用於用戶相關事件。「DROP USER」最多需要30秒

爲了讓事情變得更奇怪,這隻發生在服務器上的單個數據庫中,在其他數據庫(更大,具有相同的DDL觸發器)上,DROP USER命令是即時的。

有沒有其他人遇到過類似的事情,如果你有,你能找出原因嗎?

+2

您是否使用了Profiler?通常情況下,鎖定用戶在systable – hkf 2012-04-16 06:50:26

+0

我很難想象用例在哪裏,這很重要。你爲什麼需要這個速度很快? – 2012-04-16 06:53:57

+0

這是什麼語法? DROP USER ..用戶是一個表嗎? – Baz1nga 2012-04-16 06:59:15

回答

3

復活古代線程;我的同事搞清楚了。問題與正在運行的服務代理有關。以下聲明修復了此問題:

ALTER DATABASE dbName SET NEW_BROKER WITH ROLLBACK IMMEDIATE 
0

您確定您沒有DROP_USER事件的DDL觸發器嗎?

+0

我們沒有,罪魁禍首是一個正在運行的服務經紀人。但是,謝謝你的建議。 :-) – Cryovat 2012-10-18 09:01:18

相關問題