小丸子学Oracle 12c系列之——Oracle Pluggable Database
1.Oracle Pluggable Database
1.1 根据seed创建pdb
SQL> select pdb_id,pdb_name,con_id from dba_pdbs;
PDB_ID PDB_NAME CON_ID
---------- ------------------------------ ----------
2 PDB$SEED 2
三种创建场景:
SQL> create pluggable database pdb01 admin user pdbadmin01 identified by oracle
default tablespace pdb_tbs
datafile '/u01/oracle/oradata/ASIAINFO/datafile/pdb_tbs01.dbf' size 100M;
SQL> create pluggable database pdb02 admin user pdbadmin02 identified by oracle
default tablespace pdb_tbs2 roles=(dba);
SQL> CREATE PLUGGABLE DATABASE pdb03 ADMIN USER pdbadmin03 IDENTIFIED BY oracle
STORAGE (MAXSIZE 2G MAX_SHARED_TEMP_SIZE 100M)
DEFAULT TABLESPACE pdb_tbs3
DATAFILE '/u01/oracle/oradata/pdb03/pdb03.dbf' SIZE 250M AUTOEXTEND ON
PATH_PREFIX = '/u01/oracle/oradata/pdb03/'
FILE_NAME_CONVERT = ('/u01/oracle/oradata/ASIAINFO/datafile/', '/u01/oracle/oradata/pdb03/');
CREATE PLUGGABLE DATABASE pdb03 ADMIN USER pdbadmin03 IDENTIFIED BY oracle
*
ERROR at line 1:
ORA-01276: Cannot add file /u01/oracle/oradata/pdb03/o1_mf_system_cqsjkz37_.dbf. File has an Oracle Managed Files file name.
解决方法:
SQL> CREATE PLUGGABLE DATABASE pdb03 ADMIN USER pdbadmin03 IDENTIFIED BY oracle
STORAGE (MAXSIZE 2G MAX_SHARED_TEMP_SIZE 100M)
DEFAULT TABLESPACE pdb_tbs3
DATAFILE '/u01/oracle/oradata/pdb03/pdb03.dbf' SIZE 250M AUTOEXTEND ON
PATH_PREFIX = '/u01/oracle/oradata/pdb03/'
FILE_NAME_CONVERT = ('/u01/oracle/oradata/ASIAINFO/datafile/o1_mf_system_cqsjkz37_.dbf', '/u01/oracle/oradata/pdb03/system01.dbf',
'/u01/oracle/oradata/ASIAINFO/datafile/o1_mf_sysaux_cqsjkz1r_.dbf', '/u01/oracle/oradata/pdb03/sysaux01.dbf',
'/u01/oracle/oradata/ASIAINFO/datafile/pdbseed_temp012016-07-06_04-33-42-PM.dbf','/u01/oracle/oradata/pdb03/pdbseed_temp01.dbf');
Pluggable database created.
SQL> select pdb_id,pdb_name,con_id,status from dba_pdbs;
PDB_ID PDB_NAME CON_ID STATUS
---------- ------------------------------ ---------- ---------
3 PDB01 3 NEW
2 PDB$SEED 2 NORMAL
1.2 克隆一个pdb
SQL> create pluggable database pdb02 from pdb01;
create pluggable database pdb02 from pdb01
*
ERROR at line 1:
ORA-65036: pluggable database PDB01 not open in required mode
解决方法:
SQL> alter pluggable database pdb01 open;
Warning: PDB altered with errors.
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ WRITE NO
3 PDB01 READ WRITE YES
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> alter session set container=PDB01;
Session altered.
SQL> show con_name
CON_NAME
------------------------------
PDB01
SQL> create pluggable database pdb02 from pdb01;
create pluggable database pdb02 from pdb01
*
ERROR at line 1:
ORA-65040: operation not allowed from within a pluggable database
解决方法:
SQL> alter session set container=cdb$root;
Session altered.
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> create pluggable database pdb02 from pdb01;
Pluggable database created.
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ WRITE NO
3 PDB01 READ WRITE YES
4 PDB02 MOUNTED
1.3 删除pdb
SQL> drop pluggable database PDB02 keep datafiles;
drop pluggable database PDB02 keep datafiles
*
ERROR at line 1:
ORA-65179: cannot keep datafiles for a pluggable database that is not unplugged
解决方法:
SQL> alter pluggable database PDB02 unplug into '/u01/oracle/pdb01.xml';
Pluggable database altered.
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ WRITE NO
3 PDB01 READ WRITE YES
4 PDB02 MOUNTED
SQL> drop pluggable database PDB02 keep datafiles;
Pluggable database dropped.
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ WRITE NO
3 PDB01 READ WRITE YES
1.4 启停pdb
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ WRITE NO
3 PDB01 READ WRITE YES
4 PDB02 READ WRITE YES
5 PDB03 MOUNTED
SQL> alter pluggable database PDB03 open ;
Warning: PDB altered with errors.
解决方法:
SQL> select name,cause ,type,message,status from pdb_plug_in_violations;
NAME CAUSE TYPE MESSAGE STATUS
----- ------------- --------- ---------------------------------------------------------------------- -------
PDB03 Sync Failure ERROR Sync PDB failed with ORA-959 during 'CREATE USER c##scott PENDING
IDENTIFIED BY * DEFAULT TABLESPACE users
QUOTA 20M ON users
TEMPORARY TABLESPACE temp container = all'
SQL> alter session set container=pdb03;
Session altered.
SQL> create tablespace users datafile '/u01/oracle/oradata/pdb03/user01.dbf' size 10M;
Tablespace created.
SQL> alter pluggable database pdb03 close;
Pluggable database altered.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
5 PDB03 MOUNTED
SQL> alter pluggable database pdb03 open;
Pluggable database altered.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
5 PDB03 READ WRITE NO
1.5 连接pdb
[orauser@CIT-BATTON-BJTMP01 datafile]$ lsnrctl status
LSNRCTL for Linux: Version 11.1.0.1.0 - Production on 13-JUL-2016 17:09:55
Copyright (c) 1991, 2014, Oracle. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.1.0.1.0 - Production
Start Date 12-JUL-2016 16:03:13
Uptime 1 days 1 hr. 6 min. 43 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Log File /u01/oracle/diag/tnslsnr/CIT-BATTON-BJTMP01/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=CIT-BATTON-BJTMP01)(PORT=1521)))
Services Summary...
Service "asiainfo" has 1 instance(s).
Instance "asiainfo", status READY, has 1 handler(s) for this service...
Service "asiainfoXDB" has 1 instance(s).
Instance "asiainfo", status READY, has 1 handler(s) for this service...
Service "pdb01" has 1 instance(s).
Instance "asiainfo", status READY, has 1 handler(s) for this service...
Service "pdb02" has 1 instance(s).
Instance "asiainfo", status READY, has 1 handler(s) for this service...
Service "pdb03" has 1 instance(s).
Instance "asiainfo", status READY, has 1 handler(s) for this service...
The command completed successfully
[orauser@CIT-BATTON-BJTMP01 datafile]$ sqlplus sys/oracle@`hostname`:1521/pdb03 as sysdba
SQL*Plus: Release 11.1.0.1.0 Production on Wed Jul 13 17:14:55 2016
Copyright (c) 1982, 2014, Oracle. All rights reserved.
Connected to:
Oracle Database 12c Enterprise Edition Release 11.1.0.1.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
5 PDB03 READ WRITE NO
SQL> show con_name
CON_NAME
------------------------------
PDB03
SQL> alter session set container=cdb$root;
Session altered.
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ WRITE NO
3 PDB01 READ WRITE YES
4 PDB02 READ WRITE YES
5 PDB03 READ WRITE NO
1.5 unplug and plug pdb
SQL> alter pluggable database pdb03 unplug into '/u01/oracle/pdb03.xml';
alter pluggable database pdb03 unplug into '/u01/oracle/pdb03.xml'
*
ERROR at line 1:
ORA-65025: Pluggable database PDB03 is not closed on all instances.
解决方法:
SQL> alter pluggable database pdb03 close;
Pluggable database altered.
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ WRITE NO
3 PDB01 READ WRITE YES
4 PDB02 READ WRITE YES
5 PDB03 MOUNTED
SQL> alter pluggable database pdb03 unplug into '/u01/oracle/pdb03.xml';
Pluggable database altered.
SQL> select pdb_name,CON_ID,STATUS from dba_pdbs;
PDB_NAME CON_ID STATUS
-------------------- ---------- ---------
PDB01 3 NORMAL
PDB$SEED 2 NORMAL
PDB02 4 NORMAL
PDB03 5 UNPLUGGED
SQL> drop pluggable database PDB03 keep datafiles;
Pluggable database dropped.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ WRITE NO
3 PDB01 READ WRITE YES
4 PDB02 READ WRITE YES
SQL> create pluggable database pdb04 using '/u01/oracle/pdb03.xml' move;
create pluggable database pdb04 using '/u01/oracle/pdb03.xml' move
*
ERROR at line 1:
ORA-65018: FILE_NAME_CONVERT or NOCOPY must be specified
SQL> create pluggable database pdb04 using '/u01/oracle/pdb03.xml' copy;
create pluggable database pdb04 using '/u01/oracle/pdb03.xml' copy
*
ERROR at line 1:
ORA-65018: FILE_NAME_CONVERT or NOCOPY must be specified
解决方法:
SQL> create pluggable database pdb04 using '/u01/oracle/pdb03.xml' copy
FILE_NAME_CONVERT = ('/u01/oracle/oradata/pdb03/system01.dbf', '/u01/oracle/oradata/pdb04/system01.dbf',
'/u01/oracle/oradata/pdb03/sysaux01.dbf', '/u01/oracle/oradata/pdb04/sysaux01.dbf',
'/u01/oracle/oradata/pdb03/pdbseed_temp01.dbf','/u01/oracle/oradata/pdb04/temp01.dbf',
'/u01/oracle/oradata/pdb03/pdb03.dbf', '/u01/oracle/oradata/pdb04/pdb03.dbf',
'/u01/oracle/oradata/pdb03/user01.dbf', '/u01/oracle/oradata/pdb04/user01.dbf');
Pluggable database created.
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ WRITE NO
3 PDB01 READ WRITE YES
4 PDB02 READ WRITE YES
5 PDB04 MOUNTED
至此,pdb的一些常用操作演示到此。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20801486/viewspace-2122005/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/20801486/viewspace-2122005/
小丸子学Oracle 12c系列之——Oracle Pluggable Database相关推荐
- 小丸子学Hadoop系列之——部署Hbase集群
0.集群规划 主机名 ip地址 安装的软件 运行的进程 AI-OPT-HBS01 10.46.52.30 hadoop,hbase namenode,zkfc,resourcemanager AI-O ...
- Oracle 12c系列(二)|PDB的创建
PDB数据库的创建可以从现存的数据库中复制数据文件,包括种子容器.可插拔数据库.non-CDB数据库,创建时可以使用CREATE PLUGGABLE.RMAN.DBCA以及EM等. 在12.1版本中在 ...
- Oracle 12c系列(九) | 通过unplug与plug方式升级pdb数据库
对于Oracle数据库升级操作,每个版本之间的升级步骤均相似,首先升级Oracle软件,然后升级数据库内的数据字典表. 在Oracle12c中,当我们通过容器的方式对数据库进行整合后,其升级方式变得更 ...
- oracle 12c安装psu,Oracle 12C数据库PSU补丁安装方式的变化---新增datapatch
需求:安装Oracle 12.1.0.2数据库的PSU 20160719补丁 一.安装步骤: 1.补丁下载 将/usr/ccs/bin和OPatch路径加到$PATH中: csssit@msuu335 ...
- oracle 12c 翻页,Oracle 12c新特性之翻页查询
在即将发布的oracle 12c中,有一个新特性非常值得期待,这就是翻页查询优化. 在应用中有很多翻页查询功能,以前我们都是使用rownum来实现. 如查询1-10条记录,使用的查询语句就是这样: s ...
- Oracle 12c中导入Oracle 11g的数据
我们直接说干的: 1.在github上下Oracle 11g所有示例用户的sql脚本文件(地址失效请评论区留言) https://github.com/oracle/db-sample-schemas ...
- oracle 12c 归档模式,Oracle 12c 归档模式更改
Oracle 12c 归档模式更改 2014-12-15 16:03:20 1.shutdown normal或shutdown immediate关闭数据库 SQL*Plus: Release ...
- oracle 12c创建归档,oracle 12c 数据归档 即Using In-Database Archiving feature
在oracle 12c 通过Using In-Database Archiving feature 特性,来启到分离在线数据和历史数据的作用, 即数据归档,应用可以有选择性的访问在线数据或者历史数据, ...
- oracle 12c 安装scott,Oracle 12c中添加scott用户的方法
新电脑上安装了Oracle 12c,没有自带scott用户.看了不少帖子,发现以下帖子最为靠谱. 补充事项: 1. 运行语句"select username from dba_users w ...
最新文章
- Zookeeper源码分析:Leader角色初始化
- c语言输入后没答案,C语言章节习题及答案(无指针)解读.doc
- 分布式消息系统:Kafka
- 表单提交对chrome记住密码的影响
- Java Lambda 表达式(又名闭包 (Closure)/ 匿名函数 ) 笔记
- 套接字编程---2(TCP套接字编程的流程,TCP套接字编程中的接口函数,TCP套接字的实现,TCP套接字出现的问题,TCP套接字多进程版本,TCP套接字多线程版本)
- 计算机相关科幻小说,科幻小说家和计算机科学家总是用人工智能来迷惑我们,计算机可以...
- Qt之系统托盘(QSystemTrayIcon详解)
- 「leetcode」90.子集II【回溯算法】详细图解!
- layui表单元素的radio单选框问题
- 光环PMP 项目范围管理 、项目进度管理、项目成本管理、项目质量管理
- coreseek实战(一):windows下coreseek的安装与测试
- iOS | 地图定位
- 光猫超级帐号密码,重置光猫获取超级帐号密码
- Windows 10 C盘大瘦身
- 可以真正带你理清同步阻塞与同步非阻塞与异步阻塞与异步非阻塞的文章
- Ubuntu安装桌面
- Kali Linux忘记密码怎么办?
- 蓝桥杯 回文日期(Java)
- 大学中明白的一百件事情