title | description | author | ms.author | ms.date | ms.service | ms.subservice | ms.topic |
---|---|---|---|---|---|---|---|
Registry Settings |
Registry Settings |
David-Engel |
davidengel |
08/31/2022 |
sql |
connectivity |
reference |
[!INCLUDE SQL Server]
[!INCLUDEDriver_OLEDB_Download]
Each major version of the OLE DB Driver for SQL Server uses its own set of registry settings. The following are the version specific base registry keys (referred to as {base_registry_key}
later on):
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SNI
{major_version}
.0 - HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\MSSQLServer\Client\SNI
{major_version}
.0
Replace the {major_version}
placeholder in the above keys depending on the major version of the driver, for example: HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SNI19.0
is the base key for versions 19.x.x.
Encryption can be controlled through the Value
field of the {base_registry_key}\GeneralFlags\Flag1
registry entry.
Valid values are 0
, 1
, or 2
(which maps to Optional
, Mandatory
, and Strict
connection property/keyword values respectively). The OLE DB driver chooses the most secure option between the registry and the connection property/keyword settings.
Certificate validation can be controlled through the Value
field of the {base_registry_key}\GeneralFlags\Flag2
registry entry.
Valid values are 0
or 1
. The OLE DB driver chooses the most secure option between the registry and the connection property/keyword settings. That is, the driver will validate the server certificate as long as at least one of the registry/connection settings enables server certificate validation.
For MSOLEDBSQL driver versions 19.1 and above, Protocol Order, TCP Keep-Alive, and Keep-Alive Interval can be adjusted in the following registry entries:
- Protocol Order:
{base_registry_key}
\ProtocolOrder - TCP Keep-Alive:
{base_registry_key}
\tcp\Property2\Value - TCP Keep-Alive Interval:
{base_registry_key}
\tcp\Property3\Value
The Protocol Order property is an ordered sequence of null-terminated strings that represent supported protocols. The default Protocol Order value is sm tcp np
.
The TCP Keep-Alive parameter (in milliseconds) controls how often TCP attempts to verify that an idle connection is still intact by sending a KEEPALIVE packet. The default is 30,000 milliseconds.
The Keep-Alive Interval parameter (in milliseconds) determines the interval separating KEEPALIVE retransmissions until a response is received. The default is 1000 milliseconds.
Encryption and certificate validation
MSOLEDBSQL major version differences