Oracle 12c是一个功能十分强大的数据库系统,其提供了pdb和cdb两种数据库实例方式。PDB和CDB的具体含义是,PDB是指Pluggable Database,而CDB是指Container Database。PDB的概念是在Oracle 12c版本中引入的,其可以运行多个数据库,而每个数据库都是独立的。相对而言,CDB是一个包纳多个PDB的数据库实例,其管理多个PDB。
在Oracle 12c中,CDB是一个重要的概念,类似于管理多个互相独立的数据库实例。以往,每个数据库实例都需要独立的管理,这带来了维护上的很多复杂问题,如资源管理以及成本的提高。但是在CDB下就可以将多个数据库实例管理在一个容器中,这就非常的高效。在使用CDB时,其类似一个操作系统下的多个进程,每个进程执行不同的任务,但是又能共享操作系统的资源,从而更加高效的使用资源。
另外,在使用PDB时,需要在相应的CDB中创建对应的PDB。例如,可以通过以下的命令进行PDB的创建:
CREATE PLUGGABLE DATABASE pdb1 ADMIN USER pdb_admin IDENTIFIED BY password
STORAGE (MAXSIZE 10M) FILE_NAME_CONVERT=('/u01/oracle/pdbseed/','/u02/oracle/pdb1/');
上述代码中,创建了一个名为pdb1的PDB,其最大存储量为10M。在创建PDB时,也需要指定ADMIN USER和相应的密码,以及存储的路径。这些参数的设置都会影响到后面PDB的使用。
还有一点需要注意的是,在使用PDB时,需要使用相应的PDB的用户名和密码进行登录。这意味着,在使用PDB时,登录信息不能直接使用CDB的登录信息。
对于CDB和PDB的选择,需要按照实际业务需求选择。当每个数据库实例都需要独立进行管理时,使用PDB就比较合适。而在对多个数据库实例进行集中管理时,使用CDB会更加高效、灵活。
总之,Oracle 12c中的PDB和CDB的出现改变了以往数据库实例的管理方式,使得管理更加高效、灵活。在实际应用中,需要根据实际需求选择。同时,在使用PDB时,需要注意其独立管理的特点,而在使用CDB时需要注意多个数据库实例之间的协作和资源共享。