我在 Windows server 2008 R2 ENT 上安装了 SQL Server 2008 R2 ENT。安装后我无法在本地登录 SQL Server。出现以下错误:
连接握手失败。操作系统调用失败:(80090331) 0x80090331(客户端和服务器无法通信,因为它们没有共同的算法。)。州 56。
该错误导致我阅读了这篇文章,并将我的数据库引擎更新为 10.50.6542.0。但仍然无法登录。我应该怎么做才能让我的 SSMS 在本地连接。第二个问题是 SQL 代理服务没有启动。它失败并出现以下错误:
代理无法启动(无法连接到服务器(本地),SQLserveragent 无法启动)。
如何解决这个问题?以下是我的环境详细信息:
- Windows 服务器 2008 R2 耳鼻喉科。SP1
- SQL Server 2008 R2 耳鼻喉科 (10.50.6542.0)
- .Net 版本 4.6.01055
频道状态:
SSL 2.0:客户端:DisabledByDefault = 1 启用 = 0 服务器:DisabledByDefault = 1 启用 = 0
SSL 3.0:客户端:DisabledByDefault = 1 启用 = 0 服务器:DisabledByDefault = 1 启用 = 0
TLS 1.0:客户端:DisabledByDefault = 0 启用 = 1 服务器:DisabledByDefault = 0 启用 = 1
TLS 1.1:客户端:DisabledByDefault = 0 启用 = 1 服务器:DisabledByDefault = 0 启用 = 1
TLS 1.2:客户端:DisabledByDefault = 0 启用 = 1 服务器:DisabledByDefault = 0 启用 = 1
如果您需要更多详细信息,请告诉我。
更新:
我在这方面取得了一些进展。我安装了 ADO.NET - SqlClient (.NET Framework 3.5/.NET Framework 2.0 SP2) 参考链接https://support.microsoft.com/en-us/kb/3135244。我现在可以在本地使用 SSMS 连接 SQL 服务器,也可以启动 SQL 代理服务。伊皮。
但现在新的问题出现了。我无法使用 Windows 身份验证远程连接服务器。当我尝试连接它时,我在 Windows 事件查看器日志中得到以下错误。此外,SQL Server 错误日志中没有错误。
日志名称:系统源:Schannel 事件 ID:36888 任务类别:无级别:错误关键字:用户:
SYSTEM 描述:生成了以下致命警报:40。内部错误状态为 1205。日志名称:系统源:
Schannel 事件 ID :36874 任务类别:无级别:
错误关键字:用户:系统描述:从远程客户端应用程序接收到 TLS 1.0 连接请求,但服务器不支持客户端应用程序支持的任何密码套件。SSL 连接请求失败。
解决我的这个问题是申请
这些修复了本地登录和 SQL 代理服务问题。然后新问题浮出水面,即无法从其他服务器SSMS 此服务器。
为了解决这个问题,我必须
‘KEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Hashes\SHA’
在注册表中启用。启用后,远程连接开始正常工作。