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.只有使用local undo才支持下面的新特性: Refresh PDB, Flashback PDB ,( Hot Clone, Relocate PDB in open read/write mode)
3.point-in-time recovery PDB

一、 local undo 转 shared undo :

查看数据库是否开启 local undo ,如果 PROPERTY_VALUE  为 true 表示已经开启。
SQL> 
col PROPERTY_NAME for a25;
col PROPERTY_VALUE for a25;
select PROPERTY_NAME,PROPERTY_VALUE from database_properties where property_name='LOCAL_UNDO_ENABLED';

PROPERTY_NAME             PROPERTY_VALUE            
------------------------- ------------------------- 
LOCAL_UNDO_ENABLED        TRUE                      
SQL>shutdown immediate;
SQL>startup upgrade;
SQL>show con_nameCON_NAME
------------------------------
CDB$ROOT
SQL>alter database local undo off;
SQL>shutdown immediate;
SQL>startup;
SQL>show pdbs
SQL>alter session set container=pdb01;
e/o1_mf_undotbs1_djszmxkc_.dbf
SQL>select tablespace_name from dba_tablespaces;
TABLESPACE_NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
SQL> 
col PROPERTY_NAME for a30;
col PROPERTY_VALUE for a20;
select PROPERTY_NAME,PROPERTY_VALUE from database_properties where property_name='LOCAL_UNDO_ENABLED';
PROPERTY_NAME  PROPERTY_VALUE   
------------------------- ------------------------- 
LOCAL_UNDO_ENABLED  FALSE    
SQL> 
col file_name for a70;
select a.CON_ID,a.TABLE   CON_ID TABLESPACE_NAME                FILE_NAME
from cdb_tablespaces a,CDB_DATA_FILES b
where a.TABLESPACE_NAME=b.TABLESPACE_NAME and a.con_id=b.con_id and a.CONTENTS='UNDO';
--------- ------------------------------ ----------------------------------------
        3 UNDOTBS1                       /home/oracle/app/oracle/oradata/ANDYCDB/4ECF8621E3DA38EEE0531019640AA598/
                                         datafile/o1_mf_undotbs1_djszmxkc_.dbfSPACE_NAME,b.FILE_NAME
SQL>drop tablespace UNDOTBS1 including contents and datafiles;  ( 切记PDB中执行 )
SQL>select name from v$datafile where name like '%undo%';
NAME
-----------------------------------------------------------------------------
/home/oracle/app/oracle/oradata/ANDYCDB/datafile/o1_mf_undotbs1_djsyyjlk_.dbf  > 现在已经是 cdb 中的undo datafile 了。

二、  shared undo 转 local undo :

SQL> shutdown immediate;
SQL> startup upgrade;
SQL> show con_name   >确认是 cdb,如果不是 cdb,则 alter session set container=cdb$root;
SQL> alter database local undo on;
SQL> shutdown immediate;
SQL> startup;
SQL>show pdbs
SQL>alter session set container=pdb01;
SQL>select name from v$datafile where name like '%undo%';
NAME
--------------------------------------------------------------------------------
/home/oracle/app/oracle/oradata/ANDYCDB/4ECF8621E3DA38EEE0531019640AA598/datafil
e/o1_mf_undo_1_djz4jq1z_.dbf
SQL> 
col PROPERTY_NAME for a30;
col PROPERTY_VALUE for a20;
select PROPERTY_NAME,PROPERTY_VALUE from database_properties where property_name='LOCAL_UNDO_ENABLED';

PROPERTY_NAME                  PROPERTY_VALUE
------------------------------ --------------------
LOCAL_UNDO_ENABLED             TRUE
说明:打开loacl undo后,自动为当前的PDB创建undo表空间,同时如果以前再新创建pdb,系统将自动创建自己的undo表空间。创建表空间的名字与大小由 PDB$SEED 中的配置信息决定的。

转载于:https://www.cnblogs.com/andy6/p/6822479.html

Oracle 12c 多租户 CDB 与 PDB之 shared undo 与 Local undo 切换相关推荐

  1. oracle12c racpdb,Oracle 12C R2的CDB与PDB简单管理操作

    Oracle 12C引入了CDB与PDB的新特性,在ORACLE 12C数据库引入的多租用户环境(Multitenant Environment)中,允许一个数据库容器(CDB)承载多个可插拔数据库( ...

  2. oracle中pdb,Oracle 12C新特性-CDB和PDB 详解

    最近看到好多人都在尝试Oracle中的12C新特性-容器数据库,今年3月Orcle推出了Release2版本,可以算是一个稳定版本了.下午着手尝试了一下,还是蛮不错得 1.前言 CDB与PDB是Ora ...

  3. abort oracle,Oracle 12c 多租户:PDB 支持 abort 关闭么?

    Oracle 12c 多租户:PDB 支持 abort 关闭么? 在Oracle 12c的考试中,有这样一道题目: When executing shutdown abort in a pluggab ...

  4. Oracle 12c 手动创建CDB和非CDB

    使用 SQL*Plus 创建新 CDB 的具体步骤如下所示: 1.  启动实例之前,使用常用参数准备 init<SID>.ora 参数文件: DB_NAME . CONTROL_FILES ...

  5. oracle 12c多租户下的日常操作变化

    Oracle 12c创建用户时出现"ORA-65096: invalid common user or role name"的错误 在oracle中,引入了多租户概念,以前是一个i ...

  6. oracle 12 去掉 cdb,Oracle 12c no-CDB转换为CDB

    如果把数据库从11g 升级到12c,或者在12c中创建的,就是NON CDB,那么这样的数据库就是普通的单实例, 和12c 之前的数据库没有区别,但12c 的特点就是CDB 管理,所以既然上12c,还 ...

  7. Oracle 12c R1 Plug/Unplug 迁移PDB实验(1): 插拔 RAC PDB到 Non-RAC PDB

    实验目标: 将RAC环境的PDB插拔后迁移到非RAC环境 实验环境: 数据库:Oracle 12c R1 操作系统:Oracle Linux 7.3 实验步骤: 1.源端环境准备 为本次实验克隆一个P ...

  8. oracle12c多个pdb,Oracle 12c 多租户专题|12cR2中PDB内存资源管理

    沃趣科技  周天鹏 原文链接 在12.2之前的版本,我们根本没有办法控制一个单独的PDB能使用的内存总量.导致的结果就是"一个糟糕的邻居"可能占用大量内存从而导致同一个实例下其他P ...

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

    Oracle 12C用户创建与表空间分配  数据库安装完成后,首先用系统用户链接数据库容器(CDB), 在数据库容器(CDB)中创建表空间'imei' SQL>create  tablespac ...

最新文章

  1. Jenkins设置用户权限
  2. 一键导出/备份「有道云笔记」工具
  3. 把你的 VS Code 打造成 C++ 开发利器
  4. Linux下Mysql数据库备份和恢复全攻略
  5. mysql命令行导入和导出数据
  6. 管道过滤模式 大数据_大数据管道配方
  7. 前端学习(3063):vue+element今日头条管理-总页码处理2
  8. 【C++深度剖析教程6】C++之友元
  9. axure弹窗关闭_干货来袭,Axure插入图标的几种办法
  10. Python开发基础-day1
  11. 95-140-114-源码-transform-算子project
  12. linux系统怎么样同步时间,Linux系统时间同步
  13. proguard-gui 混淆代码简要笔记
  14. wps文字表格制作拼音田字格模板_手把手教你用wps表格excel制作田字格书法练习字帖...
  15. 【MisakaHookFinder使用方法】关于如何提取一个文字游戏的文本钩子以供翻译的方法
  16. C语言的酒店客房管理系统
  17. Python3 OpenCV 视频转字符动画
  18. hibou 主界面自定义侧滑
  19. 移动花卡服务器系统异常,开通了抖音移动花卡免流服务,为什么使用抖音不显示免流呢?...
  20. 计算机科学与技术专业前沿技术相关论文,计算机科学与技术专业创新能力的培养途径论文...

热门文章

  1. 语义分割-- SegNet:A Deep Convolutional Encoder-Decoder Architecture for Image Segmentation
  2. C++预编译头文件 bits/stdc++.h
  3. python精度丢失_JS大坑之19位数的Number型精度丢失问题详解_稚终_前端开发者
  4. android 6.0 获取手机号,头条小程序获取手机号码,回调未执行,导致无法获取手机号码...
  5. Spring Boot 2.3 中开启Spring Security
  6. 阿里二面,原来我对自动化测试的理解太浅了
  7. Python开发基础总结之函数+闭包+字典+列表
  8. mysql算法函数_mysql中的函数总结
  9. winform 让他间隔一段时间 执行事件 且只执行一次_Redis 事件机制详解
  10. java中建立单链表_Java数据结构,单链表的建立