oracle 12c多租户数据库包含容器库(CDB)和PDB。
CDB叫做容器库,也叫做主库。
PDB也叫做子数据库。
12cR2版本中可以支持4096个PDB。
12cR2中,可以刷新一个只读的PDB;
12cR2中,可以闪回一个独立的PDB;
判断一个数据库是CDB还是非CDB:
select name,created,cdb,con_id from v$database;
查询PDB:
select name,open_mode,open_time from v$pdbs;
共享信息:
1、后台进程/SGA 根数据库和所有的PDB共享
2、字符集 根数据库和所有的PDB共享
3、重做日志 根数据库和所有的PDB共享
4、时区 共享或各PDB单独设置
5、初始化参数 共享或各PDB单独设置
6、临时表空间 各PDB共享或创建各自独立的本地TEMP
7、SYSTEM和SYSAUX 根据数据库和所有的PDB共享
8、数据文件 根数据库和所有的PDB独立
删除PDB:
drop pluggable database dwpdb keep datafiles;
drop pluggable database dwpdb including datafiles;
在容器之间转移PDB:
alter session set container=PDB1;
alter session set container=CDB1;
alter session set container=PDB$SEED;
alter session set container=CDB$$ROOT;
打开和关闭PDB:
alter session set container=pdb_sss;
alter pluggable database close immediate;
alter pluggable database open read write;
alter pluggable database close; (---shutdown)
alter pluggable database open upgrade; (---migrate)