Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3058069
  • 博文数量: 206
  • 博客积分: 3409
  • 博客等级: 中校
  • 技术积分: 4066
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-24 10:21
个人简介

● ITPUB名人堂嘉宾 ● ChinaUnix社区博客专家 ● ChinaUnix社区Oracle板块版主 ● 优酷网认证音乐牛人:EricGuitar ● SDOUG 核心成员 ●E-mail:gaoqiangdba@163.com

文章分类

全部博文(206)

文章存档

2021年(11)

2020年(7)

2019年(7)

2016年(5)

2015年(36)

2014年(23)

2013年(15)

2012年(23)

2011年(61)

2010年(18)

分类: Oracle

2015-01-21 16:55:43

  

Oracle 12C加入了一个非常有新意的功能“可插拔数据库”特性,实现了数据库(PDB)在“容器”(CDB)上的拔功能,既能提高系统资源的利用率,也简化大面积数据库的管理和迁移工作。



下面我们体验一下可插拔数据库的CDB和PDB的操作:
基本信息:
根容器(CDB):CUP
可插拔数据库(PDB):TEA

启动根容器:
[oracle@eric ~]$ export ORACLE_SID=cup
[oracle@eric ~]$ sqlplus / as sysdba
SQL*Plus: Release 12.1.0.2.0 Production on Wed Jan 21 16:00:06 2015
Copyright (c) 1982, 2014, Oracle.  All rights reserved.
Connected to an idle instance.
SQL> startup    -----不会直接启动所有可插拔数据库,如需启动所有可插拔数据库,执行命令:alter pluggable database all open
ORACLE instance started.
Total System Global Area  767557632 bytes
Fixed Size                  2929112 bytes
Variable Size             574623272 bytes
Database Buffers          184549376 bytes
Redo Buffers                5455872 bytes
Database mounted.
Database opened.




停止根容器:
SQL> shutdown immediate   
Database closed.
Database dismounted.
ORACLE instance shut down.


查看是否创建了CDB,如果有显示名字:
SQL> select name,cdb from v$database;
NAME      CDB
--------- ---
CUP       YES


SQL> show parameter service;


NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
service_names                        string      cup






查看容器名字,其中有3个容器:根容器、种子容器和自己创建的容器:
SQL> select con_id,name from v$containers;


    CON_ID NAME
---------- ------------------------------
         1 CDB$ROOT                        ---根容器
         2 PDB$SEED                        ---种子容器,只可读
         3 TEA                             ---自己创建的可插拔数据库




SQL> select file_name from dba_data_files;               
FILE_NAME
--------------------------------------------------------------------------------
/oracle/app/oradata/CUP/datafile/o1_mf_system_bch07kvz_.dbf
/oracle/app/oradata/CUP/datafile/o1_mf_sysaux_bch020oo_.dbf
/oracle/app/oradata/CUP/datafile/o1_mf_undotbs1_bch0d2on_.dbf
/oracle/app/oradata/CUP/datafile/o1_mf_users_bch0d15n_.dbf


SQL> select file_name from cdb_data_files;


FILE_NAME
--------------------------------------------------------------------------------
/oracle/app/oradata/CUP/datafile/o1_mf_system_bch07kvz_.dbf
/oracle/app/oradata/CUP/datafile/o1_mf_sysaux_bch020oo_.dbf
/oracle/app/oradata/CUP/datafile/o1_mf_undotbs1_bch0d2on_.dbf
/oracle/app/oradata/CUP/datafile/o1_mf_users_bch0d15n_.dbf


创建公共用户:
SQL> create user c##eric  identified by gao;
User created.


SQL> conn  c##eric/gao                 
ERROR:
ORA-01045: user C##ERIC lacks CREATE SESSION privilege; logon denied    ----没有权限,我们可以单独给其赋予权限,也可以给其指定角色。
Warning: You are no longer connected to ORACLE.




SQL> conn / as sysdba
Connected.
SQL> grant dba to c##eric container=all;     ---给其DBA角色,角色范围覆盖所有的容器
Grant succeeded.


SQL> conn c##eric/gao
Connected.               ---连接成功


切换容器:
首先启动自己创建的容器数据库:
SQL> alter pluggable database tea open;   ---首先启动PDB数据库


SQL> alter session set container = tea;

Session altered.


SQL> show con_name           ---查看当前所在的容器名
CON_NAME
------------------------------
TEA




关闭可插拔数据库:
SQL> alter pluggable database tea close immediate;
Pluggable database altered.


OK!~~~   如果有更多的功能和方案等问题请多沟通交流!~~~

阅读(13295) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~