خارج نمودن بانک اطلاعاتی از حالت Single User

گاه برای انجام دادن کاری بر روی بانک اطلاعاتی مجبور هستيم آن را در وضعيت تک کاربره(Single User) قرار دهيم تا در هنگام اعمال تغييرات, ساير کاربران نتوانند باعث اختلال در کارها شوند

برای خارج نمودن بانک اطاعاتی از اين وضعيت و استفاده از آن بصورت Multi User ميتوان از دستور زير استفاده نمود:


exec sp_dboption 'database', 'single user', 'FALSE'




اما به دلايلی ممکن است بانک اطلاعاتی توسط کاربر ديگری قفل شده باشد و به ما اجازه اين عمل را ندهد, در اين صورت, از فرامين زير استفاده ميگردد:


Select d.name, d.dbid, spid, login_time, nt_domain, nt_username, loginame
from sysprocesses p
inner join sysdatabases d on p.dbid = d.dbid  where d.name = 'database'


که بجای database بايستی نام بانک مورد نظر خود را قرار دهيد.

پس از اجرای اين فرمان, با ساتفاده از فرمان kill ساير کاربران متصل را قطع ميکنيم:

kill spid


که در آن بجای spid کد هايي که از اجرای قبل بذست آمده بود استفاده ميشود.


در انتها برای تغيير وضعيت, از اين دستور استفاده ميشود:
exec sp_dboption 'database', 'single user', 'FALSE'
  • 141 کاربر این را مفید یافتند
آیا این پاسخ به شما کمک کرد؟

مقالات مربوطه

تنظيم login name برای User های MS SQL

هنگامی که يک بانک اطلاعاتی را بر روی سرور جديدی بازيابی ميکنيم, تمام اطلاعات آن Database از جمله...

Powered by WHMCompleteSolution