CDB、PDB的创建、连接、启动、关闭方法
1. CDB和PDB的基础管理
基本概念:
Multitenant Environment:多租户环境
CDB(Container Database):数据库容器
< p>PDB(Pluggable Database):可插拔数据库2.创建
2.1 创建CDB
PDB包含在CDB中,所以要创建PDB,必须先创建CDB。一台机器上可以有多个CDB。 Oracle软件安装完成后,可以创建CDB
启动DBCA
C:\app\oracle\product\12.1.0\dbhome_1\BIN\dbca.bat)
< br/>
2.2 创建PDB
C:\app\oracle\product\12.1.0\dbhome_1\BIN\dbca.bat
3.连接
3.1 Co连接到CDB
Sqlplus默认连接到CDB
sqlplus sys/oracle as sysdba
3.2 连接PDB
可以通过CDB中的alter session container更改pdb
alter session set container=pdb1
p>
或者直接通过tns(如下)登录
sqlplus sys/oracle@pdb1 as sysdba
其中tnsnames.ora添加< /p>
PDB1 = (描述 = (地址 = (协议 = TCP)(主机 = 本地主机)(端口 = 1521)) (CONNECT_DATA = (服务器 = 专用) (SERVICE_NAME = pd b1) 至 >4.1启动和关闭CDB
SQL> show con_nameCON_NAME--------------------------------CDB $ROOTSQL> 关闭即时消息mediate数据库已关闭。数据库已卸载。 ORACLE例程已关闭。 SQL>startupORACLE 例程已启动。系统全局区域总计 5044088832 字节固定大小 2413072 字节可变大小 1040190960 字节数据库缓冲区 3992977408 字节重做缓冲区 8507392 字节 数据库已加载。数据库已经打开。 SQL> 从 v$pdbs 选择 con_id,dbid,NAME,OPEN_MODE;CON_ID DBID NAME OPEN_MODE-------------------------------- ------------------ ----------4122484437 PDB$SEED 只读3387525155 PDB1 MOUNTED3946119498 PDB2 MOUNTEDSQL>从上面操作,可以看到数据库启动时所有PDB的状态都是MOUNTED
4.2启动和关闭PDB
pdb的管理可以在cdb或者pdb中进行。如果它是在 cdb 中完成并且需要 PLUGGABLE 关键字。如果是在pdb中做的话,直接和普通数据库一样
SQL> show con_nameCON_NAME-------------------- ---- --------CDB$ROOTSQL>从 v$pdbs 中选择 con_id、dbid、NAME、OPEN_MODE; CON_ID DBID 名称 OPEN_MODE------------------------------------------------------------------------ ---- ----------4122484437 PDB$SEED 只读3387525155 PDB1 MOUNTEDSQL> 更改可插入数据库 pdb1 打开;插件 数据库已更改。 SQL> 从 v$pdbs 选择 con_id,dbid,NAME,OPEN_MODE; CON_ID DBID 名称 OPEN_MODE ---------------------- ------------------------------------ ------ - ----------4122484437 PDB$SEED 只读3387525155 PDB1 读写3946119498 PDB2 MOUNTEDSQL> alter pluggable database pdb2 open;插接数据库式已更改。 SQL> select con_id,dbid,NAME ,来自 v$pdbs 的 OPEN_MODE; CON_ID DBID 名称 OPEN_MODE---------- ---------- -------------------------- -- --- ----------4122484437 PDB$SEED只读3387525155 PDB1 READ WRITESQL> alter可插拔数据库 pdb1 close;可插拔数据库已更改。 SQL> 从 v$pdbs 选择 con_id,dbid,NAME,OPEN_MODE; CON_ID DBID 名称 --- ----------4122484437 PDB$SEED 只读3387525155 PDB1 READ WRITESQL> alter可插拔数据库 pdb2 close;可插拔数据库已更改。 SQL> 从 v$pdbs 选择 con_id,dbid,NAME,OPEN_MODE; CON_ID DBIDName -- ----------4122484437 PDB$SEED 只读3387525155 PDB1 安装3946119498 PDB2 MOUNTEDSQL> alter pluggable database all open;插接式数据库已更改。 SQL> alter pluggable database all close;可插拔数据库已更改被改变了。 SQL> alter session set container=pdb1 ;会话已更改。 SQL> 从 v$pdbs 选择 con_id,dbid,NAME,OPEN_MODE; CON_ID DBID 名称 OPEN_MODE---------- ---------- ----------- ------------------- ----------3387525155 PDB1 MOUNTEDSQL> startup插接式数据库已打开。 SQL> shutdown插件数据库已关闭。 SQL> 从 v$pdbs 选择 con_id,dbid,NAME,OPEN_MODE; CON_ID DBID 名称 OPEN_MODE---------- ---------- -------------------------- -- --- ----------3387525155 PDB1 MOUNTEDSQL>4.3 自动启动所有PDB
从上面的操作可以看到,所有的PDB 的状态为 MOUNTED。在实际应用中,可以考虑添加以下触发器来使所有PDB打开。
数据库启动后创建或替换触发器sys.after_startupbeginexecute立即'alterpluggabledatabaseallopen';endafter_startup;验证过程
SQL>创建或在数据库启动后替换触发器 sys.after_startupbeginexecute立即 'alterpluggabledatabaseallopen';endafter_startup;/ 触发器已创建 SQL> shutdown 数据库已关闭。数据库已卸载。ORACLE 例程已关闭。 SQL>startupORACLE 例程已启动。系统全局区域总计 5044088832 字节固定大小 2413072 字节可变大小 1040190960 字节数据库缓冲区 3992977408 字节重做缓冲区 8507392 字节 数据库已加载。数据库已经打开。 SQL> 从 v$pdbs 选择 con_id,dbid,NAME,OPEN_MODE;CON_ID DBID NAME OPEN_MODE-------------------------------- ----------------------------4122484437 PDB$SEED 只读3387525155 PDB1 READ WRITE3946119498 PDB2 READ WRITESQL>五、常用SQL
--查看ORACLE 12C版本 select * from v$version;--查看容器名称和IDshow con_name;--查看状态 select name,open_mode from v$pdbs;--切换容器alter session set container=pdb1至此,相信大家对“CDB和PDB的创建、连接、启动和关闭方法”有了更深入的了解,那么不妨在实践中做到这一点!这是网站。对于更多相关内容,您可以进入相关渠道进行查询。关注我们,继续学习!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > CDB、PDB的创建、连接、启动、关闭方法