MSSQL迁移服务器后产生孤立用户解决办法
经常因为某种原因,MSSQL Server数据库需要从一个服务器迁移到另外一个服务器,当在新的服务器”附加”后,该数据库所带的帐号在新系统里,就为孤立帐号,新的MSSQL Server就无法正常访问到,因此需要解决孤立帐户问题;
以OkServer_DB,访问帐号:okserver_user 密码:okserver_pwd为例
1.OkServer_DB复制到新服务器
将OkServer_DB.mdf和OkServer_DB.ldf两文件压缩,复制到新的服务器上目录用户自己选择,打开ms sql server企业管理器,将数据库附加上去,则在ms sql server就能见到新加的数据库OkServer_DB及器下的用户okserver_user,但在ms sql server安全下,看不到okserver_user
2.查看孤立用户
打开ms sql server查询器,并选择数据库为OkServer_DB
sp_change_users_login @Action=’Report’;
可以看到孤立用户列出
3.新添加同名用户
CREATE LOGIN [okserver_user] WITH PASSWORD=N’okserver_pwd’ MUST_CHANGE, DEFAULT_DATABASE=[OkServer_DB], CHECK_EXPIRATION=ON, CHECK_POLICY=ON
4.处理孤立
sp_change_users_login ‘update_one’,'okserver_user’,'okserver_user’
或者
sp_change_users_login @Action=’update_one’, @UserNamePattern=’WebsitePanel’,
@LoginName=’WebsitePanel’;
命令已成功完成。