Oracle学习笔记之12C中的PDB自启动-阿里云开发者社区

开发者社区> 数据库> 正文

Oracle学习笔记之12C中的PDB自启动

简介: Oracle学习笔记之12C中的PDB自启动

在Oracle 12C版本中,CDB启动后,PDB是MOUNT状态,而不是和CDB一样的READ WRITE状态。启动PDB需要手动在CBD下执行PDB启动命令,例如,alter pluggable database all open,启动所有的PDB,这也有些麻烦,下面来介绍2种PDB的自启动方法。
1.在12.1.0.1版本,PDB是不支持自启动的,只能通过触发器来实现
在CDB种创建触发器,在CDB启动时启动PDB
下面是启动所有PDB

CREATE TRIGGER open_pdbs
AFTER STARTUP
ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'alter pluggable database all open';
END open_all_pdbs;
/

如果要单独启动PDB,修改启动语句即可
单独启动PDB1

CREATE TRIGGER open_pdbs
AFTER STARTUP
ON DATABASE
BEGIN
EXECUTE IMMEDIATE 'alter pluggable database pdb1 open';
END open_all_pdbs;
/

2.从12.1.0.2版本,PDB开始支持自启动,通过alter pluggable database [pdb_name | all] save state命令来实现,该命令会记录PDB当前状态到数据字典dba_pdb_saved_states中,在下次启动CDB时,会查询该视图中的PDB状态,如果PDB是OPEN,那么就启动PDB

alter pluggable database [pdb_name | all] save state;

查询记录的PDB状态

select con_name,state from dba_pdb_saved_states;

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

其他文章