解决MSSQL 18456错误的简单方法

1.介绍18456错误

在Microsoft SQL Server上运行时,当我们尝试使用错误的凭据进行身份验证时,会出现18456错误。这可以是由于错误的登录名或密码,或者可以是由于没有登录。这是一个非常常见的错误,解决它并不总是那么困难。

2.尝试连接时出现18456错误?

2.1.检查是否使用错误的用户名或密码

USE master;

GO

SELECT name FROM sys.server_principals WHERE type_desc = 'SQL_LOGIN'

使用以上查询可以检查是否正在使用正确的凭据登录,如果结果返回空,说明用户名或密码无效。

2.2.首次设置SQL Server时是否启用Windows身份验证

如果首次设置SQL Server时选择了Windows身份验证模式,而不是SQL Server身份验证模式,则可能会出现18456错误,因为Windows身份验证模式不允许SQL Server使用本地SQL Server身份进行验证。

2.3.检查数据库状态

在某些情况下,当数据库处于脱机或不可用状态时,可能会发生18456错误。因此,检查数据库的状态是检查是否存在此问题的另一种方法。

2.4.检查是否在正确的计算机上连接

如果将登录尝试指向不是MSSQL服务器的计算机,则不仅会出现18456错误,还将返回错误“未找到或访问被拒绝”。因此,请确保连接到正确的计算机。

3.解决18456错误的步骤

3.1.使用正确的凭据连接

首先请确保使用正确的用户名和密码尝试连接。如果您忘记了凭据,请重置它们,然后再次尝试连接。您还可以使用以下命令查询不同的用户:

select name from sys.sysusers where hasdbaccess = 1;

3.2.更改SQL Server身份验证模式

如果您使用的是SQL Server身份验证模式,请将其更改为Windows身份验证模式,然后再次尝试连接。这可以通过以下步骤完成:

在SQL Server Management Studio中,单击“服务器对象”文件夹,然后右键单击需要更改身份验证模式的服务器实例。

单击“属性”。在弹出的“属性”对话框中,单击“安全”。

将服务器身份验证更改为Windows身份验证模式。

3.3.重新启动SQL Server服务

有时候,即使我们已经使用正确的凭据连接到服务器,但服务器仍然会向我们返回18456错误。这可以通过重新启动SQL Server服务来解决。重新启动服务后,请等待几分钟,然后再尝试连接。

4.结论

在解决MSSQL 18456错误时,首先请确保使用正确的用户名和密码尝试连接。如果有必要,可以重置密码。您还可以更改身份验证模式或重新启动SQL Server服务。

如果这些步骤仍然无法解决问题,请检查MSSQL服务器的其他设置是否正确。如果问题仍然存在,请考虑升级MSSQL服务器版本,以便利用最新安全和身份验证功能。

数据库标签