برای برقراری ارتباط بین Login و User پس از عملیات restore چه باید کرد؟ sp_change_users_login

سناریوی اشکال:

- در سروری loginname به طور نمونه با عنوان myloginname وجود دارد.

- در سرور مذکور بانک اطلاعاتی وجود دارد که نام کاربری در آن myusername بوده و به myloginname متصل است.

- DBA، از بانک مذکور Backup گرفته و آن را برروی سرور دیگری که برروی آن myloginname از قبل تعریف شده است، restore می کند.

- در این حالت ارتباط بین myusername و myloginname در سرور مقصد قطع می باشد.


راه حل:

1- drop کردن myusername و ایجاد دوباره آن با برقراری ارتباط با myloginname

* درصورتیکه myusername در بانک اطلاعاتی دارای عناصر وابسته باشد امکان حذف آن نمی باشد.

2- اجرای دستور زیر:


EXEC sp_change_users_login 'Update_One', 'dbo', 'myusername'