Oracle 数据库是作为服务呈现给客户机的,即数据库代表客户机执行工作。数据库可以有一个或多个与其有关的服务。
到此发行版为止,Oracle 数据库服务由 Oracle 系统标识符 (SID) 唯一标识。SID 也由数据库内部使用,以作为指向系统全局区 (SGA) 的指针。客户机通过指定连接描述符中的 SID 连接到数据库例程。此命名方案不区分例程的服务。
Oracle8i 中已经实施新命名方案。这是由于 Oracle 数据库可以跨多个计算机,作为整体的服务及服务的每个例程都已指定。
数据库现在由初始化参数文件中带有 SERVICE_NAMES 参数的服务名标识。SERVICE_NAMES 指定可能跨例程和/或节点的 Oracle 数据库服务的最高级别视图名称。SERVICE_NAMES 缺省为全局数据库名,由数据库名(DB_NAME) 和域名 (DB_DOMAIN) 组成。
数据库例程由初始化参数文件中带有 INSTANCE_NAME 参数的例程名标识。INSTANCE_NAME 对应于例程的 SID。
配置带有 SERVICE_NAME (没有 S) 参数的连接描述符以连接到 Oracle8i 数据库。例如,下面的连接描述符包含一个位于 sales1-sun 主机上的监听程序的地址,此监听程序监听称为 sales.us.acme.com 的数据库服务的连接请求:
sales=
(description=
(address=(protocol=tcp)(host=sales-sun1)(port=1521))
(connect_data=
(service_name=sales.us.acme.com)))
|
|
另请参阅: |
作为另外一种选择,可以配置连接描述符带有 INSTANCE_NAME 参数以连接到数据库的特定例程。如果您有一个具有多个例程的 Oracle Parallel Server,那么这种配置可能是必要的。
例如,下面的连接描述符包含一个位于 sales-sun1 上的监听程序地址,此监听程序监听与 sales.us.acme.com 数据库相关联的称为 sales1 的例程的连接请求:
sales=
(description=
(address=(protocol=tcp)(host=sales-sun1)(port=1521))
(connect_data=
(instance_name=sales1)
(service_name=sales.us.acme.com)))
这是 Net8 Configuration Assistant 不支持的高级特性。
|
|
另请参阅:关于在连接描述符的 |