我如何从Windows XP连接到Sql Server 2017

时间:2019-04-15 10:22:17

标签: sql-server odbc windows-xp sql-server-2017 windows-xp-sp3

我们有一些xp(很旧)的机器无法连接到sql server 2017(在Linux上运行)。我们尝试测试与ODBC的连接。该问题与SSL有关。

有没有办法将其关闭,以便它可以工作?

Error Message : Microsoft SQL Server Login
Connection failed:
SQLState: '01000'
SQL Server Error: 772
[Microsoft][ODBC SQL Server Driver][DBNETLIB]ConnectionOpen(SECDoClientHandshake()).
Connection failed:
SQLSTATE: '08001'
SQL Server Error: 18
[Microsoft][ODBC SQL Server Driver][DBNETLIB]SSL Security error

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,并在https://www.smartftp.com/pt-br/support/kb/2754上找到了解决方案。如果此链接向南,请执行以下步骤。

该解决方案涉及在XP上增加对TLS 1.2的支持,该支持适用于基于Windows XP SP3的“ Windows Embedded POSReady 2009”(更多信息,请访问https://en.wikipedia.org/wiki/Windows_Embedded_Industry#Windows_Embedded_POSReady_2009)。

要使其在“普通旧版XP”上运行,您需要在Windows注册表中添加以下内容:

[HKEY_LOCAL_MACHINE\SYSTEM\WPA\PosReady] 
"Installed"=dword:00000001

接下来,TLS的注册表项:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Client]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.1\Server]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server]
"DisabledByDefault"=dword:00000000

下一步是从Microsoft KB4019276(https://support.microsoft.com/en-us/help/4019276/update-to-add-support-for-tls-1-1-and-tls-1-2-in-windows)获得所需的更新。安装更新并重新启动。