oracle12c 修改scn值,Oracle 12c SCN推进方法汇总(二)之EVENT

本文介绍了如何通过修改 Oracle 数据库的参数并使用 RESETLOGS 方式打开数据库,实现 SCN 的跳跃。在过程中,详细展示了参数设置、数据库关闭与启动、SCN 的推进以及 OPEN 过程可能的耗时。这种方法有助于在特定情况下恢复数据库到指定 SCN 状态。
摘要由CSDN通过智能技术生成

SQL> select current_scn from v$database;

CURRENT_SCN

-----------

5100732

SQL> shutdown immediate

Database closed.

Database dismounted.

ORACLE instance shut down.

SQL> quit

Disconnected from Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

2,修改pfile,添加参数

[oracle@devin-enmo script]$ vi /u01/app/oracle/product/12.2/dbhome_1/dbs/inithkora.ora

_allow_resetlogs_corruption=true

*.event="21307096 trace name context forever, level 5"

--event推进是以百万位单位推进,这里level 5即SCN推进500W

3,PFILE启动

--重新从pfile启动数据库,并用resetlogs方式open:

[oracle@devin-enmo script]$ sqlplus / as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Mon Feb 1 14:17:21 2021

Copyright (c) 1982, 2016, Oracle.  All rights reserved.

Connected to an idle instance.

SQL> startup mount  pfile='/u01/app/oracle/product/12.2/dbhome_1/dbs/inithkora.ora'

ORACLE instance started.

Total System Global Area  268435456 bytes

Fixed Size                  8619496 bytes

Variable Size             201329176 bytes

Database Buffers           50331648 bytes

Redo Buffers                8155136 bytes

Database mounted.

SQL> recover database using backup controlfile until cancel;

ORA-00279: change 5106151 generated at 02/01/2021 14:16:20 needed for thread 1

ORA-00289: suggestion : /u01/app/oracle/fast_recovery_area/1_1_1063364001.dbf

ORA-00280: change 5106151 for thread 1 is in sequence #1

Specify log: {=suggested | filename | AUTO | CANCEL}

cancel

Media recovery cancelled.

SQL> alter database open resetlogs;

Database altered.

--OPEN过程会耗时比较长,level的级别越高,耗时约长,具体计算方法见文末。

4,验证

SQL> select current_scn from v$database;

CURRENT_SCN

-----------

10106627

--推进了约500W

根据LEVEL值不一样,数据库OPEN耗时也不一样,计算公式:

level 1 Elapsed: 00:01:02.35

level 2 Elapsed: 00:02:16.23

level 6 Elapsed: 00:06:08.05

In general:  based on a 16k per second scn rate (16K/sec) , the open resetlogs time

would be at least (event level * 1000000 / 16000) seconds. Then level 1 would be at least

62+ seconds and level 4095 would be 71+ hours !.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值