`

SQL Server 孤立用户和对象名无效问题的解决方法

阅读更多

一、孤立帐户,就是某个数据库的帐户只有用户名而没有登录名,这样的用户在用户库的sysusers系统表中存在,而在master数据库的syslogins中却没有对应的记录。

孤立帐户的产生一般是以下两种:
1.将备份的数据库在其它机器上还原;
2.重装系统或SQL SERVER之后只还原了用户库

解决方法是使用sp_change_users_login来修复。

sp_change_users_login的用法有三种

用法1:
exec sp_change_users_login 'REPORT'
列出当前数据库的孤立用户

用法2:
exec sp_change_users_login 'AUTO_FIX','用户名'
可以自动将用户名所对应的同名登录添加到syslogins中
如果没有建立testuser的登录用户,还可以用
sp_change_users_login 'Auto_Fix', 'testuser', NULL, 'testpass'

用法3:
exec sp_change_users_login 'UPDATE_ONE','用户名','登录名'
将用户名映射为指定的登录名。

二、对象名'xxxx’无效的问题

这里可能会有人遇到对象名 ‘xxxx’无效的问题。系统表却不会产生这个问题,而用户表还要加上用户名,然后是表明才能访问,比如select * from author,会说对象名 author 无效,而用select * from test.author就可以访问,这个是用户首选身份的问题。

解决很简单,就是察看test登录用户是否具有dba的权限或者系统管理的权限,有的话去掉就行了。

因为如果用户有dba身份,那么它登陆后的默认表空间是dbo的系统表空间,所以去掉了之后,就会以正常的test表空间访问数据表了。

分享到:
评论

相关推荐

    讲解孤立用户和对象名无效问题的解决方法

    讲解孤立用户和对象名无效问题的解决方法 在使用数据库的过程中,经常会遇到数据库迁移或者数据迁移的问题,或者有突然的数据库损坏,这时需要从数据库的备份中直接恢复。但是,此时会出现问题,这里说明几种常见...

    SQL对象名无效的解决方法

    ### SQL对象名无效的解决方法 #### 一、背景与问题概述 在数据库管理和维护过程中,经常需要进行数据迁移或数据库恢复操作。这些操作可能会导致一些问题,其中一个常见的问题是SQL对象名无效。这类问题通常发生在...

    SQLServer数据库备份再还原之后登录名丢失解决方法

    ### SQL Server 数据库备份后登录名丢失问题及解决方法 #### 背景与问题概述 在进行SQL Server数据库的备份与恢复操作时,经常会出现一个棘手的问题:原本数据库中的登录名在恢复到另一台服务器后消失不见,导致...

    sql server 孤立账户的建立

    为了解决这类问题,SQL Server提供了`sp_change_users_login`系统存储过程来重新建立用户账户与登录名之间的关系。 #### 孤立账户的概念 孤立账户是指在SQL Server数据库中,用户账户与登录名之间没有正确关联的一...

    navicatepremuim连接sqlserver数据库遇到问题及解决方法

    Navicat Premium 连接 SQL Server 数据库遇到问题及解决方法 Navicat Premium 是一个功能强大且功能丰富的数据库管理工具,支持多种数据库管理系统,包括 SQL Server、MySQL、Oracle 等。但是在使用 Navicat ...

    sql server无法打开用户默认数据库的解决方法

    "SQL Server 无法打开用户默认数据库的解决方法" SQL Server 无法打开用户默认数据库是指在 SQL Server 2005 中,用户无法连接到其默认数据库的现象。这可能是由于用户账户的默认数据库被删除或更改所导致的。在...

    关于 SQL Server 登录问题(错误 233和18456)的解决方法

    ### 关于 SQL Server 登录问题(错误 233 和 18456)的解决方法 #### 错误 233 的解决方法 **背景:** 当您尝试使用特定的身份验证方式(例如 sa 账户)登录到 SQL Server 实例时,可能会遇到错误 233。这个错误...

    解决SQL2005孤立用户问题.pdf

    通过以上步骤,可以成功解决SQL Server 2005中的孤立用户问题,恢复用户和登录名的关联,并重新设定权限。在日常管理中,应谨慎处理数据库的备份、恢复和用户管理,以避免类似问题的发生。同时,理解SQL Server的...

    安装SQL08时,出现错误消息]为 SQL Server 代理服务提供的凭据无效。若要继续操作,请为

    安装SQL08时,出现错误消息]为 SQL Server 代理服务提供的凭据无效。若要继续操作,请为,安装SQL08时,出现错误消息]为 SQL Server 代理服务提供的凭据无效。若要继续操作,请为

    错误22022 SQLServerAgent当前未运行的解决方法

    SQLserver代理已经启动了,服务里的SQLServerAgent响应服务也已经开启了 但是启动作业的时候还是提示“错误22022:SQLServerAgent当前未运行,因此,无法就本操作对其进行提示。” 有高人遇到过这个问题吗? 怎么...

    SQL服务器上SQL_server_Agent无法启动的解决方法

    解决这个问题的方法是删除 Builtin/Administrators 帐号,然后创建一个新的管理员帐号,该帐号同时具有系统管理权限和 SQL 管理权限。然后,用这个新的管理员帐号启动 SQL Server Agent 服务。 操作步骤 1. 打开...

    SQL Server 2000用户sa登录失败的解决办法

    ### SQL Server 2000 用户 sa 登录失败的解决办法 #### 背景介绍 在使用SQL Server 2000时,有时会遇到使用`sa`账户登录失败的情况,这通常是因为服务器设置了“仅Windows”的身份验证方式,而非SQL Server的身份...

    清除sqlserver无效的视图及存储过程

    在SQL Server数据库管理中,有时由于项目的持续优化和升级,可能会遗留一些无效的视图或存储过程。这些对象可能由于代码改动、表结构调整或者不再被引用而变得无用,但它们依然存在于数据库中,占用资源并可能导致...

    SQL2005服务器备份文件的强制还原后引起的孤立用户问题解决方法

    SQL2005服务器备份文件的强制还原后引起的孤立用户问题解决方法

    SQL Server 18452登录错误

    * 解决方法之一是设置允许 SQL Server 身份登录,通过在"身份验证"下选择"SQL Server 和 Windows 身份验证模式"。 * 另一个解决方法是检查 SA 用户是否被打开,通过勾选登陆中的启用。 * SA 用户默认是关闭的,需要...

    SQLServer进程阻塞的检查和解决办法

    SQL Server 进程阻塞...进程阻塞检查和解决方法是 SQL Server 进程阻塞问题的重要解决方法。通过使用存储过程 sp_who_lock 和 sp_Kill_lockProcess,我们可以快速检查和解决进程阻塞问题,从而提高系统性能和稳定性。

    SQLServer 2008 出现红叉错误的解决方法

    这种情况下,用户往往无法通过SQL Server Management Studio (SSMS)连接到数据库服务器,这将严重影响数据管理和应用程序的正常运行。 #### 一、红叉错误概述 在SQL Server服务管理器中,如果看到某个SQL Server...

    SQL服务器上SQL server Agent无法启动的解决方法.docx

    ### SQL Server Agent 无法启动的解决方法 #### 一、问题背景 在日常的数据管理工作中,确保数据库的正常运行及数据备份是非常重要的任务之一。在使用 Microsoft SQL Server 的环境中,SQL Server Agent 是一个...

    SQL_Server_2008登录问题(错误_233和18456)解决方法

    SQL Server 2008 登录问题解决方法 SQL Server 2008 是一个功能强大且广泛使用的关系数据库管理系统,但是在实际应用中,用户可能会遇到各种登录问题,例如错误 233 和 18456。这两种错误都可能会导致用户无法正常...

    SQL Server 2008 安装失败后的解决办法

    本文将着重介绍解决SQL Server 2008安装失败后的解决办法,旨在帮助用户快速解决安装问题,确保SQL Server 2008的顺利安装。 一、卸载所有Microsoft SQL Server相关软件 在安装SQL Server 2008之前,需要卸载所有...

Global site tag (gtag.js) - Google Analytics