注册表设置
适用于:SQL Server Azure SQL 数据库 Azure SQL 托管实例 Azure Synapse Analytics Analytics Platform System (PDW)
每个 OLE DB Driver for SQL Server 主版本都使用自己的一组注册表设置。 以下是特定于版本的基本注册表项(后面称为 {base_registry_key}
):
- HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SNI
{major_version}
.0 - HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\MSSQLServer\Client\SNI
{major_version}
.0
根据驱动程序的主版本,替换上述项中的 {major_version}
占位符,例如:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\Client\SNI19.0
是版本 19.x.x 的基本项。
加密和证书验证
强制协议加密
可以通过 {base_registry_key}\GeneralFlags\Flag1
注册表项的 Value
字段来控制加密。
有效值为 0
、1
或 2
(分别映射到 Optional
、Mandatory
和 Strict
连接属性/关键字值)。 OLE DB 驱动程序在注册表和连接属性/关键字设置之间选择最安全的选项。
信任服务器证书
可以通过 {base_registry_key}\GeneralFlags\Flag2
注册表项的 Value
字段来控制证书验证。
有效值为 0
or 1
进行求值的基于 SQL 语言的筛选器表达式。 OLE DB 驱动程序在注册表和连接属性/关键字设置之间选择最安全的选项。 也就是说,只要至少有一个注册表/连接设置启用服务器证书验证,驱动程序就会验证服务器证书。
TCP Keep-Alive 和 Protocol Order 注册表属性
对于 MSOLEDBSQL 驱动程序版本 19.1 及更高版本,可以在以下注册表项中调整 Protocol Order、TCP Keep-Alive 和 Keep-Alive 间隔:
- Protocol Order:
{base_registry_key}
\ProtocolOrder - TCP Keep-Alive:
{base_registry_key}
\tcp\Property2\Value - TCP Keep-Alive 间隔:
{base_registry_key}
\tcp\Property3\Value
Protocol Order 属性是用于表示受支持协议的以 null 结尾的字符串的有序序列。 Protocol Order 默认值为 sm tcp np
。
TCP Keep-Alive 参数(以毫秒计)控制 TCP 通过发送 KEEPALIVE 包尝试验证空闲连接是否仍保持原样的频率。 默认值为 30,000 毫秒。
Keep-Alive 间隔参数(以毫秒计)确定重新传输 KEEPALIVE 直到接收到响应的间隔。 默认值为 1000 毫秒。