2012-04-16 9 views
2

DROP USERを1つのデータベース(SQL Server 2008 R2)で実行すると非常に時間がかかる問題があります。それは変動するように見えますが、15から30秒のどこかにかかります。ユーザー関連のイベントに作用するDDLトリガーはありません。「DROP USER」が最大30秒かかる

これは見知らぬものですが、これはサーバー上の単一のデータベース、他のデータベース(同じDDLトリガーを持つより大きい)でのみ発生し、DROP USERコマンドは瞬間的です。

誰かに似たようなものが発生しましたか?そうした場合は原因を突き止めることができましたか?

+2

プロファイラで見たことがありますか?一般的には、シスタブル内でユーザーにロックされているものがあります – hkf

+0

私はこの問題が重要なユースケースを想像しています。なぜあなたはこれが速く必要なのですか? –

+0

これはどの構文ですか? DROP USER .. USERはテーブルですか? – Baz1nga

答えて

3

古代のスレッドを復活させるには。私の同僚はそれを理解した。問題は実行中のサービスブローカーに関連していました。次の声明で問題を解決しました。

ALTER DATABASE dbName SET NEW_BROKER WITH ROLLBACK IMMEDIATE 
0

DROP_USERイベントにDDLトリガーが設定されていませんか?

+0

我々はしませんでした、犯人は実行中のサービスブローカーでした。しかし、あなたの提案に感謝します。 :-) – Cryovat

関連する問題