课程表

Oracle 基础教程

Oracle 进阶教程

Oracle PL/SQL

Oracle OEM

Oracle 备份和恢复

Oracle RAC

工具箱
速查手册

Oracle CDB数据库创建

当前位置:免费教程 » 数据库/运维 » Oracle

Container Database(容器数据库,CDB)与Pluggabble Database(可插拔式数据库,PDB)是12c中一个标志性的新特性。下面,我们先来看一下CDB的创建。关于CBD新特性的管理, 我会在后面的博客中进行说明。

创建数据库,我们首先想到的就是dbca了,下面,我们来执行dbca命令,打开数据库创建助手来创建数据库。

Oracle CDB(Container Database)的创建

Oracle CDB(Container Database)的创建

我习惯选用高级模式进行创建,当然了原理是一样的。我们继续。

Oracle CDB(Container Database)的创建

Oracle CDB(Container Database)的创建

这里,我们注意一下。如果要创建CDB,那么我们把“Create As Container Database”这个选项选择上。下面的两项是说,我们创建CDB的时候,是否连同PDB也一起创建。这里,我选择了“Create an Empty Container Database”。PDB的创建,我会在后续进行说明。

Oracle CDB(Container Database)的创建

配置EM,指定端口。这里,我们使用默认的即可。当然了,我们也可以指定为1158。

Oracle CDB(Container Database)的创建

这里,我们可以看到,dbsnmp与sysman用户的密码设置没有了。用户是否还有,我们后续再进行验证。

Oracle CDB(Container Database)的创建

如果我们预先没有创建监听,我们可以在这里进行创建。相比以前,友好了很多。

Oracle CDB(Container Database)的创建

Oracle CDB(Container Database)的创建

Oracle CDB(Container Database)的创建

Oracle CDB(Container Database)的创建

Oracle CDB(Container Database)的创建

 这里,我们把生成创建数据库的脚本选项选择上。稍后我们来看一下这段脚本所做了那些事情。

Oracle CDB(Container Database)的创建

Oracle CDB(Container Database)的创建

开始创建数据库了。

Oracle CDB(Container Database)的创建

创建完成。

下面,我们来看一下创建数据库所生成的数据文件。

  1. oracle@solaris:~$ cd /u01/app/oracle/oradata/cdb12/
  2. oracle@solaris:/u01/app/oracle/oradata/cdb12$ ls
  3. control01.ctl redo01.log redo03.log system01.dbf undotbs01.dbf
  4. pdbseed redo02.log sysaux01.dbf temp01.dbf users01.dbf
  5. oracle@solaris:/u01/app/oracle/oradata/cdb12$

这里突出的一个地方是有一个pdbseed目录的生成,我们再到这个目录下看一下所生成的文件。

  1. oracle@solaris:/u01/app/oracle/oradata/cdb12$ cd pdbseed/
  2. oracle@solaris:/u01/app/oracle/oradata/cdb12/pdbseed$ ls
  3. pdbseed_temp012014-09-07_05-34-19-AM.dbf
  4. sysaux01.dbf
  5. system01.dbf
  6. oracle@solaris:/u01/app/oracle/oradata/cdb12/pdbseed$

我们发现,这个目录下面同样也有system与sysaux数据文件。这些数据文件就是CDB下,PDB的数据文件。

尽管我们刚才创建的时候没有选择要进行创建的PDB,但是它一样生成了一个。毫无疑问,根据推理,我们也可以想到,它就是一个默认的PDB了。没错,它确实是一个默认的pdb。

在CDB中,会有一个默认的PDB生成,它作为用户创建一系列PDB的一个模板。那么,这个名字是什么呢?当然了,我们也可以查看,如下:

  1. oracle@solaris:~$ sqlplus / as sysdba
  2.  
  3. SQL*Plus: Release 12.1.0.2.0 Production on Sun Sep 7 06:02:35 2014
  4.  
  5. Copyright (c) 1982, 2014, Oracle. All rights reserved.
  6.  
  7.  
  8. Connected to:
  9. Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
  10. With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
  11.  
  12. SQL> select name,open_mode
  13. 2 from v$pdbs
  14. 3 /
  15.  
  16. NAME OPEN_MODE
  17. ------------------------------ ----------
  18. PDB$SEED READ ONLY
  19.  
  20. SQL>

通过查询我们发现,这个默认的pdb的名称为PDB$SEED,而且是以Read Only的方式打开的。

现在,我们来小结一下。

创建一个CDB,会有一个默认的PDB生成,它的名称是PDB$SEED,而且是以只读的形式打开的。那么,刚才的那个pdbseed目录下的数据文件我们就不难理解了,它就是pdb$seed的数据文件。

转载本站内容时,请务必注明来自W3xue,违者必究。
 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号