ITPub博客

首页 > 数据库 > Oracle > Oracle19c——CDB及PDB基本操作

Oracle19c——CDB及PDB基本操作

原创 Oracle 作者:sqysl 时间:2026-10-30 16:50:03 0 删除 编辑

1. 容器操作

1)查看当前容器
$ 
sqlplus username/password@tns_name
SQL> 
show con_name

SQL> 
select sys_context('USERENV','CON_NAME') conname from dual;

2)变更当前容器
--将容器切换到pdb1
SQL>
alter session set container=pdb1;
--将容器切换回cdb$root
SQL>
alter session set container=cdb$root;

2. PDB操作

1)查看

--查看当前容器
SQL>
show con_name

--显示PDB信息,CDB$ROOT下,显示所有PDB信息,否则,只显示当前PDB信息。
SQL> 
show pdbs;

--查询PDB信息,CDB$ROOT下,显示所有PDB信息,否则,只显示当前PDB信息。
SQL> 
colu name for a30
select name,open_mode from v$pdbs;

SQL> 
set linesize 300
select con_id,dbid,guid,name,open_mode from v$pdbs;

2)打开PDB
SQL> 
show con_name

--当前容器为CDB$ROOT,打开pdb1
SQL> 
alter pluggable database pdb1 open instances=all;

--当前容器为CDB$ROOT,打开所有pdb
alter pluggable database all open instacnes=all;

--当前容器为pdb1
SQL> 
alter session set container=pdb1; 
startup;
或
alter database open;

3)关闭PDB
--显示当前容器
SQL> 
show con_name
--当前容器为CDB$ROOT,关闭pdb1
SQL> 
alter pluggable database pdb1 close instances=all;
--当前容器为CDB$ROOT,关闭所有pdb
alter pluggable database all close instances=all;

--当前容器为pdb1
SQL>
shutdown immediate;

4)设置PDB自启动
--显示当前容器及用户,须为cdb$root和sys
SQL> 
show con_name
show user

--创建触发器
SQL> 
create or replace trigger open_all_pdbs
after startup on database
begin
   execute immediate 'alter pluggable database all open instances=all';
end;
/

5)删除PDB
--显示当前容器
SQL> 
show con_name
--关闭要删除的PDB(pdb1)
SQL> 
alter pluggable database pdb1 close instances=all;
--删除要删除的PDB(pdb1)
drop pluggable database pdb1 including datafiles;   


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8484829/viewspace-3187235/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论
大学毕业至今,一直深耕于数据库领域20余载,擅长数据库优化、数据库分析诊断、数据库规划设计等,曾任职多家知名大型企业,多次独立承担并成功上线关键大型项目。

注册时间:2008-06-27

  • 博文量
    366
  • 访问量
    729009