官网地址:Local Naming Parameters in the tnsnames.ora File
欢迎关注留言,我是收集整理小能手,工具翻译,仅供参考,笔芯笔芯.
了解如何使用协议地址配置网络连接。
网络对象由协议地址标识。建立连接后,客户端和请求的接收者(侦听器或 Oracle Connection Manager)将配置相同的协议地址。客户端使用此地址将连接请求发送到特定的网络对象位置,接收者“侦听”此地址上的请求,并根据其与客户端信息匹配的地址信息授予连接。
CONNECT_DATA
连接字符串的部分下。CONNECT_DATA
连接字符串的部分下。父主题: tnsnames.ora 文件中的本地命名参数
目的
指示侦听器将具有相同连接的所有连接路由colocation_tag
到同一数据库实例。
使用说明
将此参数与CONNECT_DATA
参数一起使用。
参数值必须是字母数字字符串。
例子
net_service_name=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)
(COLOCATION_TAG=abc)))
笔记:
在某些情况下,例如当达到实例的最大负载或为服务添加或删除新实例时,具有相同数据库colocation_tag
实例的客户端连接的共置可能会不一致。
父主题: 连接数据部分
目的
定义要连接的服务,例如SERVICE_NAME
.
使用说明
将此参数放在DESCRIPTION
参数下面。
CONNECT_DATA
允许使用以下附加参数:
故障转移模式
GLOBAL_NAME
HS
INSTANCE_NAME
RDB_数据库
分片键
SUPER_SHAARDING_KEY
服务器
服务名称
COLOCATION_TAG
KERBEROS5_PRINCIPAL
例子
net_service_name=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=sales1-svr)(PORT=1521))
(ADDRESS=(PROTOCOL=tcp)(HOST=sales2-svr)(PORT=1521)))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)))
父主题: 连接数据部分
目的
如果第一个侦听器在运行时发生故障,则指示 Oracle Net 将故障转移到其他侦听器。
使用说明
根据配置,会话或任何SELECT
正在进行的语句都会自动进行故障转移。
这种类型的故障转移称为透明应用程序故障转移 (TAF),不应与连接时故障转移FAILOVER参数混淆。
将此参数放在CONNECT_DATA
参数下面。
附加参数
FAILOVER_MODE
支持以下参数:
BACKUP
:通过网络服务名称指定故障转移节点。必须为故障转移节点创建单独的网络服务名称。
TYPE
:指定故障转移的类型。默认情况下,Oracle 调用接口 (OCI)应用程序可以使用三种类型的 Oracle Net 故障转移功能:
SESSION
:会话失败。例如,如果用户的连接丢失,则会在备份上自动为该用户创建一个新会话。这种类型的故障转移不会尝试恢复选择。
SELECT
:允许打开游标的用户在失败后继续获取它们。然而,这种模式在正常的选择操作中会增加客户端的开销。
NONE
:这是默认设置,不使用故障转移功能。也可以明确指定这一点以防止发生故障转移。
METHOD
:指定从主节点到备份节点的故障转移速度:
BASIC
:在故障转移时建立连接。在故障转移之前,此选项几乎不需要备份数据库服务器上的任何工作。
PRECONNECT
:预先建立连接。这提供了更快的故障转移,但要求备份实例能够支持来自每个受支持实例的所有连接。
TRANSACTION
:允许数据库在发生可恢复错误后完成当前数据库事务。该参数与参数一起使用COMMIT_OUTCOME=TRUE
。
RETRIES
:指定故障转移后尝试连接的次数。如果DELAY
指定,则RETRIES
默认重试五次。
DELAY
:指定连接尝试之间等待的时间(以秒为单位)。如果RETRIES
指定,则DELAY
默认为一秒。
笔记:
如果注册了回调函数,则RETRIES
和DELAY
参数将被忽略。
也可以看看:
Oracle Database Net Services Administrator's Guide了解更多配置信息
父主题: 连接数据部分
目的
识别 Oracle Rdb 数据库。
使用说明
将此参数放在CONNECT_DATA
参数下面。
例子
net_service_name=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=generic)
(RDB_DATABASE=[.mf]mf_personal.rdb)
(GLOBAL_NAME=alpha5)))
父主题: 连接数据部分
目的
引导 Oracle Net 通过异构服务连接到非 Oracle 系统。
使用说明
将此参数放在CONNECT_DATA
参数下面。
默认
没有任何
价值观
ok
例子
net_service_name=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SID=sales6)
)
(HS=ok))
也可以看看:
Oracle Database Net Services 管理员指南以获取完整的配置信息
父主题: 连接数据部分
目的
识别要访问的数据库实例。
使用说明
INSTANCE_NAME
设置为初始化参数文件中参数 指定的值。
将此参数放在CONNECT_DATA
参数下面。
例子
net_service_name=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)
(INSTANCE_NAME=sales1)))
也可以看看:
Oracle Database Net Services Administrator's Guide了解有关使用的更多信息INSTANCE_NAME
父主题: 连接数据部分
使用此参数指定 Kerberos 主体。
目的
为 Oracle 数据库客户端配置 Kerberos 身份验证时,可以为单个 Oracle 数据库客户端指定多个 Kerberos 主体。
这是一个可选参数。指定后,它用于验证凭证缓存中的主体名称是否与参数值匹配。
使用说明
将此参数与CONNECT_DATA
参数一起使用。或者,您可以KERBEROS5_CC_NAME
在连接字符串中指定可选KERBEROS5_PRINCIPAL
参数,以作为不同的 Kerberos 主体进行连接。每个 Kerberos 主体都必须有一个有效的凭证缓存。
例子
krbuser1
对于使用 Kerberos 主体进行外部身份验证krbprinc1.example.com
且该主体的凭证缓存位于的用户/tmp/krbuser1/krb.cc
,连接字符串为:
net_service_name=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=sales-svr)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=sales.example.com))
(SECURITY=
(KERBEROS5_CC_NAME=/tmp/krbuser1/krb.cc)
([email protected])))
笔记:
/tmp/krbuser1/krb.cc
如果文件中的主体不包含该值,则连接失败[email protected]
。
krbuser2
同样,对于使用 Kerberos 主体进行外部身份验证krbprinc2.example.com
且该主体的凭证缓存位于的用户/tmp/krbuser2/krb.cc
,连接字符串为:
net_service_name=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=sales-svr)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=sales.example.com))
(SECURITY=
(KERBEROS5_CC_NAME=/tmp/krbuser2/krb.cc)
([email protected])))
相关话题
父主题: 连接数据部分
目的
指定 Oracle Rdb 数据库的文件名。
使用说明
将此参数放在CONNECT_DATA
参数下面。
例子
net_service_name=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)
(RDB_DATABASE= [.mf]mf_personal.rdb)))
父主题: 连接数据部分
使用此参数将数据库连接请求路由到适当的分片。将此参数放在CONNECT_DATA
连接字符串的部分下。
目的
指定分片键的值。根据数据库连接请求期间指定的值,请求将直接路由到适当的分片。
使用说明
使用该SHARDING_KEY
参数以简化文本格式指定分片键。该参数仅支持 ASCII 字符集,不支持特殊字符。分片键支持以下数据类型:
NUMBER
INTEGER
SMALLINT
RAW
NVARCHAR
NVARCHAR2
NCHAR
DATE
TIMESTAMP
使用该SHARDING_KEY_B64
参数指定分片键的base64编码的二进制表示形式。该参数支持特殊字符(如“引号、逗号()、右括号+加号)。
价值观
Base64 编码值 ( *_B64
) 的字段以标头开头,标头是一系列以空格分隔的整数值:
(CONNECT_DATA=(SHARDING_KEY_B64=[version] [type] [key column 1 type identifier] [key column 2 type identifier] ... ,[base64 string],[base64 string],[base64 string],...))...
复合键的各个部分用逗号分隔。
version
指定base64表示的版本号。目前仅支持版本 1,因此支持的版本值为1
。
type
指定字符集字符串及其编码信息。支持的type
值为:
价值 | 字符集字符串 | 编码方案 |
---|---|---|
|
字符串包含哈希值。 |
|
|
字符串不包含哈希值。 |
|
|
字符串不包含哈希值。 |
字符值以数据库编码进行编码,该编码可能特定于每列。 |
|
字符串包含哈希值。 |
|
|
字符串仅包含哈希值。 |
键列类型标识符指定数据类型。支持的键列类型标识符值为:
价值 | 数据类型 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
标头以逗号结尾,后跟base64 string。Base64 字符串是 Base64 编码值字符串的逗号分隔列表。哈希值(如果可用)是列表中的最后一个值。
实施例6-8
SHARDING_KEY
参数值以简化文本格式指定:
net_service_name
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)
((SHARDING_KEY=40598230))))
实施例6-9
SHARDING_KEY_B64
参数值被编码为 Base64 二进制表示形式:
net_service_name
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)
((SHARDING_KEY_B64=1 1 2,VVM=,OTQwMDI=))))
相关话题
父主题: 连接数据部分
在复合分片的情况下使用此参数将数据库请求路由到分片集合(分片空间)。将此参数放在CONNECT_DATA
连接字符串的部分下。
目的
为分片集合指定分片空间键。分片空间是一组分片,用于存储与键值范围或列表相对应的数据。根据数据库连接请求期间指定的值,请求将直接路由到适当的分片空间。
使用说明
使用该SUPER_SHARDING_KEY
参数以简化文本格式指定分片集合的分片空间键。该参数仅支持 ASCII 字符集,不支持特殊字符。超级分片键支持的数据类型与分片键相同。
使用该SUPER_SHARDING_KEY_B64
参数指定分片空间键的 base64 编码的二进制表示形式。该参数支持特殊字符(如“引号、逗号()、右括号+加号)。
价值观
*_B64
) 的字段以标头开头,标头是一系列以空格分隔的整数值:
(CONNECT_DATA=(SUPER_SHARDING_KEY_B64=[version] [type] [integer literal] [integer literal] ... ,[base64 binary],[base64 binary],[base64 binary],...))...
示例6-10
SHARDING_KEY
和SUPER_SHARDING_KEY
参数值以简化文本格式指定:
net_service_name=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)
((SHARDING_KEY=40598230)(SUPER_SHARDING_KEY=gold)))
例6-11
SHARDING_KEY_B64
和SUPER_SHARDING_KEY_B64
参数值被编码为 Base64 二进制表示形式:
net_service_name
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)
((SHARDING_KEY_B64=1 1 2,VVM=,OTQwMDI=)(SUPER_SHARDING_KEY_B64=1 1,BBWEPGRBBDOEMGQW)))
相关话题
父主题: 连接数据部分
目的
指示侦听器将客户端连接到特定类型的服务处理程序。
使用说明
将此参数放在CONNECT_DATA
参数下面。
价值观
dedicated
指定是否由专用服务器处理客户端请求。
shared
指定客户端请求是由调度程序还是共享服务器提供服务。
pooled
从连接池获取连接如果服务器上启用了数据库驻留连接池。
笔记:
必须在数据库初始化文件中配置共享服务器,客户端才能通过共享服务器进程连接到数据库。
文件中的 USE_DEDICATED_SERVER 参数会覆盖sqlnet.ora
此参数。
例子
net_service_name=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)
(SERVER=dedicated)))
父主题: 连接数据部分
目的
识别要访问的 Oracle Database 数据库服务。
使用说明
将值设置为SERVICE_NAMES
初始化参数文件中的参数指定的值。
将此参数放在CONNECT_DATA
参数下面。
例子
net_service_name=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=...)
(ADDRESS=...))
(CONNECT_DATA=
(SERVICE_NAME=sales.us.example.com)))
相关话题
父主题: 连接数据部分