oracle 当有两个示例时如何连接到可插入数据库

stszievb  于 2023-10-16  发布在  Oracle
关注(0)|答案(1)|浏览(124)

我有两个集装箱数据库。

  1. SID my10,服务名为M10CDB
  2. SID my10c,服务名为MY10CL(它是第一个服务的克隆)
    这两个容器都有两个可插入的数据库,my10pdb和pdbseed。
    我如何区分这两个pluggable,即. my10pdb,属于不同的容器,如果我想直接连接到他们?
lsnrctl status

LSNRCTL for 64-bit Windows: Version 19.0.0.0.0 - Production on 17-JUL-2020 14:45:26

Copyright (c) 1991, 2019, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MYUPG05.myworld.com)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for 64-bit Windows: Version 19.0.0.0.0 - Production
Start Date                16-JUN-2020 02:22:27
Uptime                    31 days 12 hr. 22 min. 59 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   C:\app\oracle\product\19.3.0\dbhome_1\network\admin\listener.ora
Listener Log File         C:\app\oracle\diag\tnslsnr\MYUPG05\listener\alert\log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=MYUPG05.myworld.com)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
Services Summary...
Service "3541dad180144e9fb63afda77b213f89" has 2 instance(s).
  Instance "my10", status READY, has 1 handler(s) for this service...
  Instance "my10c", status READY, has 1 handler(s) for this service...
Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "MY10CDB" has 1 instance(s).
  Instance "my10", status READY, has 1 handler(s) for this service...
Service "MY10CL" has 1 instance(s).
  Instance "my10c", status READY, has 1 handler(s) for this service...
Service "MY10XDB" has 2 instance(s).
  Instance "my10", status READY, has 1 handler(s) for this service...
  Instance "my10c", status READY, has 1 handler(s) for this service...
Service "my10pdb" has 2 instance(s).
  Instance "my10", status READY, has 1 handler(s) for this service...
  Instance "my10c", status READY, has 1 handler(s) for this service...
The command completed successfully
3bygqnnd

3bygqnnd1#

它们必须具有唯一的服务名称。如果它们共享相同的服务名称,则侦听器将像对待RAC数据库一样对待它们,并随机将您连接到其中一个。
看看这些文章,它们详细描述了您的问题:

使用DBMS_SERVICE在新PDB中创建新服务并删除旧服务。

CONN / AS SYSDBA
ALTER SESSION SET CONTAINER=pdb1;

BEGIN
  DBMS_SERVICE.create_service(
    service_name => 'my_new_service',
    network_name => 'my_new_service'
  );
END;
/

BEGIN
  DBMS_SERVICE.start_service(
    service_name => 'my_new_service'
  );
END;
/

BEGIN
  DBMS_SERVICE.stop_service(
    service_name => 'my_old_service'
  );
END;
/

BEGIN
  DBMS_SERVICE.delete_service(
    service_name => 'my_old_service'
  );
END;
/

相关问题