千家信息网

CDB和PDB的创建、连接、启动和关闭方法

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,本篇内容主要讲解"CDB和PDB的创建、连接、启动和关闭方法",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"CDB和PDB的创建、连接、启动和关闭方法"吧!
千家信息网最后更新 2026年10月31日CDB和PDB的创建、连接、启动和关闭方法

本篇内容主要讲解"CDB和PDB的创建、连接、启动和关闭方法",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"CDB和PDB的创建、连接、启动和关闭方法"吧!

一、CDB和PDB基本管理

基本概念:

Multitenant Environment:多租户环境

CDB(Container Database):数据库容器

PDB(Pluggable Database):可插拔数据库

二、创建

2.1创建CDB

PDB包含在CDB中,所以,要创建PDB,必须先创建CDB。一台机器上可以有多个CDB。Oracle软件安装完成后,就可以创建CDB
启动DBCA
C:\app\oracle\product\12.1.0\dbhome_1\BIN\dbca.bat)




2.2创建PDB

C:\app\oracle\product\12.1.0\dbhome_1\BIN\dbca.bat






三、连接

3.1连接CDB

Sqlplus默认连接CDB

sqlplus sys/oracle as sysdba

3.2连接PDB

pdb可以通过在CDB中alter session container

alter session set container=pdb1

也可以直接通过tns方式(如下)登录

sqlplus sys/oracle@pdb1 as sysdba

其中tnsnames.ora添加

PDB1 =    (DESCRIPTION =        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))            (CONNECT_DATA =                (SERVER = DEDICATED)                (SERVICE_NAME = pdb1)            )        )

四、启动与关闭

4.1启动关闭CDB

SQL> show con_nameCON_NAME------------------------------CDB$ROOTSQL> shutdown immediate数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startupORACLE 例程已经启动。Total System Global Area 5044088832 bytesFixed Size 2413072 bytesVariable Size 1040190960 bytesDatabase Buffers 3992977408 bytesRedo Buffers 8507392 bytes数据库装载完毕。数据库已经打开。SQL> select con_id,dbid,NAME,OPEN_MODE from v$pdbs;CON_ID DBID NAME OPEN_MODE---------- ---------- ------------------------------ ----------4122484437 PDB$SEED READ ONLY3387525155 PDB1 MOUNTED3946119498 PDB2 MOUNTEDSQL>

从上面的操作中可以看到数据库启动的时候所有的PDBs的状态为MOUNTED

4.2启动关闭PDB

pdb的管理可以在cdb中进行也可以在pdb中进行,如果是cdb中进行,需要PLUGGABLE关键字,如果是在pdb中直接和普通数据库一样

SQL> show con_nameCON_NAME------------------------------CDB$ROOTSQL>  select con_id,dbid,NAME,OPEN_MODE from v$pdbs;    CON_ID       DBID NAME                           OPEN_MODE---------- ---------- ------------------------------ ----------4122484437 PDB$SEED                       READ ONLY3387525155 PDB1                           MOUNTED3946119498 PDB2                           MOUNTEDSQL> alter pluggable database pdb1 open;插接式数据库已变更。SQL>  select con_id,dbid,NAME,OPEN_MODE from v$pdbs;    CON_ID       DBID NAME                           OPEN_MODE---------- ---------- ------------------------------ ----------4122484437 PDB$SEED                       READ ONLY3387525155 PDB1                           READ WRITE3946119498 PDB2                           MOUNTEDSQL> alter pluggable database pdb2 open;插接式数据库已变更。SQL>  select con_id,dbid,NAME,OPEN_MODE from v$pdbs;    CON_ID       DBID NAME                           OPEN_MODE---------- ---------- ------------------------------ ----------4122484437 PDB$SEED                       READ ONLY3387525155 PDB1                           READ WRITE3946119498 PDB2                           READ WRITESQL> alter pluggable database pdb1 close;插接式数据库已变更。SQL>  select con_id,dbid,NAME,OPEN_MODE from v$pdbs;    CON_ID       DBID NAME                           OPEN_MODE---------- ---------- ------------------------------ ----------4122484437 PDB$SEED                       READ ONLY3387525155 PDB1                           MOUNTED3946119498 PDB2                           READ WRITESQL> alter pluggable database pdb2 close;插接式数据库已变更。SQL>  select con_id,dbid,NAME,OPEN_MODE from v$pdbs;    CON_ID       DBID NAME                           OPEN_MODE---------- ---------- ------------------------------ ----------4122484437 PDB$SEED                       READ ONLY3387525155 PDB1                           MOUNTED3946119498 PDB2                           MOUNTEDSQL> alter pluggable database all open;插接式数据库已变更。SQL> alter pluggable database all close;插接式数据库已变更。SQL> alter session set container=pdb1 ;会话已更改。SQL>  select con_id,dbid,NAME,OPEN_MODE from v$pdbs;    CON_ID       DBID NAME                           OPEN_MODE---------- ---------- ------------------------------ ----------3387525155 PDB1                           MOUNTEDSQL> startup插接式数据库已打开。SQL> shutdown插接式数据库已关闭。SQL>  select con_id,dbid,NAME,OPEN_MODE from v$pdbs;    CON_ID       DBID NAME                           OPEN_MODE---------- ---------- ------------------------------ ----------3387525155 PDB1                           MOUNTEDSQL>

4.3自动启动所有PDB

从上面的操作中可以看到数据库启动的时候所有的PDBs的状态为MOUNTED,在实际应用可以考虑增加如下的触发器使所有的PDBs都处于打开状态。

create or replace trigger sys.after_startup after startup on databasebeginexecute immediate 'alter pluggable database all open ' ;end after_startup ;

验证过程

SQL> create or replace trigger sys.after_startup after startup on databasebeginexecute immediate 'alter pluggable database all open ' ;end after_startup ;/触发器已创建SQL> shutdown数据库已经关闭。已经卸载数据库。ORACLE 例程已经关闭。SQL> startupORACLE 例程已经启动。Total System Global Area 5044088832 bytesFixed Size 2413072 bytesVariable Size 1040190960 bytesDatabase Buffers 3992977408 bytesRedo Buffers 8507392 bytes数据库装载完毕。数据库已经打开。SQL> select con_id,dbid,NAME,OPEN_MODE from v$pdbs;CON_ID DBID NAME OPEN_MODE---------- ---------- ------------------------------ ----------4122484437 PDB$SEED READ ONLY3387525155 PDB1 READ WRITE3946119498 PDB2 READ WRITESQL>

五、常用SQL

--查看ORACLE 12C版本select * from v$version;--查看容器名称和IDshow con_name ;--查看状态select name ,open_mode from v$pdbs ;--切换containeralter session set container=pdb1

到此,相信大家对"CDB和PDB的创建、连接、启动和关闭方法"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

数据 数据库 插接式 方法 状态 内容 实际 容器 时候 触发器 面的 学习 管理 装载 实用 普通 更深 关键 关键字 兴趣 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 喔噻互联网科技有限公司 湖北九亚互联网络科技有限公司 互联网科技公司简介 互联网是第几次科技革命的成果 互联网科技革命 朗涯互联网科技 伴你行互联网科技有限公司 海南科技产业互联网平台 广州优美互联网科技 广州恒生互联网科技有限 彤创互联网科技有限公司 互联网媒体平台算高科技产业 黑科技 体验场景 互联网大会 卡尔迅互联网科技有限公司 互联网科技包装股 福州德业互联网科技 全球科技与互联网公司市值变化 互联网时代科技型公司的机会 中国新注册互联网科技 求路客互联网科技电话 广州为想互联网科技有限公司 江苏根荣互联网科技 为想互联网科技怎么样 互联网属科技 汽车互联网创新科技园 来此购互联网科技有限公司 如何创新互联网科技 用友工业互联网科技发展 锡山区互联网智能科技产品供应 长沙易易互联网科技有限公司
0