首页 > 数据库 >Oracle 12C R2-新特性-多租户:支持本地UNDO模式

Oracle 12C R2-新特性-多租户:支持本地UNDO模式

时间:2022-09-29 12:07:13浏览次数:46  
标签:12C name R2 ------------------------------ undo UNDO SQL property


在12.1中,所有的在一个实例中的PDB只能共享同一个UNDO表空间。在12.2中它们都有各自的undo表空间了。这种新的管理机制就叫做本地undo模式。与此同时,在之前的版本中现在就成为是共享undo模式。本地undo模式为新建数据库的默认模式。

1 转换为共享undo模式

1.1 查询当前的模式:

SQL>COLUMN property_name FORMAT A30
SQL>COLUMN property_value FORMAT A30
SQL>SELECT property_name, property_value
FROM database_properties
WHERE property_name = 'LOCAL_UNDO_ENABLED';

PROPERTY_NAME PROPERTY_VALUE
------------------------------ ------------------------------
LOCAL_UNDO_ENABLED TRUE

1.2 查看ROOT和自己定义的pdb对应的undo表空间

SELECT con_id, tablespace_name
FROM cdb_tablespaces
WHERE tablespace_name LIKE 'UNDO%'
ORDER BY con_id;

CON_ID TABLESPACE_NAME
---------- ------------------------------
1 UNDOTBS1
3 UNDOTBS1

2 切换为共享undo模式

SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP UPGRADE;

SQL> ALTER DATABASE LOCAL UNDO OFF;
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP;

2.1 验证

SQL>COLUMN property_name FORMAT A30
SQL>COLUMN property_value FORMAT A30
SQL>SELECT property_name, property_value
FROM database_properties
WHERE property_name = 'LOCAL_UNDO_ENABLED';

PROPERTY_NAME PROPERTY_VALUE
----------------------------- ------------------------------
LOCAL_UNDO_ENABLED FALSE

虽然已经不是本地undo模式了,但是之前存在的undo表空间不会自动删除。如果碍事,要手动删除。

SQL>SELECT con_id, tablespace_name
FROM cdb_tablespaces
WHERE tablespace_name LIKE 'UNDO%'
ORDER BY con_id;

CON_ID TABLESPACE_NAME
---------- ------------------------------
1 UNDOTBS1
3 UNDOTBS1

–删除多余的undo表空间

SQL>ALTER SESSION SET CONTAINER = pdb1;
SQL>SELECT file_name
FROM dba_data_files
WHERE tablespace_name = 'UNDOTBS1';

----------------------------------------------------------------------------------------------------
/u02/app/oracle/oradata/cdb1/pdb1/undotbs01.dbf

SQL>DROP TABLESPACE undotbs1;
Tablespace dropped.

随着所有老的undo表空间被移除了,现在该实例就是运行在共享undo模式上了。

3 切换为本地undo模式

利用上面的环境,重新切换回去。

查询

可以看到是运行在共享undo模式上,而且只有一个undo表空间。

SQL>SELECT property_name, property_value
FROM database_properties
WHERE property_name = 'LOCAL_UNDO_ENABLED';

PROPERTY_NAME PROPERTY_VALUE
------------------------------ ------------------------------
LOCAL_UNDO_ENABLED FALSE

SQL>SELECT con_id, tablespace_name
FROM cdb_tablespaces
WHERE tablespace_name LIKE 'UNDO%'
ORDER BY con_id;

CON_ID TABLESPACE_NAME
---------- ------------------------------
1 UNDOTBS1

3.1 切换为本地undo模式

和切换为共享undo模式步骤相同。

SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP UPGRADE;

SQL> ALTER DATABASE LOCAL UNDO ON;

SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP;

3.2 验证

SQL>COLUMN property_name FORMAT A30
SQL>COLUMN property_value FORMAT A30
SQL>SELECT property_name, property_value
FROM database_properties
WHERE property_name = 'LOCAL_UNDO_ENABLED';

PROPERTY_NAME PROPERTY_VALUE
------------------------------ ------------------------------
LOCAL_UNDO_ENABLED TRUE

–可以看到Oracle自动为PDB创建了一个undo表空间

SQL>SELECT con_id, tablespace_name
FROM cdb_tablespaces
WHERE tablespace_name LIKE 'UNDO%'
ORDER BY con_id;

CON_ID TABLESPACE_NAME
---------- ------------------------------
1 UNDOTBS1
3 UNDO_1

3.3 新创建一个数据库

可以看到新创建的数据库也是运行在本地undo模式上。

SQL>CREATE PLUGGABLE DATABASE pdb2 ADMIN USER pdb_adm IDENTIFIED BY Password1;
SQL>ALTER PLUGGABLE DATABASE pdb2 SAVE STATE;

SQL>SELECT con_id, tablespace_name
FROM cdb_tablespaces
WHERE tablespace_name LIKE 'UNDO%'
ORDER BY con_id;

CON_ID TABLESPACE_NAME
---------- ------------------------------
1 UNDOTBS1
3 UNDO_1
4 UNDOTBS1


标签:12C,name,R2,------------------------------,undo,UNDO,SQL,property
From: https://blog.51cto.com/u_12946336/5722425

相关文章

  • Oracle 12C R2-新特性---实时物化视图
    文字部分基本上都是官方文档翻译过来的,不准确的地方请谅解。物化视图可用于查询重写,即使它们并不完全与基表同步,并且被认为失效。使用物化视图日志与增量计算以及陈旧的物......
  • Oracle 12C R2-新特性-多租户:PDB支持不同字符集
    在12.2之前的版本中,PDB的字符集必须和root容器保持一致。很显然这样就限制了PDB的灵活性。这个限制在12.2中被取消,12.2中支持PDB的字符集可以和root容器字符集不同。1检查C......
  • AWR报告分析利器 ---兼容10g,11g,12c,18c,19c
    介绍本工具是用Python开发,通过解析并分析AWR报告生成Markdown文本格式。给出AWR报告可能存在的性能问题,参数设置等建议。对于阅读AWR报告不熟悉的同学非常适用示例:链接:​​h......
  • Oracle 12C 创建容器数据库
    设置$DISPLAY变量启动dbca                        开始安装。    安装完成,那么多租户数据库的数据文件存放......
  • CATIA V5-6R2021软件安装包和安装教程
    CATIAV5-6R2021软件简介:CATIAV5-6R2021是一款由法国达索公司发行的CAD/CAE/CAM一休化软件,它集机械设计、工程分析和仿真、数控加工、CATweb网络应用解决方案于一身,包括完......
  • Windows10系统SQL SERVER 2008 R2 安装失败
    Win10系统没有问题,SQLSERVER2008R2安装文件也没有问题,但就是安装失败。原因:SQLSERVER2008R2最低只支持4k分区,原理跟其页面分配设计有关。Win10+新固态支持使用更......
  • Mysql三种日志(binlog,redolog,undolog)的作用和区别
    Mysql有三种很重要的日志也是面试经常涉及到的考点,分别是binlog、redolog和undolog,这里面binlog是server层实现的日志,而redolog和undolog都是引擎层(innodb)实现的......
  • winserver2019 域迁移的思路
    忘记DS还原密码“开始”--“运行”输入:ntdsutil.exec:\windows\system32\ntdsutil.exe:setdsrmpassword重置DSRM管理员密码:resetpasswordonserverwindows2请键入DS......
  • InnoDB MVCC——隐藏字段、Undolog、ReadView
    和MVCC相关的三个东西隐藏字段:InnoDB表中的每个行前都有的三个隐藏字段,用于实现MVCC机制undolog:用于记录数据的历史版本,每一个数据的历史版本在undolog中构成一个历史版......
  •  Springboot项目引入swagger2
    Springboot项目引入swagger2前言swagger是一个规范和完整的框架,用于生成、描述、调用和可视化的restful风格的web服务框架,总体目标是使客户端和文件系统作为服务器以同......