oracle 12c容器库操作

Scroll Down

查看数据库

  • 查看是否为cdb
select cdb from v$database;

image.png

  • 查看当前容器
show con_name;

image.png

  • 查看pdb
select con_id,dbid,guid,name,open_mode from v$pdbs;

image.png

-- 需要dba,system用户无法使用
show pdbs;

image.png

创建和删除PDB

使用CREATE PLUGGABLE DATABASE可以从SEED来创建一个PDB。当前的容器必须是CDB root。

  • 创建
CREATE PLUGGABLE DATABASE ddpdb ADMIN USER ddadmin IDENTIFIED BY 123456 ROLES=(CONNECT) file_name_convert=('/ora/oradata/orcl/pdbseed','/ora/oradata/orcl/ddpdb') path_prefix='/ora/oradata/orcl/ddpdb';

image.png

  • 删除
drop pluggable database ddpdb including datafiles;

image.png

  • 启动和关闭PDB
 alter pluggable database ddpdb open;
 alter pluggable database ddpdb close;

image.png

  • 切换容器
alter session set container=ddpdb;
alter session set container=cdb$root

image.png

sqlplus连接pdb

在配置文件中添加pdb配置
/ora/product/network/admin/tnsnames.ora
再使用sqlplus命令连接

jdbc连接pdb

url:
jdbc:oracle:thin:@ 192.168.195.135:1521/ddpdb.localdomain
连接pdb不能用传统的写法(jdbc:oracle:thin:@ 192.168.195.135:1521:ddpdb.localdomain),不然会报以下错误:
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor

查询服务名
show parameter service_name
修改服务名
修改Oracle安装目录下tnsnames.ora