SQL还原数据库后孤立用户问题处理.docx

SQL还原数据库后孤立用户问题处理.docx

ID:51694553

大小:36.52 KB

页数:4页

时间:2020-03-15

SQL还原数据库后孤立用户问题处理.docx_第1页
SQL还原数据库后孤立用户问题处理.docx_第2页
SQL还原数据库后孤立用户问题处理.docx_第3页
SQL还原数据库后孤立用户问题处理.docx_第4页
资源描述:

《SQL还原数据库后孤立用户问题处理.docx》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、使用sp_change_users_login排除孤立用户,所谓孤立帐户,就是某个数据库的帐户只有用户名而没有登录名,这样的用户在用户库的sysusers系统表中存在,而在master数据库的syslogins中却没有对应的记录。孤立帐户的产生一般是一下两种:1.将备份的数据库在其它机器上还原;2.重装系统或SQLSERVER之后只还原了用户库解决方法是使用sp_change_users_login来修复。sp_change_users_login的用法有三种用法1:execsp_change_us

2、ers_login'REPORT'列出当前数据库的孤立用户用法2:execsp_change_users_login'AUTO_FIX','用户名'可以自动将用户名所对应的同名登录添加到syslogins中用法3:execsp_change_users_login'UPDATE_ONE','用户名','登录名'将用户名映射为指定的登录名。 ---------------------------------------------------------------------------------

3、-------------------------------看看是否有用SQL孤立用户解决方案  症状  当您将数据库备份恢复到另一台服务器时,可能会遇到孤立用户的问题。SQLServer联机丛书中的孤立用户疑难解答主题中没有讲述解决此问题的具体步骤。  本文介绍了如何解决孤立用户问题。  状态  Microsoft已经确认这是在本文开头列出的Microsoft产品中存在的问题。  更多信息  虽然术语“登录”和“用户”经常交换使用,但它们之间有很大的不同。登录用于用户身份验证,而数据库用户帐户用

4、于数据库访问和权限验证。登录通过安全识别符(SID)与用户关联。访问SQLServer服务器需要登录。验证特定登录是否有效的过程称为“身份验证”。登录必须与SQLServer数据库用户相关联。您使用用户帐户控制数据库中执行的活动。如果数据库中不存在针对特定登录的用户帐户,使用该登录的用户即使能够连接到SQLServer服务器,也无法访问数据库。但是,该情形的唯一例外是当数据库包含“guest”用户帐户时。与用户帐户不关联的登录将被映射到guest用户。相反,如果存在数据库用户,但没有与其关联的登录,

5、则该用户将无法登录到SQLServer服务器中。  将数据库恢复到其他服务器时,数据库中包含一组用户和权限,但可能没有相应的登录或者登录所关联的用户可能不是相同的用户。这种情况被称为存在“孤立用户”。  孤立用户疑难解答  当您将数据库备份恢复到另一台服务器时,可能会遇到孤立用户的问题。以下情形说明了该问题并阐述如何加以解决。  1.向主数据库添加一个登录,并将默认数据库指定为Northwind:Usemastergosp_addlogin'test','password','Northwind' 

6、 2.向刚创建的用户授予访问权限:UseNorthwindgosp_grantdbaccess'test'  3.备份数据库。BACKUPDATABASENorthwindTODISK='C:MSSQLBACKUPNorthwind.bak'  4.将数据库恢复到其他SQLServer服务器:RESTOREDATABASENorthwindFROMDISK='C:MSSQLBACKUPNorthwind.bak'        恢复的数据库包含名为“test”的用户,但没有相应的登录,这就导致“te

7、st”成为孤立用户。   5.现在,为了检测孤立用户,请运行此代码:UseNorthwindgosp_change_users_login'report'        输出中列出了所有登录,其中包含Northwind数据库的sysusers系统表和主数据库的sysxlogins系统表中不匹配的条目。  解决孤立用户问题的步骤  1.为前一步中的孤立用户运行以下命令:UseNorthwindgosp_change_users_login'update_one','test','test'      

8、  这样,就将服务器登录“test”与Northwind数据库用户“test”重新连接起来。  sp_change_users_login存储过程还可以使用“auto_fix”参数对所有孤立用户执行更新,但不推荐这样做,因为SQLServer会尝试按名称匹配登录和用户。大多数情况下这都是可行的;但是,如果用户与错误登录关联,该用户可能拥有错误的权限。  2.在上一步中运行代码后,用户就可以访问数据库了。然后用户可以使用sp_password存储过程更改密码:Usema

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。