1 Kasım 2009 Pazar

"Exclusive access could not be obtained because the database is in use."

HATA MESAJI:
"Exclusive access could not be obtained because the database is in use."

AÇIKLAMA:
Bu hatayı, işlem yapmak istediğiniz veritabanına başka bir işlem tarafından X (Exclusive) Lock konduğunda alırsınız. Buna bir örnek, Restore olan bir veritabanı olabilir... Bir veritabanı Restore oluyorken, Restore işlemini yapan SPID bu işlemi gerçekleştirmek adına bu veritabanı için X Lock alır.

ÇÖZÜM:
SQL Server 2005 ve daha üstü versiyonlarda "sys.dm_tran_locks" DMV' si ile hangi SPID' nin hangi veritabanı için ne çeşit bir Lock aldığını görebilirsiniz.

SQL Server 2000 için ise "sp_lock" sistem SP' sini kullanabilirsiniz.

Hiç yorum yok: