Oracle12c创建及删除PDB
在12C R1版本中只支持Global Shared Undo模式,所有container共享一个UNDO表空间;在12C R2引入了PDB Local Undo模式,每个container都有自己的UNDO 表空间,对于RAC是每
个实例每个container都有自己的UNDO表空间。在DBCA时会有Local Undo选项,且默认勾选。
在12c R1版本中clone PDB源库需要打开在read only只读模式 ,12c R2版本中引入了local undo mode, PDB源库在read write读写模式也可以clone。
克隆PDB要求:
1. Archive Log Enabled
2. Local Undo Enabled
3. destination CDB must have a public database link to the source CDB,have sufficient privileges to use the database link
可以通过图形化工具DBCA、命令行、em express等方式创建和删除PDB,该处只描述命令行方式操作。
一、创建PDB
1. 克隆种子容器
SQL> select * from v$dbfile; #查看路径

SQL> show parameter db_create_file_dest;

SQL> create pluggable database PDB3 admin user song identified by song file_name_convert=('/home/oracle/u01/app/oracle/oradata/orcl/pdbseed','/home/oracle/u01/app/oracle/oradata/orcl/PDB3');


2. 克隆本地PDB
1) 查看归档是否打开
SQL> archive log list;

2) local undo是否开启
SQL> col PROPERTY_NAME for a25;
SQL> col PROPERTY_VALUE for a25;
SQL> select PROPERTY_NAME,PROPERTY_VALUE from database_properties where property_name='LOCAL_UNDO_ENABLED';

3) 开始克隆
SQL> show pdbs;

a)使用OMF功能创建,不推荐使用该功能创建PDB,路径和数据文件名不是常规的。
SQL> show parameter DB_CREATE_FILE_DEST; #OMF功能路径

SQL> show parameter pdb_file_name_convert; #设置初始化参数

SQL> alter system set db_create_file_dest='/home/oracle/u01/app/oracle/oradata/orcl';
SQL> alter session set pdb_file_name_convert='ORCLPDB','PDB5';
SQL> create pluggable database PDB5 from ORCLPDB;

报错:ORA-65005: 文件缺少文件名模式或其文件名模式无效,未设置DB_CREATE_FILE_DEST参数
b)使用file_name_convert创建
SQL> create pluggable database PDB4 from ORCLPDB file_name_convert=(
'/home/oracle/u01/app/oracle/oradata/orcl/orclpdb','/home/oracle/u01/app/oracle/oradata/orcl/pdb4');

SQL> alter pluggable database pdb4 open;

3. 克隆异地PDB
源端
SQL> create user c##sonny identified by sonny container=all;
SQL> grant dba to c##sonny container=all;

目标端
create database link clonepdb connect to c##sonny identified by sonny using '(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.208)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = ORCLPDB)))';

SQL> create pluggable database sonnypdb from ORCLPDB@clonepdb;

$ORACLE_HOME/rdbms/admin/noncdb_to_pdb.sql脚本
二、删除PDB
PDB需要处于MOUNTED状态才可以删除
SQL> alter pluggable database pdb5 close immediate;
SQL> drop pluggable database pdb5 including datafiles;
SQL> show pdbs;

至此PDB的创建与删除就完成了,下面为PDB的开启与关闭操作:
SQL>alter pluggable database orclpdb open; #启动单个PDB
SQL>alter pluggable database all open; #启动所有PDB
SQL>alter pluggable database orclpdb close immediate; #关闭单个PDB
SQL>alter pluggable database all close immediate; #关闭所有PDB
自动启动所有PDB
数据库启动的时候所有的PDB的状态为MOUNTED,以下设置自动启动(CDB级别操作):
create or replace trigger sys.pdb_startup
after startup on database
begin
execute immediate 'alter pluggable database all open';
end pdb_startup;
/
克隆pdb文章
https://www.cnblogs.com/andy6/p/6867240.html
切换shared undo/local undo文章
https://blog.csdn.net/zhang123456456/article/details/71374528
Oracle12c创建及删除PDB的更多相关文章
- 2.oracle 12c 创建-访问-关闭-删除PDB
1.创建PDB SQL> select name from v$datafile; NAME ------------------------------------------------ ...
- Oracle 12c 多租户 手工创建 pdb 与 手工删除 pdb
实验环境: SQL> select * from v$version;BANNER ...
- linux命令 - ln - 创建和删除软、硬链接
linux命令 - ln - 创建和删除软.硬链接 在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号.文件属性保存在索引结点里,在访问文件 ...
- 各种隐藏 WebShell、创建、删除畸形目录、特殊文件名、黑帽SEO作弊(转自核大大)
其实这个问题,经常有朋友问我,我也都帮大家解决了…… 但是现在这些现象越来越严重,而且手法毒辣.隐蔽.变态,清除了又来了,删掉了又恢复了,最后直接找不到文件了,但是访问网站还在,急的各大管理员.站长抓 ...
- DOM创建和删除节点、HTML DOM常用对象[转]
创建和删除节点:——核心DOM 1. 创建单个元素节点:3步: 1. 创建空元素节点对象: var elem=document.createElement("标 ...
- MySQL索引的创建、删除和查看
MySQL索引的创建.删除和查看 此文转自http://blogold.chinaunix.net/u3/93470/showart_2001536.html 1.索引作用 在索引列上,除了上面提到的 ...
- linux下创建和删除软、硬链接
linux下创建和删除软.硬链接 在Linux系统中,内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个惟一的inode号.文件属性保存在索引结点里,在访问文件时,索引结点被复制 ...
- git创建和删除远程分支
问题描述: 使用git创建和删除远程分支 问题解决: (1)git创建本地分支 注: 如上所示,使用命令 git branch -a ...
- oracl使用DataBase Configuration Assistant创建、删除数据库
原文:oracl使用DataBase Configuration Assistant创建.删除数据库 可以使用DataBase Configuration Assistant来创建一个心得数据库.Da ...
随机推荐
- AOF — Redis 设计与实现
w AOF — Redis 设计与实现http://redisbook.readthedocs.io/en/latest/internal/aof.html
- create react app的 css loader 进行局部配置
{ test: cssRegex, exclude: cssModuleRegex, use: getStyleLoaders({ importLoaders: 1, sourceMap: isEnv ...
- Exchanger 源码分析
Exchanger 此类提供对外的操作是同步的: 用于成对出现的线程之间交换数据[主场景]: 可以视作双向的同步队列: 可应用于基因算法.流水线设计.数据校对等场景 创建实例 /** * arena ...
- 《图解设计模式》读书笔记8-3 STATE模式
目录 State模式 示例程序 实现的功能 不使用&使用状态模式对比 示例程序的类图 代码 角色和类图 角色 类图 拓展思路 分而治之 依赖于状态的处理 谁来管理状态迁移 易于增加新状态 实例 ...
- 测开之路一百一十一:bootstrap表单
bootstrap表单 引入bootstrap和jquery 默认表单 垂直表单 表单属性绑定:for属性,当for的属性和id的属性相同时,单击for标签,光标自动跳到相同属性的输入框 复选框 水平 ...
- ClientDataSet初步使用
https://blog.csdn.net/onebigday/article/details/5602619 ClientDataSet初步使用 2010年05月18日 08:36:00 阅读数:5 ...
- STL 仿函数(函数对象)
##定义 仿函数(functor):一种具有函数性质的对象. 仿函数在C++中的新名称为函数对象(function object). 仿函数类对象像函数一样被调用,调用仿函数类对象时,实际调用的是仿函 ...
- Java学习day6数组
---恢复内容开始--- Java数组 Java 语言中提供的数组是用来存储固定大小的同类型元素.你可以声明一个数组变量,如 numbers[100] 来代替直接声明 100 个独立变量 number ...
- osi七层协议 Open System Interconnection
一, 操作系统基础 操作系统:(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是直接运行在"裸机"上的最基本的系统软件,任何其他软件都必 ...
- 使用Webpack的代码分离实现Vue懒加载(译文)
当一个Vue的项目体积变得十分庞大的时候,使用Webpack的代码分离功能将Vue Components,routes或Vuex的代码进行分离并按需加载,会极大的提高App的首屏加载速度. 在Vue的 ...