Używaj przezroczystej rozdzielczości IP sieci z sterownikiem ODBC

pobierz sterownika ODBC

Note

Gdy ustawisz MultiSubnetFailover=Yes (zalecane ustawienie dla Azure SQL Database, Azure SQL Managed Instance, bazy danych SQL w Microsoft Fabric, listenerów grup dostępności i instancji klastra trybu failover), sterownik próbuje równolegle nawiązać połączenia TCP ze wszystkimi rozpoznanymi adresami IP, a ustawienie TransparentNetworkIPResolution nie wpływa na sekwencję nawiązywania połączeń. Więcej informacji można znaleźć w artykule Wysoka dostępność i odzyskiwanie po awarii.

TransparentNetworkIPResolution (TNIR) to starszy mechanizm awaryjny dla wielu adresów IP w sterowniku ODBC Driver for SQL Server, dostępny począwszy od wersji 13.1 sterownika Microsoft ODBC. Wpływa to na proces nawiązywania połączenia, gdy pierwszy rozpoznany adres IP nazwy hosta nie odpowiada, a z nazwą hosta jest skojarzonych wiele adresów IP.

TNIR został zastąpiony przez MultiSubnetFailover. Gdy MultiSubnetFailover=Yes, sterownik próbuje równolegle nawiązać połączenia TCP ze wszystkimi ustalonymi adresami IP, a TNIR nie wpływa na kolejność nawiązywania połączeń. Gdy MultiSubnetFailover=No, TNIR steruje sekwencją przełączania awaryjnego:

Rozwiązanie Przezroczystej Sieci IP Sekwencja połączenia
Włączone (ustawienie domyślne) Wypróbuj jeden adres IP, a następnie wszystkie adresy IP równolegle
Disabled Spróbuj wszystkich IP po kolei

Parametry TransparentNetworkIPResolution połączenia i słowo kluczowe DSN sterują tym ustawieniem na poziomie ciągu połączenia. Wartość domyślna jest włączona.

Keyword Wartości Default
TransparentNetworkIPResolution Enabled, Disabled Enabled

Atrybut SQL_COPT_SS_TNIR przed połączeniem umożliwia aplikacji programowe sterowanie tym ustawieniem:

Atrybut połączenia Rozmiar/typ Wartości Default Description
SQL_COPT_SS_TNIR (1249) SQL_IS_INTEGER lub SQL_IS_UINTEGER SQL_IS_ON (1), SQL_IS_OFF (0) SQL_IS_ON Włącza lub wyłącza funkcję TNIR.