Ошибка при подключении более поздней версии SQL Server с помощью функции SQL Server связанного сервера

Эта статья поможет вам найти решение проблемы с подключением с помощью функции SQL Server Связанного сервера с Windows Server 2022 или более поздней версии до SQL Server, размещенной в более старой версии Windows.

Симптомы

Эта проблема может возникнуть при подключении из Windows Server 2022 или более поздней версии к SQL Server, работающей в более низкой версии Windows, используя функциональность SQL Server связанного сервера.

Может появиться одно из следующих сообщений об ошибке:

[Microsoft OLE DB Driver for SQL Server]: клиенту не удается установить подключение

[Microsoft OLE DB Driver for SQL Server]: поставщик TCP. Существующее подключение было принудительно прервано удаленным узлом.

Здесь удаленный сервер получает сообщения TLS, когда сервер пытается подключиться к SQL Server. Создается и отправляется на удаленный конец неустранимое оповещение. Эта ошибка может завершить подключение. Код неустранимой ошибки, определенный протоколом TLS, равен 40. Состояние ошибки Windows Schannel — 1205.

Причина

Наличие поддержки TLS 1.2 может быть возможной причиной проблемы при подключении к SQL Server 2012 с помощью виртуальных машин Azure.

Решение

Чтобы устранить эту проблему, добавьте следующие необходимые разделы реестра и обновите SQL Server до 2012 с пакетом обновления 4 (SP4), чтобы SQL Server 2022 могли подключиться к нему.

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2]

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

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

После установки обновлений на сервере SQL Server 2012 может появиться следующее сообщение об ошибке:

Язык экземпляра SQL Server MSSQLSERVER не соответствует языку, ожидаемому при обновлении SQL Server. Язык установленного SQL Server продукта — другой <язык>, а ожидаемый язык SQL Server — английский (США).

Чтобы устранить эту ошибку, выполните следующие действия.

Примечание.

Прежде чем выполнять команды в этой процедуре, убедитесь, что у вас установлен английский (США) языковой пакет.

  1. Откройте PowerShell.

  2. Чтобы получить текущий список языков, выполните следующую команду:

    Get-WinUserLanguageList

  3. Чтобы задать язык как английский (США), выполните следующую команду:

    Set-WinUserLanguageList -LanguageList en-US

  4. Перезапустите сервер.

  5. Установите обновление SQL Server 2012 с пакетом обновления 4 (SP4).

  6. Перезапустите сервер еще раз.

Сведения о проверка подключения с помощью UDL см. в статье Настройка универсального канала данных (UDL).

См. также

Существующее подключение было принудительно закрыто удаленным узлом (ошибка ОС 10054)