天天看點

12c通過service 連接配接pdb

<roidb01:cdb1:/home/oracle>$lsnrctl service

LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 06-MAR-2018 06:52:45

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orcl)(PORT=1521)))
Services Summary...
Service "cdb1" has 1 instance(s).
  Instance "cdb1", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
Service "cdb1XDB" has 1 instance(s).
  Instance "cdb1", status READY, has 1 handler(s) for this service...
    Handler(s):
      "D000" established:0 refused:0 current:0 max:1022 state:ready
         DISPATCHER <machine: roidb01, pid: 2787>
         (ADDRESS=(PROTOCOL=tcp)(HOST=roidb01)(PORT=17408))
Service "pdb11" has 1 instance(s).
  Instance "cdb1", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
The command completed successfully
<roidb01:cdb1:/home/oracle>$

SQL> set line 120
SQL> select name,network_name,pdb from v$services;

NAME                           NETWORK_NAME                   PDB
------------------------------ ------------------------------ ------------------------------
sales                          sales1                         PDB11
pdb11                          pdb11                          PDB11
cdb1XDB                        cdb1XDB                        CDB$ROOT
cdb1                           cdb1                           CDB$ROOT
SYS$BACKGROUND                                                CDB$ROOT
SYS$USERS                                                     CDB$ROOT

6 rows selected.

SQL> 

SQL> alter session set container=pdb11;

Session altered.

SQL> select name,network_name,pdb from v$services;

NAME                           NETWORK_NAME                   PDB
------------------------------ ------------------------------ ------------------------------
sales                          sales1                         PDB11     ##手動建立的服務
pdb11                          pdb11                          PDB11

SQL> exec dbms_service.start_service('sales');   ##啟動服務

PL/SQL procedure successfully completed.

SQL> 

<roidb01:cdb1:/u01/app/oracle/product/12.1.0/dbhome_1/network/admin>$lsnrctl service;

LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 06-MAR-2018 06:58:04

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=orcl)(PORT=1521)))
Services Summary...
Service "cdb1" has 1 instance(s).
  Instance "cdb1", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
Service "cdb1XDB" has 1 instance(s).
  Instance "cdb1", status READY, has 1 handler(s) for this service...
    Handler(s):
      "D000" established:0 refused:0 current:0 max:1022 state:ready
         DISPATCHER <machine: roidb01, pid: 2787>
         (ADDRESS=(PROTOCOL=tcp)(HOST=roidb01)(PORT=17408))
Service "pdb11" has 1 instance(s).
  Instance "cdb1", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
Service "sales1" has 1 instance(s).    ##服務已經通過pmon注冊
  Instance "cdb1", status READY, has 1 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
The command completed successfully
<roidb01:cdb1:/u01/app/oracle/product/12.1.0/dbhome_1/network/admin>$

<roidb01:cdb1:/u01/app/oracle/product/12.1.0/dbhome_1/network/admin>$sqlplus sys/oracle@roidb01:1521/sales1 as sysdba   ##通過服務名連接配接pdb

SQL*Plus: Release 12.1.0.2.0 Production on Tue Mar 6 06:58:39 2018

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> show pdbs

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         3 PDB11                          READ WRITE NO
SQL> 

##建立、啟動、關閉服務的相關指令,重新開機後服務丢失,大家可以自己測試
SQL> exec dbms_service.start_service('sales');

PL/SQL procedure successfully completed.

SQL> 
SQL> exec dbms_service.stop_service('sales');

PL/SQL procedure successfully completed.

SQL> exec dbms_service.delete_service('sales');

PL/SQL procedure successfully completed.

SQL> exec dbms_service.create_service('sales','sales1');

PL/SQL procedure successfully completed.           

繼續閱讀