在 Oracle 11.2.0.2 之后,随着一系列 SCN 耗尽问题的出现,很多补丁涌现出来,一个新的 Package 增加进来。

这个 Package 就是 DBMS_SCN 。

如果你的数据库中存在这个Package,也就意味着你已经安装具备了关于DB Link的修正补丁。

以下是这个包的主要函数过程以及说明,这个内容来自Oracle 11.2.0.4版本平台:

Rem

Rem $Header: rdbms/admin/dbmsscnc.sql /st_rdbms_11.2.0/1 2013/04/18 23:05:40 vgokhale Exp $

Rem

Rem dbmsscn.sql

Rem

Rem Copyright (c) 2012, 2013, Oracle and/or its affiliates.

Rem All rights reserved.

Rem

Rem NAME

Rem dbmsscnc.sql - dbms_scn package definition

Rem

Rem DESCRIPTION

Rem Rem

Rem NOTES

Rem Rem

Rem MODIFIED (MM/DD/YY)

Rem mtiwary 05/26/12 - Declarations and definitions related to DBMS_SCN

Rem package.

Rem mtiwary 05/26/12 - Created

Rem

Rem

Rem BEGIN SQL_FILE_METADATA

Rem SQL_SOURCE_FILE: rdbms/admin/dbmsscn.sql

Rem SQL_SHIPPED_FILE:

Rem SQL_PHASE:

Rem SQL_STARTUP_MODE: NORMAL

Rem SQL_IGNORABLE_ERRORS: NONE

Rem SQL_CALLING_FILE:

Rem END SQL_FILE_METADATA

SET ECHO ON

SET FEEDBACK 1

SET NUMWIDTH 10

SET LINESIZE 80

SET TRIMSPOOL ON

SET TAB OFF

SET PAGESIZE 100

CREATE OR REPLACE LIBRARY DBMS_SCN_LIB TRUSTED AS STATIC;

/

CREATE OR REPLACE PACKAGE DBMS_SCN AUTHID CURRENT_USER IS

DBMS_SCN_API_MAJOR_VERSION CONSTANT NUMBER := 1;

DBMS_SCN_API_MINOR_VERSION CONSTANT NUMBER := 0;

PROCEDURE GetCurrentSCNParams(

rsl OUT number,

headroom_in_scn OUT number,

headroom_in_sec OUT number,

cur_scn_compat OUT number,

max_scn_compat OUT number);

-- Currently no exceptions are thrown.

-- rsl - Reasonable SCN Limit as of 'now'

-- headroom_in_scn - Difference between current SCN and RSL

-- headroom_in_sec - number of seconds it would take to reach RSL

-- assuming a constant SCN consumption rate associated

-- with current SCN compatibility level

-- cur_scn_compat - current value of SCN compatibility

-- max_scn_compat - max value of SCN compatibility this database

-- understands

FUNCTION GetSCNParamsByCompat(

compat IN number,

rsl OUT number,

headroom_in_scn OUT number,

headroom_in_sec OUT number

) RETURN boolean;

-- compat -- SCN compatibility value

-- rsl -- Reasonable SCN Limit

-- headroom_in_scn -- Difference between current SCN and RSL

-- headroom_in_sec -- number of seconds it would take to reach RSL

-- assuming a constant SCN consumption rate associated

-- with specified database SCN compatibility

--

-- Returns False if 'compat' parameter value is invalid, and OUT parameters

-- are not updated.

PROCEDURE GetSCNAutoRolloverParams(

effective_auto_rollover_ts OUT DATE,

target_compat OUT number,

is_enabled OUT boolean);

-- effective_auto_rollover_ts - timestamp at which rollover becomes

-- effective

-- target_compat - SCN compatibility value this database

-- will move to, as a result of

-- auto-rollover

-- is_enabled - TRUE if auto-rollover feature is

-- currently enabled

PROCEDURE EnableAutoRollover;

PROCEDURE DisableAutoRollover;

END DBMS_SCN;

/

这里就可以看到 auto-rollover 的自动 SCN 兼容性终止时间,

也就是说,在不同的兼容性设置中,SCN的算法不同,但是内置了天然的算法过期时间。

在此之后,可以通过命令修改数据库的SCN兼容性算法:

SQL> ALTER DATABASE SET SCN COMPATIBILITY 2;

Database altered.

从高级别向低级别修改,需要数据库在Mount状态:

SQL> ALTER DATABASE SET SCN COMPATIBILITY 2;

ALTER DATABASE SET SCN COMPATIBILITY 2

*

ERROR at line 1:

ORA-01126: database must be mounted in this instance and not open in anyinstance

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> startup mount;

ORACLE instance started.

Total System Global Area 4609830912 bytes

Fixed Size2260888 bytes

Variable Size989855848 bytes

Database Buffers 3607101440 bytes

Redo Buffers 10612736 bytes

Database mounted.

SQL> ALTER DATABASE SET SCN COMPATIBILITY 2;

Database altered.

SQL> alter database open;

Database altered.

这是一个非常重要的变化。

oracle12C推SCN,Oracle 的 DBMS_SCN 修正以及SCN的auto-rollover新特性相关推荐

  1. Oracle 的 DBMS_SCN 修正以及 SCN 的 auto-rollover 新特性

    在 Oracle 11.2.0.2 之后,随着一系列 SCN 耗尽问题的出现,很多补丁涌现出来,一个新的 Package 增加进来. 这个 Package 就是 DBMS_SCN. 如果你的数据库中存 ...

  2. 添加列oracle默认值,Oracle 11g增加列,并带默认值的新特性

    在Oracle 11g以前,如果要在一个大表中增加一列,并设置默认值,那将是一个非常悲剧的事情.有些时候不得不选择在线重定义功能来实现 Oracle 11g增加列,并带默认值的新特性 [日期:2014 ...

  3. oracle12c密码文件,【转】Oracle 12c 关于密码文件(password)的几个新特性

    oracle数据库软件是获得过最高级别的安全认证,完全超越其它所有数据库软件,并且在可维护性上基于大量的实践需要稳步前行,这里简单列举几个12c 关于password几个新特性. 1. 新的passw ...

  4. 12c oracle 修改内存_Oracle12c中性能优化功能增强新特性之重大突破——内存列存储新特性...

    Oracle12c中内存列存储 内存列存储(IM column store) 是Oracle12.1.0.2版本的主要特点.该特点允许列,表,分区和物化视图在内存中以列格式存储,而不是通常的行格式.数 ...

  5. 12c oracle 修改内存_关于Oracle数据库12c 新特性总结

    概述 今天主要简单介绍一下Oracle12c的一些新特性,仅供参考. 参考: http://docs.oracle.com/database/121/NEWFT/chapter12102.htm#NE ...

  6. 无路可逃:Oracle 12.2 BigSCN新特性可能的DB Link兼容性问题

    在<云和恩墨技术通讯>的3月刊中,我们再次强调了关于 SCN 问题的预警,提醒大家在2019年6月23日之前采取必要的措施. 下载链接: https://cs.enmotech.com/d ...

  7. 盘点 Oracle 11g 中新特性带来的10大性能影响

    盘点 Oracle 11g 中新特性带来的10大性能影响 原创 2017-08-02 盖国强 数据和云 Oracle的任何一个新版本,总是会带来大量引人瞩目的新特性,但是往往在这些新特性引入之初,首先 ...

  8. oracle jdk1.7 内存,JDK 16 正式发布,一次性发布 17 个新特性…不服不行!

    上一篇:Java 15 正式发布, 14 个新特性 JDK 16 正式发布 牛逼啊,JDK 15 刚发布半年(2020/09/15),JDK 16 又如期而至(2021/03/16),老铁们,跟上. ...

  9. oracle 12c undo,Oracle 12C新特性-临时UNDO段(Temporary Undo Segments) | 信春哥,系统稳,闭眼上线不回滚!...

    在12C版本,为了减少UNDO表空间的使用率及减少REDO和归档日志的产生量,ORACLE推出了临时UNDO段(Temporary Undo Segments)新特性.这个新特性把临时表产生的UNDO ...

最新文章

  1. smartgit 授权文件 Free Trial License to Non-Commercial
  2. 超越GhostNet!吊打MobileNetV3!MicroNet通过极低FLOPs实现图像识别(文末获取论文)
  3. C#汉字转拼音(npinyin)将中文转换成拼音全文或首字母
  4. java cache system_Java Cache System JCS(一) 使用方法
  5. UUID介绍与生成的方法
  6. html5 formdata api,HTML5 API FormData --- 使用
  7. GCN、GAT、凸优化、贝叶斯、MCMC、LDA
  8. 记一次RAID阵列的迁移经历
  9. 拓端tecdat|R语言多臂试验 - 我们应该考虑多重性吗?
  10. hibernate java.lang.NoSuchMethodError: javax.persistence.OneToMany.orphanRemoval()Z
  11. 简单C语言小程序:求根公式求一元二次方程式的根!
  12. WFQ/CBWFQ/LLQ介绍
  13. 华为太极magisk安装教程_小米手机官方REC装面具(magisk)教程
  14. re学习笔记(0) CG-CTF-re-3 py交易
  15. “80后”全国模范检察官白静:传递青年干警正能量
  16. End-to-end 3D Point Cloud Instance Segmentation without Detection
  17. tab标签页-选项卡后边+后端所返数据的数量
  18. ffmpeg 之 hls
  19. linux中fstab文件_如何在Linux上写入fstab文件
  20. vue-router 源码和动态路由权限分配

热门文章

  1. 让Python在后台自动解压各种压缩文件!
  2. 技术沙龙 | 深度赋能AI全场景,揭秘你不知道的移动云
  3. IT 趣味故事:TCP 出“大事”了!
  4. Scikit-Learn 学得如何?程序员不容错过十大实用功能来袭
  5. GitHub 上 5 款超好用的数据库 GUI 带你玩转 MongoDB、Redis、SQL 数据库
  6. 专访 | 「Smartbi 」VP徐晶:未来,BI将成为决策者的诸葛亮
  7. 不知道不 OK!53 个 Python 经典面试题详解
  8. 一个月面试近 20 家,拿下阿里 Offer!
  9. 《原力计划【第二季】》第1周周榜揭晓!!!
  10. 2020 年,嵌入式开发工程师的两大必知必会!