欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Oracle12c启动时PDBs的自动打开问题解决

程序员文章站 2022-06-21 07:54:50
pluggable database(pdb)为oracle 12c中的一个重要的新特性, 但启动12c实例时并不会自动打开pdb,这样,在启动实例后必须手动打开pdbs。 1. 实例启动后,手工打...

pluggable database(pdb)为oracle 12c中的一个重要的新特性, 但启动12c实例时并不会自动打开pdb,这样,在启动实例后必须手动打开pdbs。

1. 实例启动后,手工打开pdbs

[oracle@12c ~]$ sqlplus "/as sysdba"

sql> select open_mode from v$database;

sql> alter pluggable database pdb1 open;

sql> alter pluggable database pdb2 open;

sql> select con_id,name,open_mode from v$pdbs;

--或用all选项启动所有pdbs

sql> alter pluggable database all open;

2. 实例启动时,自动打开所有pdbs。

如果不想或不方便手工打开pdbs,也可通过定制trigger在启动实例时将pdbs自动打开。

cdb$root中sys用户下创建如下触发器即可:

create trigger open_all_pdbs

after startup

on database

begin

execute immediate 'alter pluggable database all open';

end open_all_pdbs;

/

这样,在oracle 12c实例启动时,其所有的pdbs也会自动打开并可供用户使用了。