2.oracle 12c 创建-访问-关闭-删除PDB

1.创建PDB

SQL> select name from v$datafile;

NAME

--------------------------------------------------------------------------------

/u01/app/oracle/oradata/ora12c/system01.dbf

/u01/app/oracle/oradata/ora12c/pdbseed/system01.dbf

/u01/app/oracle/oradata/ora12c/sysaux01.dbf

/u01/app/oracle/oradata/ora12c/pdbseed/sysaux01.dbf

/u01/app/oracle/oradata/ora12c/undotbs01.dbf

/u01/app/oracle/oradata/ora12c/users01.dbf

/u01/app/oracle/oradata/ora12c/EMP/system01.dbf

/u01/app/oracle/oradata/ora12c/EMP/sysaux01.dbf

/u01/app/oracle/oradata/ora12c/EMP/EMP_users01.dbf

9 rows selected.

SQL> alter system set db_create_file_dest=‘/u01/app/oracle/oradata/ora12c/dsg‘;

System altered.

SQL> create pluggable database dsg admin user hxy identified by hxy roles=(connect);

Pluggable database created.

要先设置db_create_file_dest,否则创建PDB的时候报下面的错误:

SQL> create pluggable database dsg admin user hxy identified by hxy roles=(connect);

create pluggable database dsg admin user hxy identified by hxy roles=(connect)

*

ERROR at line 1:

ORA-65016: FILE_NAME_CONVERT must be specified

查看

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

CON_ID NAME                           OPEN_MODE

---------- ------------------------------ ----------

2 PDB$SEED                       READ ONLY

3 EMP                                READ WRITE

4 DSG                                MOUNTED

启动DSG

SQL> alter pluggable database dsg open;

Pluggable database altered.

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

CON_ID NAME                           OPEN_MODE

---------- ------------------------------ ----------

2 PDB$SEED                       READ ONLY

3 EMP                                READ WRITE

4 DSG                                READ WRITE

2.(1)通过tnsname访问PDB数据库

例如:

查看当前数据库的PDB

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

CON_ID NAME                           OPEN_MODE

---------- ------------------------------ ----------

2 PDB$SEED                        READ ONLY

3 EMP                                 READ WRITE

查看tnsnames.ora

EMP =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = EMP)

)

)

访问:

[[email protected] ~]$ sqlplus sys/[email protected] as sysdba

SQL*Plus: Release 12.1.0.1.0 Production on Sat Jan 18 14:26:04 2014

Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:

Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production

With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> show con_name con_id

CON_NAME

------------------------------

EMP

CON_ID

------------------------------

3

(2)使用EZCONNECT方式连接到数据库

SQL> conn sys/[email protected]//localhost/dsg as sysdba

Connected.

SQL> show con_name con_id

CON_NAME

------------------------------

DSG

CON_ID

------------------------------

4 查看

SQL> select name from v$datafile;

NAME

------------------------------------------------------------------------------------------------------------------------

/u01/app/oracle/oradata/ora12c/undotbs01.dbf

/u01/app/oracle/oradata/ora12c/dsg/ORA12C/F039E431F9CE7170E0430100007F6A0D/datafile/o1_mf_system_9fn895qv_.dbf

/u01/app/oracle/oradata/ora12c/dsg/ORA12C/F039E431F9CE7170E0430100007F6A0D/datafile/o1_mf_sysaux_9fn89mpk_.dbf

有两个单独的数据文件system、sysaux和共享的undo表空间共享的全局数据文件

SQL> select name from v$tempfile;

NAME

------------------------------------------------------------------------------------------------------------------------

/u01/app/oracle/oradata/ora12c/dsg/ORA12C/F039E431F9CE7170E0430100007F6A0D/datafile/o1_mf_temp_9fn8bxy4_.dbf

有独立的临时文件

SQL> select name from v$controlfile;

NAME

------------------------------------------------------------------------------------------------------------------------

/u01/app/oracle/oradata/ora12c/control01.ctl

/u01/app/oracle/fast_recovery_area/ora12c/control02.ctl

控制文件是共享的

(3)在DBA等高级权限的用户下,通过alter命令进行会话级别的容器切换,访问不同容器下的对象

SQL> conn / as sysdba

Connected.

SQL> alter session set container=dsg;

Session altered.

SQL> show con_id con_name

CON_ID

------------------------------

4

CON_NAME

------------------------------

DSG

SQL> alter session set container=emp;

Session altered.

SQL> show con_id con_name

CON_ID

------------------------------

3

CON_NAME

------------------------------

EMP

五,关闭PDB

(1)切换到PDB

SQL> alter session set container=dsg;

Session altered.

SQL> show con_id con_name

CON_ID

------------------------------

4

CON_NAME

------------------------------

DSG

SQL> shutdown immediate

Pluggable Database closed.

(2)在具有sys权限的用户执行

SQL> alter pluggable database emp close;

Pluggable database altered.

六,删除PDB

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

CON_ID NAME                           OPEN_MODE

---------- ------------------------------ ----------

2 PDB$SEED                       READ ONLY

3 EMP                            MOUNTED

4 DSG                            READ WRITE

SQL> drop pluggable database dsg including datafiles;

drop pluggable database dsg including datafiles

*

ERROR at line 1:

ORA-65025: Pluggable database DSG is not closed on all instances.

必须让PDB处于关闭状态才能删除PDB

SQL> alter pluggable database dsg close;

Pluggable database altered.

SQL> drop pluggable database dsg including datafiles;

Pluggable database dropped.

查看产生的alert日志:

把相应的数据文件全部删除

在OS中查看:

2.oracle 12c 创建-访问-关闭-删除PDB,布布扣,bubuko.com

时间: 2024-08-27 21:22:03

2.oracle 12c 创建-访问-关闭-删除PDB的相关文章

oracle 12c 创建PDB用户即Local User (PDB与CDB)

Oracle 12C用户创建与表空间分配 数据库安装完成后,首先用系统用户链接数据库容器(CDB), 在数据库容器(CDB)中创建表空间‘imei’ SQL>create tablespace iemi datafile'E:\Oracle_DB\ cdb_iemi.dbf'size 10240m autoextend on next 200m; 表空间已创建. 接下来在Oracle 12C数据库中创建用户时会报ORA-65096错误. SQL> create user imei identi

Oracle 12c创建用户是出现“ORA-65096: invalid common user or role name”的错误

这篇文章主要介绍CDB和PDB的基本管理,资料来源oracle官方. 基本概念: Multitenant Environment:多租户环境 CDB(Container Database):数据库容器 PD(Pluggable Database):可插拔数据库 CDB与PDB关系图 COMMON USERS(普通用户):经常建立在CDB层,用户名以C##或c##开头: LOCAL USERS(本地用户):仅建立在PDB层,建立的时候得指定CONTAINER. 在oracle 12c中,使用了一个

Oracle 12c创建PDB用户并设置默认表空间

Oracle12c 中,增加了可插接数据库的概念,即PDB,允许一个数据库容器(CDB)承载多个可插拔数据库(PDB).CDB全称为 ContainerDatabase,中文翻译为数据库容器,PDB全称为PluggableDatabase,即可插拔数据库.下面是官方文档关于CDB与PDB的关系图. 在CDB中,只能创建以c##或C##开头的用户,如果不加c##,则会提示错误“ORA-65096:公用用户名或角色名无效”,只有在PDB数据库中才能创建我们习惯性命名的用户,oracle称之为Loca

Oracle 12C 创建用户连接pdb

测试环境: C:\ora12c\product\12.1.0\dbhome_1\BIN>sqlplus.exe /nolog SQL*Plus: Release 12.1.0.1.0 Production on 星期二 9月 20 03:50:23 2016 Copyright (c) 1982, 2013, Oracle. All rights reserved. SQL> conn /as sysdba 已连接. SQL> show pdbs; CON_ID CON_NAME OPE

Oracle 12c 多租户 CDB 与 PDB之 shared undo 与 Local undo 切换

undo 在12C R1版本中只支持Global Shared Undo模式, 所有container共享一个UNDO表空间, 目前保留这种模式只是为了升级过渡, 在12C R2引入了PDB Local UNDO模式,每个container都有自己的UNDO 表空间, 对于RAC是每个实例每个container都有自己的UNDO表空间, 这也正是推荐的.在DBCA时会有local undo选项,且默认勾选. local undo 模式的好处:1.减少undo表空间的争用,同时方便拔插 2.只有使

oracle SEQUENCE 创建, 修改,删除

oracle创建序列化: CREATE SEQUENCE seq_itv_collection            INCREMENT BY 1  -- 每次加几个              START WITH 1399       -- 从1开始计数              NOMAXVALUE        -- 不设置最大值              NOCYCLE               -- 一直累加,不循环              CACHE 10; oracle修改序列

oracle 12c 创建用户

--确认当前cdb SQL> select name,cdb from v$database;    NAME     CDB ------------------ ------ ORCL     YES --查询当前pdb基本信息 col pdb_name for a30 select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs; select con_id,dbid,NAME,OPEN_MODE from v$pdbs; 创建

Oracle 12c创建user

1.打开sql plus 2.使用system登录 3.使用select sys_context ('USERENV', 'CON_NAME') from dual; 查看当前用户是CDB用户还是PDB用户 4.使用 alter pluggable database pdborcl open;开启pdb模式 5.使用alter session set container=PDBORCL;切换到pdb 6.此时再使用select sys_context ('USERENV', 'CON_NAME'

Oracle 12c 多租户 CDB 与 PDB 备份

一.  CDB 备份 1.1  只备份CDB 只备份CDB数据库需要具有SYSDBA或SYSBACKUP权限用户连接到CDB的root环境下,执行backupdatabase root命令即可完成对CDB的备份,方法如下:[[email protected] ~]$ rman target / [[email protected] ~]$ mkdir /home/oracle/rmanback/RMAN> backup database root format='/home/oracle/rma