搞了一下oracle 12c。有些体会还是先记下来。

12c搞搞新意思,弄了个CDB(容器数据库,可不是商务中心CBD哟)和PDB(可插拔数据库)。PDB插在CDB里。

简单而言,CDB就是一个数据库实例,而PDB就是实例里一个个的数据库。这跟SQL SERVER是类似的。据说在oracle 11g或以前,一个数据库实例只能承载一个数据库(甚至一个数据库分布于不同的数据库实例中),然后不同的账户对应不同的表空间,在这里,表空间就类似SQL SERVER的数据库。

有位大虾说的好:“其实大家如果对SQL SERVER比较熟悉的话,这种CDB与PDB是不是感觉和SQL SERVER的单实例多数据库架构是一回事呢。像PDB$SEED可以看成是master、msdb等系统数据库,PDBS可以看成用户创建的数据库。而可插拔的概念与SQL SERVER中的用户数据库的分离、附加其实就是那么一回事。看来ORACLE也“抄袭”了一把SQL SERVER的概念,只是改头换面的包装了一番。

以下是一些操作语句,仅作个人学习记录

1、创建可插拔数据库

可以通过界面来操作,命令行则如下:

--'pdbseed'是模板数据库 pdb$seed 所在路径最后一个文件夹的名称。猜测如果数据库文件存放在系统默认路径下,则可以用最后一个文件夹来作为参数。本来应该是 file_name_convert('模版库路径','新建库路径')

CREATE PLUGGABLE DATABASE HNHY12 ADMIN USER hydg IDENTIFIED BY hydg file_name_convert=('pdbseed','hnhy');

原本我开始是酱紫写的:

CREATE PLUGGABLE DATABASE gdlhjd ADMIN USER coder IDENTIFIED BY coder STORAGE(MAXSIZE 2G MAX_SHARED_TEMP_SIZE 100M) DEFAULT TABLESPACE hydg DATAFILE 'E:\GDLHJD\gdlhjd.dbf' SIZE 25M AUTOEXTEND ON;

这句代码会报错,因为还没有指定file_name_convert

file_name_convert是什么鬼?我找来找去,在网上寻寻觅觅,都找不到确切的答案。隐约得到的大意是,按照模板来生成PDB。这个倒好理解,SQL SERVER里就是这样的,有master、msdb等系统数据库。

file_name_convert=(‘模板路径’,’新PDB所在路径’)

如果路径为oracle默认存放路径,可以简化为

file_name_convert=(‘模板路径所在文件夹名称’,’新PDB所在文件夹名称’)

问题是,既然是系统模板,为啥还要用户指定?我们哪知道是哪个模板?或者模板文件存放在哪个路径?

可以运行以下语句,获得pdb$seed的文件路径

select * from v$dbfile;

细想,oracle的本意是,可以根据模板库来生成新的库,并且这个模版库不一定是系统默认那个。这点比SQL SERVER要灵活。但用途不大,且难度大。

2、激活PDB

SQL> col pdb_name for a20
SQL> select pdb_name,status from dba_pdbs;
SQL> alter pluggable database gdlhjd open;
SQL> select pdb_id,pdb_name,dbid,status,creation_scn from dba_pdbs;
SQL> alter pluggable database HNHY12 open;

有一个问题,就是这样的激活是临时性的,下次数据库重启的时候,PDB只是挂载(mounted)状态,仍然需要手动运行 开启语句。一劳永逸的做法是保存这个开启的状态:

col pdb_name for a20

select pdb_name,status from dba_pdbs;

show pdbs;

alter pluggable database PDBGZFBC open;--开启

show pdbs;

ALTER PLUGGABLE DATABASE PDBGZFBC SAVE STATE;--保存开启状态

3、删除PDB

alter pluggable database hnhy12 close;

drop pluggable database hnhy12 including datafiles;

但好像,物理文件并没删除。

4、为默认用户指定表空间

请注意,以下语句必须切换到相应插拔数据库下:

请注意,以下语句必须切换到相应插拔数据库下:

请注意,以下语句必须切换到相应插拔数据库下:

创建PDB语句中有指定管理(?)账户

CREATE PLUGGABLE DATABASE HNHY12 ADMIN USER hydg IDENTIFIED BY hydg 。。。

而我们通常都是创建用户的时候,同时指定表空间。那么创建PDB之时,这个ADMIN USER是否已经有表空间了呢?似乎并没有。

咋办?

建一个表空间,然后指定给它即可(记得先切换数据库。我们创建数据库的时候,应该是在容器数据库里;那么在这个新建的PDB里建表空间,要先切换到相应的PDB):

create tablespace hydg datafile 'D:\HNHY\db\HNHY12C\hydg.ora' size 500m autoextend on;

ALTER USER hydg DEFAULT TABLESPACE hydg;

参考文章:

ORACLE 12C新特性——CDB与PDB

oracle 12c 13姨的更多相关文章

  1. Oracle 12c 使用scott等普通用户的方法

    目录: 一.前言 二.使用普通用户 三.自动启动PDB 一.前言 最近电脑上安装了oracle 12c数据库,想体验下新特性.安装完后,便像11g一样在dos窗口进行下面的操作: SQL Produc ...

  2. ORACLE 12C PDB 维护基础介绍

    来自:http://www.xifenfei.com/2013/05/oracle-12c-pdb-%E7%AE%A1%E7%90%86%E4%BB%8B%E7%BB%8D1.html CDB和PDB ...

  3. Oracle 12C RAC的optimizer_adaptive_features造成数据插入超时

    问题分析 使用10046事件追踪方式,直接生成上传时的数据库事件日志进行分析,发现主要区别在于以下两条sql语句在每次长时间上传时都有出现,并且执行用户不是上传用户,而是数据库SYS用户. ***** ...

  4. Oracle 12c Dataguard 数据库恢复

    http://allthingsoracle.com/rolling-forward-a-physical-standby-database-using-the-recover-command/ 当主 ...

  5. Windows 下安装 Oracle 12c 教程

    原文 Windows 下安装 Oracle 12c 教程 申明:本文原作者:Jmq   本文给大家带来的是 Oracle 12C 的安装教程. 1.准备 1.1 下载 Oracle 12c 安装程序 ...

  6. 转 Oracle 12c 使用scott等普通用户的方法

    一.前言 最近电脑上安装了oracle 12c数据库,想体验下新特性.安装完后,便像11g一样在dos窗口进行下面的操作: SQL*Plus: Release 12.1.0.2.0 Productio ...

  7. Oracle 12C 新特性之 恢复表

    RMAN的表级和表分区级恢复应用场景:1.You need to recover a very small number of tables to a particular point in time ...

  8. Oracle 12c(12.1.0.5)OEM server agent 安装配置

    注意: 此文档为生产上操作文档,省略了IP,oracle用户server,agent 端至少需要sudo,ping,ssh,创建目录权限. 一.安装要求 1.1. 系统情况一览 IP 数据库 OEM ...

  9. windows Sever 2012下Oracle 12c安装配置方法图文教程

    windows Sever 2012下Oracle 12c安装配置方法图文教程 Oracle 12c安装配置方法图文教程,具体内容如下 1.我们开启虚拟机 2.Windows Sever 2012启动 ...

随机推荐

  1. 树梅派 -- 通过/sys读写ADC芯片 pcf8591

    通过wiringPi等library, 在user space 通过/dev/i2c来读写i2c设备的方案不在本文讨论了. 编译SENSORS_PCF8591 模块 在Default raspberr ...

  2. 【HIHOCODER 1576】 子树中的最小权值(线段树维护DFS序)

    描述 给定一棵N个节点的树,编号1~N.其中1号节点是根,并且第i个节点的权值是Vi. 针对这棵树,小Hi会询问小Ho一系列问题.每次小Hi会指定一个节点x,询问小Ho以x为根的子树中,最小的权值是多 ...

  3. 阿里巴巴集团加入W3C,成为W3C会员

    根据W3C官方推特最新消息:阿里巴巴集团正式加入W3C,成为W3C会员. W3C官方推特:https://twitter.com/w3c/status/566244180372889601 同时可以在 ...

  4. BNUOJ 6378 无题I

    无题I Time Limit: 10000ms Memory Limit: 32768KB This problem will be judged on HDU. Original ID: 22346 ...

  5. 东软Unieap平台

    东软Unieap平台 开发环境与技术栈 操作系统 WINDOS7 数据库 Oracle 开发语言 JAVA 版本控制工具 git 框架 Unieap是基于现在主流的JAVA开发框架(Hibernate ...

  6. POJ1061青蛙的约会

    Description 两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面.它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止.可是它们出发之前忘记了一件很重要的事 ...

  7. bzoj 2463 [中山市选2009]谁能赢呢? 博弈

    [中山市选2009]谁能赢呢? Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 3014  Solved: 2165[Submit][Status][D ...

  8. oc温习三:常用函数

    参考文章: 算术函数 [算术函数] 函数名 说明 int rand() 随机数生成.(例)srand(time(nil)); //随机数初期化int val = rand()P; //0-49之间的随 ...

  9. HDU 6441 费马大定理+勾股数

    #include <bits/stdc++.h> #define pb push_back #define mp make_pair #define fi first #define se ...

  10. hdu - 5074 Hatsune Miku (简单dp)

    有m种不同的句子要组成一首n个句子的歌,每首歌都有一个美丽值,美丽值是由相邻的句子种类决定的,给出m*m的矩阵map[i][j]表示第i种句子和第j种句子的最大得分,一首歌的美丽值是由sum(map[ ...