SQL提示Login failed for user'sa'错误的解决方案

  现象:---------------------------------------------------

  1、连接SQL Server数据库提示:Login failed for user 'sa'. Reason: Not associated with a trusted SQL Server connection 错误

  问题:-------------------------------------------------

  初步分析应该与用户权限有关,查阅帮助文件,微软官方给出的原因:

  当 SQL Server 2000 安全身份验证设置为“仅 Windows”, 并且存在下列情况之一时,就会发生此问题:

  您正在尝试使用 SQL Server 登录连接到 SQL Server 2000 数据库。

  您正在尝试使用信任的 SQL Server 连接来连接到安装在基于 Microsoft Windows 98 的计算机上的 SQL Server 2000 桌面引擎(也称为 MSDE 2000)数据库。

  您正在尝试从某 Windows 帐户连接到 SQL Server 2000 数据库,而该帐户没有足够的权限连接到服务器。

  解决:--------------------------------------------

  官方给出的解决办法:

  SQL Server 登录

  使用有效的 Windows 登录连接到 SQL Server。如果必须继续使用 SQL Server 登录,您可以将在 SQL Server 2000 中的安全身份验证模式更改为“SQL Server 和 Windows”。为此,请按照下列步骤操作:

  启动企业管理器。

  展开“Microsoft SQL Servers”,然后展开“SQL Server 组”。

  右键单击要更改为“SQL Server 和 Windows”身份验证的服务器,然后单击“属性”。

  在“SQL Server 属性”对话框中,单击“安全”选项卡,单击“SQL Server 和 Windows”,然后单击“确定”。

  当提示您重新启动 SQL Server 服务时,单击“是”。

  SQL Server 2000 桌面引擎 (MSDE 2000) 安装在基于 Microsoft Windows 98 的计算机上

  当 SQL Server 2000 桌面引擎安装在基于 Windows 98 的计算机上时,必须使用标准的 SQL Server 登录连接到数据库。当您在基于 Windows 98 的计算机上安装 SQL Server 2000 桌面引擎时,不支持“仅 Windows”身份验证模式。

  Windows 帐户权限不足

  要解决此问题,必须将 Windows 帐户添加到 SQL Server,然后为用户需要访问的每个数据库授予适当的权限。为此,请按照下列步骤操作:

  启动企业管理器。

  展开“Microsoft SQL Server”,然后展开“SQL Server 组”。

  展开您的服务器,然后展开“安全”。

  右键单击“登录”,然后单击“新建登录”。

  在“SQL Server 登录属性”对话框中,在“名称”框中输入 Windows 帐户名。在“域”列表中,选择该 Windows 帐户所属的域。

  单击“数据库访问”选项卡,为客户端设置适当的权限,然后单击“确定”

  注意:在添加帐户后,您仍然必须为用户需要访问的各个数据库对象授予访问权限。

  2、刚装完SQL Server 2008 Express,尝试使用sa账号登录,但总是出现Login failed for user 'sa' 错误。觉得应该是SQL Server的认证模式没设对,SQL Server Express默认是Windows Authentication模式,我必须设成Mixed Authentication Mode才可以。

  所以查了一下文档,微软的官方文档说只要把sa账号enable就可以了,但试过后同样的错误。后来截取了SQL Server Management Studio的脚本才发现还必须要改一个注册表键值才行。

  在我的机器上该键值是:HKEY_LOCAL_MACHINESOFTWAREMicrosoftMicrosoft SQL ServerMSSQL10.SQLEXPRESSMSSQLServerLoginMode

  1 - Windows Authentication Mode

  2 - Mixed Authentication Mode

  改成2以后就能用sa账号登录了。

  *补充一下,必须得重启SQL Server的服务改动才能有效。

  3、在 SQL Server 2005 中,您将收到"登录错误: 18456"错误消息在您尝试登录到 SQL Server 2005 实例并且下列条件都为真时:

  •您尝试使用 SQL Server 身份验证的登录来登录到该实例。

  •在 SQL Server 服务配置服务的启动帐户使用域帐户。

  •SQL 身份验证登录接收"登录错误: 18456"错误消息被配置为使用 Windows 域密码策略实施。

  注意默认情况下,除非您显式设置创建登录语句的 CHECK_POLICY 子句为 OFF 时创建给定的登录启用 SQL 身份验证登录的 Windows 域密码策略实施。

  •SQL Server 启动服务的服务帐户已锁定或禁用域控制器上。

  如果配置登录审核失败登录事件写入错误日志的 SQL Server 实例,以下消息将写入 SQL Server 错误日志文件:

  错误消息 1

  日期时间登录错误: 18456,严重: 14 日状态: 10。

  解决方案

  可以从 Microsoft 获得支持的热修复补丁程序。但是,此修补程序仅能用于解决本文中描述的问题。此热修复补丁程序仅适用于正出现此特定问题的系统。此修补程序可能会接受进一步的测试。因此,如果这个问题没有对您造成严重的影响,我们建议您等待包含此修复程序的下一个软件更新。

  如果此修补程序已可供下载,则此知识库文章顶部"提供修补程序下载"部分。如果未显示此节,请联系 Microsoft 客户服务和支持,以获取此修复程序。

  注意如果出现其他问题或需要任何故障诊断,您可能需要创建单独的服务请求。其他支持问题和事项,不适合于此特定的修补程序将收取照常收取支持费用。Microsoft 客户服务和支持电话号码,或创建单独的服务请求的完整列表,请访问下面的 Microsoft Web 站点:

  http://support.microsoft.com/contactus/?ws=support

  () http://support.microsoft.com/contactus/?ws=support

  注意"可用的热修补程序下载"表格显示此热修复补丁程序适用的语言。如果您看不到您的语言,这是因为热修复补丁程序不适用于该语言。

  先决条件

  您必须具有要应用此修补程序安装的 SQL 服务器 2005 Service Pack 1。

时间: 2024-10-24 10:33:18

SQL提示Login failed for user'sa'错误的解决方案的相关文章

关于Java连接SQLServer中Login failed for user 'sa'.

问题描述 搞了一天了,还是没有解决由于需要用到SQLServer,数据库登录方式是Sqlserver和Windows混合登录,在Microsoft SQL Server Management Studio中可以用sa账户登录,但是在Java代码中登录不了,这是为什么?求大牛指点:import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLException;public class DBtest {pub

Login failed. The login is from an untrusted domain and cannot be used with Windows authentication.

Login failed. The login is from an untrusted domain and cannot be used with Windows authentication. (Microsoft SQL Server, Error: 18452)   Fix solution on my machine is: To disable the loopback check via the Windows registry open regedit go to path:

Oracle 11g RAC安装时的错误提示:Failed to create or upgrade OLR

对于Oracle 11g RAC 的安装,与Oracle 10g(clusterware)类似,grid 安装完毕后需要执行orainstroot.sh和root.sh,如果是AMD芯片,Oracle说不认识啊,那就要恭喜一下你又多了一次patch的亲密接触,这个错误提示是Failed to create or upgrade OLR.客官,中招了?接着往下看... 1.安装时的环境 操作系统(Oracle linux 5.5 32bit) [root@node1 ~]# cat /etc/is

glogin.sql和login.sql简介

使用sqlplus时,我们可以通过两个profile来设置sqlplus的默认行为:glogin.sql和login.sql. glogin.sql称为GLOBAL SITE PROFILE,位于$ORACLE_HOME/sqlplus /admin目录下,login.sql称为USER PROFILE,位于用户的当前路径,或者SQLPATH环境变量指定的路径下. 当用户启动sqlplus或者在sqlplus下执行conn命令时,sqlplus首先会调用glogin.sql文件,然后在当前路径下

Win7安装VirtualBox提示“Installation failed!Error:系统...

Win7安装VirtualBox提示"Installation failed!Error:系统找不到指定的路径"      原因:用中文用户名登陆的Win7,或者指定的安装目录中包含中文.    解决办法:将VirtualBox移动到纯英文的目录里,例如D:\,最好将安装版重命名成纯英文的,例如1.exe,然后点击开始--运行,输入cmd回车,在打开的窗口输入:    d:\1.exe -extract  www.2cto.com      回车之后,VirtualBox的安装文件会解

SQL error: cannot use the special principal 'sa'

 SQL error: cannot use the special principal 'sa' 解决方案: use dbname EXEC sp_changedbowner 'dbname' 参考:https://msdn.microsoft.com/en-us/library/ms178630.aspx

Display SQL Server Login Mode_javascript技巧

Display SQL Server Login Mode. Supported Platforms SQL Server 2000  Yes Script Code SQLDMOSecurity_Integrated  = 1  SQLDMOSecurity_Mixed         = 2  SQLDMOSecurity_Normal       = 0 SQLDMOSecurity_Unknown   = 9  strDBServerName = "." Set objSQLS

Oracle 12c 新SQL提示(hint)

Oracle 12c 新SQL提示(hint) Oracle 12c中引入了许多新特性,其中部分是和SQL相关的特性.而一些新的SQL提示也随着这些新特性被引入. enable_parallel_dml Syntax: enable_parallel_dml Description: Enable parallel dml. Same effect as "alter session enable parallel dml" SQL?? HelloDBA.com> create 

SQL Server连接中的三个最常见错误:

server|错误 SQL Server连接中的三个最常见错误: 一."SQL Server 不存在或访问被拒绝" 这个是最复杂的,错误发生的原因比较多,需要检查的方面也比较多. 一般说来,有以下几种可能性: 1,SQL Server名称或IP地址拼写有误2,服务器端网络配置有误3,客户端网络配置有误 要解决这个问题,我们一般要遵循以下的步骤来一步步找出导致错误的原因. ============= 首先,检查网络物理连接 =============ping <服务器IP地址/服务