一、介绍
二、常用命令:
创建容器数据库: create pluggable database pdb2 admin user admin identified by admin;
克隆一个新的PDB: create pluggable databse pdb3 from pdb2
切换数据库 :alter session set container=cdb$root;
alter session set container=ORCLPDB;
查询所有的可插拔数据库:select con_id, dbid, guid, name , open_mode from v$pdbs;
查看当前容器:show con_name;
打开数据库:alter database ORCLPDB open;
关闭一个pdb和所有pdb:alter pluggable database pdb4 close
alter pluggable database all close;
用户的创建:
CDB中创建用户必须要以C##开头,为公共用户,在CDB中不允许创建本地用户
PDB中不允许创建公用用户,在CDB中创建公用用户默认情况下是在所有PDB下创建了相同的用户,及container =all;
create user C##SHEN identified by 123456 default tablespace WUXIA temporary tablespace WUXIATEMP;(CDB)
create user ZHEN identified by 123456 default tablespace ZHAN temporary tablespace ZHENTEMP; (PDB)
注意在CDB中创建用户时指定的表空间,必须在PDB中也要有相同名字的表空间(数据文件位置不同)
用户登录:
sqlplus system/123456@orclpdb as sysdba;
备份还原:
12c推出了可插拔数据库,在一个容器cdb中以多租户的形式同时存在多个数据库pdb。在为pdb做数据泵导入导出时和传统的数据库有少许不同。
1,需要为pdb添加tansnames
2,导入导出时需要在userid参数内指定其tansnames的值 比如 userid=user/pwd@tnsname
设置tnsnames.ora,增加pdborocl。SERVICE_NAME为pdb的实例名,这里为pdborcl
位置:oracle\product\12.2.0\dbhome_1\network\admin
orclpdb =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = xqzt)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME =orclpdb)
)
)