一、Oracle 12c Multitenant Architecture多租户框架最重要的2个概念是容器数据库CDB(multitenant container database)和可热插拔数据库PDB(pluggable databases)。可以把CDB想象成一个大的容器,这个大的容器在物理上是一个整体,在这个大的容器中还有一些小的容器PDB。容器的目的是将Oracle固有元数据和用户数据(包括用户元数据)隔离。
二、CDB和PDB含义
CDB:容器数据库,名称为 CDB$ROOT。其作用就是系统数据库,sys等账号都保存在里面。同时它可以管理PDB数据库。
PDB:可插拔的数据库。用户可以在PDB自建数据库。Oracle安装成功后有个默认的pdb数据库(在安装Oracle时自己设定),PDB中自带有PDB$SEED,属于PDB的模板数据库,自己创建数据库的时候以此库为模板。

三、CDB和PDB实操
1、查询当前所在容器
# show con_name;
2、查看所有的PDB
# show pdbs;
3、切换到指定的pbd
# alter session set container=XRGPDB;
# alter session set container= PDB$SEED ;
4、创建新的NEWPDB
# 切换到pdbseed,查询模板pdb的pdbseed的数据文件路径

# 在pdbseed 同级目录创建NEWPDB
# mkdir -p /opt/oracle/oradata/ORCLCDB/NEWPDB
# 创建新的NEWPDB
# create pluggable database NEWPDB admin user newxrg identified by roles=(dba,connect,resource) file_name_convert=('/opt/oracle/oradata/ORCLCDB/pdbseed','/opt/oracle/oradata/ORCLCDB/N;WPDB');
# 删除pbd
# drop pluggable database 数据库名称 including datafiles;
增加监听,停止监听,开启监听
(SID_DESC = (GLOBAL_DBNAME = NEWPDB) (SID_NAME = ORCLCDB) (ORACLE_HOME = /opt/oracle/product/19c/dbhome_1) )
讯享网

查看pdb打开情况
# 查询所有pdb打开情况
# select name,open_mode from v$pdbs;
# 创建表空间
# CREATE BIGFILE TABLESPACE "NEWXRG" DATAFILE '/opt/oracle/oradata/ORCLCDB/NEWPDB/newxrg.dbf' SIZE 100M AUTOEXTEND ON NEXT 100M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
这样这个新创建的数据库就可以使用了
四、创建用户
1、全局用户
create user c用户名 identified by 密码;
2、某个pdb的用户
# alter session set container=XRGPDB;
# create user 用户名 identified by 密码;
3、删除用户
# drop user c用户名;
# drop user 用户名;


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/15967.html