0

通常,Oracle 数据库 SID 包含在服务名称中。例如:SID:orcl & 服务名称:orcl.mycomp.com

因此,可以在不包括 SID 的情况下定义服务名称 例如:mydb.mycomp.com对于数据库 SID 是orcl.

4

2 回答 2

1

如果您的 SID 为 orcl,则可以通过在 orcl 数据库中设置 Oracle 系统参数 SERVICE_NAMES 来将服务名称设置为 mydb.mycomp.com:

ALTER SYSTEM SET service_names = 'mydb.mycomp.com';

或者,如果您还想保留 orcl 作为服务名称:

ALTER SYSTEM SET service_names = 'orcl,mydb.mycomp.com';
于 2013-03-12T15:33:57.303 回答
1

SID 是数据库的标识符,但 service_names 是它提供的服务的名称,可以是功能性的而不是技术性的。

因此,您可能有一个提供发票服务、销售服务、消息服务并适当设置 service_name 的数据库。这样做的好处是侦听器可以根据请求的服务选择要连接的适当数据库,并且可以从多个数据库(通过复制)获得单个服务。

您还可以将服务从一个数据库移动到另一个数据库,并通过 v$session 和 v$sql 监控服务活动。

也看看这个:http ://www.ardentperf.com/pub/services-schneider07.pdf

于 2013-03-12T15:41:48.173 回答