ITPub博客

首页 > 数据库 > Oracle > CDB与PDB的系统关系

CDB与PDB的系统关系

原创 Oracle 作者:georgehmwang 时间:2014-12-24 22:25:36 0 删除 编辑
容器数据库CDB和可插拔数据库PDB是Oracle 12c的新特性。在CDB中最高层container被称为CDB$ROOT;用来创建其他PDB的模板PDB被称为PDB$SEED;CDB中可以用PDB$SEED创建多个PDB。

在下面的例子中,CDB中有三个可插拔数据库,其中一个是PDB$SEED,另外两个是用PDB$SEED为模板创建的PDB1和PDB2。

在CDB$ROOT中运行以下SQL语句:
SQL>  select name, open_mode from v$pdbs;
NAME                         OPEN_MODE
--------------------------  ----------
PDB$SEED                 READ ONLY
PDB1                           READ WRITE
PDB2                           READ WRITE

SQL> select name from v$datafile;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/OSTE/system01.dbf
/u01/app/oracle/oradata/OSTE/sysaux01.dbf
/u01/app/oracle/oradata/OSTE/undotbs01.dbf
/u01/app/oracle/oradata/OSTE/pdbseed/system01.dbf
/u01/app/oracle/oradata/OSTE/users01.dbf
/u01/app/oracle/oradata/OSTE/pdbseed/sysaux01.dbf
/u01/app/oracle/oradata/OSTE/PDB1/system01.dbf
/u01/app/oracle/oradata/OSTE/PDB1/sysaux01.dbf
/u01/app/oracle/oradata/OSTE/PDB1/PDB1_users01.dbf
/u01/app/oracle/oradata/OSTE/PDB2/system01.dbf
/u01/app/oracle/oradata/OSTE/PDB2/sysaux01.dbf
/u01/app/oracle/oradata/OSTE/PDB2/PDB2_users01.dbf

12 rows selected.

SQL>  select name from v$controlfile;
NAME
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/OSTE/control01.ctl
/u01/app/oracle/fast_recovery_area/OSTE/control02.ctl

SQL> select member from v$logfile;
MEMBER
--------------------------------------------------------------------------------
/u01/app/oracle/oradata/OSTE/redo03.log
/u01/app/oracle/oradata/OSTE/redo02.log
/u01/app/oracle/oradata/OSTE/redo01.log

SQL> select con_id,name from v$tempfile;
    CON_ID NAME
---------- --------------------------------------------------------------------------------
         1 /u01/app/oracle/oradata/OSTE/temp01.dbf
         2 /u01/app/oracle/oradata/OSTE/pdbseed/pdbseed_temp012014-12-18_07-02-56-PM.dbf
         3 /u01/app/oracle/oradata/OSTE/PDB1/temp012014-12-18_07-02-56-PM.dbf
         4 /u01/app/oracle/oradata/OSTE/PDB2/temp012014-12-18_07-02-56-PM.dbf

由以上可以看出以下几点
1.CDB和每个PDB都有各自的SYSTEM和SYSAUX表空间
2.PDB没有独自的控制文件和重做日志文件
3.PDB可以有自己的临时表空间
4.整个CDB只有一个UNDO表空间,PDB没有独自的UNDO表空间

另外,CDB和PDB使用相同的listener.ora, tnsnames.ora和sqlnet.ora文件,使用同一个SGA,使用相同的一组后台OS进程。

TIP: 如何登录PDB
$ sqlplus sys/@localhost:1521/pdb1 as sysdba
$ sqlplus sys/@localhost:1521/pdb2 as sysdba

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29960937/viewspace-1379137/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2014-10-16

  • 博文量
    16
  • 访问量
    74670