程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle教程 >> Oracle12c如何連接到CDB和PDB

Oracle12c如何連接到CDB和PDB

編輯:Oracle教程

Oracle12c如何連接到CDB和PDB



1 連接到CDB

和普通實例一樣的連接。 指定ORACLE_SID 以後可以使用OS認證,也可以使用密碼進行連接。

[oracle@Ora12c /]$ echo $ORACLE_SID

cndba

[oracle@Ora12c /]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.1.0 Production onMon Apr 28 11:33:43 2014

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

Connected to:

Oracle Database 12c Enterprise EditionRelease 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, AdvancedAnalytics and Real Application Testing options

SQL> conn system/oracle

Connected.

SQL>

--查看CDB中可用的service:

SQL> COLUMN name FORMAT A30

SQL> SELECT name,pdb

2 FROM v$services

3 ORDER BY name;

NAME PDB

------------------------------------------------------------

SYS$BACKGROUND CDB$ROOT

SYS$USERS CDB$ROOT

cndba CDB$ROOT

cndbaXDB CDB$ROOT

pcndba2 PCNDBA2

pdbcndba PDBCNDBA

6 rows selected.

--通過lsnrctl 也可以判斷:

[oracle@Ora12c /]$ lsnrctl service

LSNRCTL for Linux: Version 12.1.0.1.0 -Production on 28-APR-2014 11:35:31

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

Connecting to(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))

Services Summary...

Service "cndba" has 1instance(s).

Instance "cndba", status READY, has 1 handler(s) for thisservice...

Handler(s):

"DEDICATED" established:0 refused:0 state:ready

LOCAL SERVER

Service "cndbaXDB" has 1instance(s).

Instance "cndba", status READY, has 1 handler(s) for thisservice...

Handler(s):

"D000" established:0 refused:0 current:0 max:1022 state:ready

DISPATCHER <machine: Ora12c, pid: 10085>

(ADDRESS=(PROTOCOL=tcp)(HOST=Ora12c)(PORT=14696))

Service "pcndba2" has 1instance(s).

Instance "cndba", status READY, has 1 handler(s) for thisservice...

Handler(s):

"DEDICATED" established:0 refused:0 state:ready

LOCAL SERVER

Service "pdbcndba" has 1instance(s).

Instance "cndba", status READY, has 1 handler(s) for thisservice...

Handler(s):

"DEDICATED" established:0 refused:0 state:ready

LOCAL SERVER

The command completed successfully

[oracle@Ora12c /]$

通過這些service,就可以遠程連接CDB。

--EZCONNECT

C:\Users\Dave>sqlplussystem/[email protected]:1521/cndba

SQL*Plus: Release 11.2.0.1.0 Production on 星期三 4月 30 11:36:48 2014

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

連接到:

Oracle Database 12c Enterprise EditionRelease 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, AdvancedAnalytics and Real Application Testing options

SQL>

--通過TNSNAMES.ORA連接:

在tnsnames.ora 中配置如下:

cndba =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.10)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = cndba)

)

)

--連接:

C:\Users\Dave>sqlplussystem/oracle@cndba

SQL*Plus: Release 11.2.0.1.0 Production on 星期三 4月 30 11:40:01 2014

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

連接到:

Oracle Database 12c Enterprise EditionRelease 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, AdvancedAnalytics and Real Application Testing options

SQL>

2 在不同Container database中切換

在12c的架構中,因為有CDB和 PDB的存在,所以會有很多不同的container,所以在連接到不同的container時,就需要進行切換。

--查看當前的container:

SQL> show con_name

CON_NAME

------------------------------

CDB$ROOT

SQL> SELECT SYS_CONTEXT('USERENV','CON_NAME') FROM dual;

SYS_CONTEXT('USERENV','CON_NAME')

--------------------------------------------------------------------------------

CDB$ROOT

SQL> set lin 140

SQL> select con_id, dbid,guid, name , open_mode from v$pdbs;

CON_ID DBID GUID NAME OPEN_MODE

---------- ------------------------------------------ ---------- ----------

2 4088301206 F7C1E3C96BBF0585E0430A01A8C05459 PDB$SEED READ ONLY

3 426143573F7C209EB1DFC0854E0430A01A8C0B787 PDBCNDBA READ WRITE

4 1231796139 F812DE1B6A8F363AE0430A01A8C0C759 PCNDBA2 READ WRITE

--切換container:

SQL> alter session setcontainer=pcndba2;

Session altered.

SQL> show con_name

CON_NAME

------------------------------

PCNDBA2

3 連接到PDB

--EZCONNECT:

C:\Users\Dave>sqlplussystem/[email protected]:1521/pcndba2

SQL*Plus: Release 11.2.0.1.0 Production on 星期三 4月 30 11:54:30 2014

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

連接到:

Oracle Database 12c Enterprise EditionRelease 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, AdvancedAnalytics and Real Application Testing options

SQL>

--TNSNAMES.ora

在tnsnames.ora 中添加如下內容:

pcndba =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.10)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = pcndba2)

)

)

C:\Users\Dave>sqlplussystem/oracle@pcndba

SQL*Plus: Release 11.2.0.1.0 Production on 星期三 4月 30 11:55:50 2014

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

連接到:

Oracle Database 12c Enterprise EditionRelease 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, AdvancedAnalytics and Real Application Testing options

SQL>

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved