دسته بندی ها
22:36 1401/03/31

حالت های multi-user و single و restricted در Sql Server چیست ؟

مشخصات سوال کننده :
کاربر : pedram_khan     امتیاز کاربر : 277     رتبه کاربر : 6
دسته بندی : Sql Server

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 3339
پاسخ دهنده : saedbfd 22:58 1401/03/31

دسترسی های Multi-User, Single-User و Restricted-User در Sql Server

اول از همه به شما بگم که دیتابیس در Sql Server در سه حالت Single , Restricted و Multi-User می تونه قرار بگیره. هر کدام از این Mode نشان دهنده سطحی از دسترسی کاربران به دیتابیس می باشد.

 

حالات multi و single و restricted-user در Sql Server

 

حالت Single-User چیست ؟ دسترسی به دیتابیس در این حالت چگونه است ؟

در حالت دسترسی Single-User تنها یک کاربر می تواند به دیتابیس دسترسی داشته باشد. این کاربر هر کاربری می تواند باشد. در واقع به محض اینکه اولین کاربر با دیتابیس ارتباط برقرار کرد ارتباط برای سایرین غیرممکن می شود.

دقت کنید برای اینکه دیتابیس را به حالت تک کاربره تبدیل کنید حتما سرویس Sql Server Agent را Stop کنید و AUTO_UPDATE_STATISTICS_ASYNC را برابر با false قرار بدهید.(تصویر زیر)

تبدیل دیتابیس به single-user

دقت کنید اگر Sql Server Agent را Stop نکنید و یا گزینه مشخص شده در تصویر بالا را off نکنید ممکن است تنها کاربر مجاز (کاربری که ادمین می باشد و دسترسی کامل دارد) رشته اتصال را در اختیار بگیرد و سایر کاربران در هیچ زمانی نتوانند دسترسی به دیتابیس برقرار کنند. (این مدل اتصال برای سیستم های امنیتی می تواند مورد استفاده قرار بگیرد.)

 

چگونه دیتابیس را به حالت Single-User تبدیل کنیم ؟

کافیه دستور زیر را در Sql Server اجرا کنید :

USE db_name
GO
ALTER DATABASE db_name
SET SINGLE_USER WITH ROLLBACK IMMEDIATE

 

 

حالت Restricted-User چیست ؟ دسترسی به دیتابیس در این حالت چگونه است ؟

در این حالت از دسترسی فقط کاربران db-owner و db-creator و یا کاربرانی که نقش sysAdmin را دارند می توانند به دیتابیس دسترسی داشته باشند. دقت کنید که ادمین می تواند با تعریف مجوزهای دسترسی کاربران دیگری را نیز به لیست کاربران مجاز به دسترسی اضافه کند.

 

چگونه دیتابیس را به حالت Restriced-User تبدیل کنیم ؟

کافیه دستور زیر را در Sql Server اجرا کنید :

USE db_name
GO
ALTER DATABASE db_name
SET RESTRICTED_USER WITH ROLLBACK IMMEDIATE

 

حالت Multi-User چیست ؟ دسترسی به دیتابیس در این حالت چگونه است ؟

این حالت پیش فرض می باشد و تمامی کاربران به دیتابیس دسترسی دارند. این حالت برای اکثر پروژه ها استفاده می شود. البته در این حالت هم ادمین میتواند مجوزهایی تعریف کند و برخی کاربران را محدود کند.

 

چگونه دیتابیس را به حالت Multi-User تبدیل کنیم ؟

کافیه دستور زیر را در Sql Server اجرا کنید :

USE db_name
GO
ALTER DATABASE db_name
SET Multi_USER
ویرایش شده در سه شنبه 31 خرداد 1401 ساعت 22:58:25
به این پاسخ امتیاز بدهید    0
امتیاز: 1654 رتبه: 1
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود