OracleTT.Com - 搜集互联网免费Oracle教程,免费Oracle视频教程,起步从这里开始!

Oracle数据库学习_Oracle书籍下载_MySQL书籍下载_Oracle免费视频教程 - OracleTT.Com

当前位置: 主页 > 备份恢复 > Oracle >

EVENT:ADJUST_SCN

时间:2011-11-03 09:22来源:网络 作者:s.o.m 点击:
The ADJUST_SCN event is useful in some recovery situations where the current SCN needs to be incremented by a large value to ensure it is ahead of the highest SCN in the database. This is typically required if either: a. An ORA-600 [2662] e
The ADJUST_SCN event is useful in some recovery situations where the
    current SCN needs to be incremented by a large value to ensure it
    is ahead of the highest SCN in the database. This is typically
    required if either:
      a. An ORA-600 [2662] error is signalled against database blocks
    or
      b. ORA-1555 errors keep occuring after forcing the database open
         or ORA-604 / ORA-1555 errors occur during database open.
         (Note: If startup reports ORA-704 & ORA-1555 errors together
                then the ADJUST_SCN event cannot be used to bump the
                SCN as the error is occuring during bootstrap.
                Repeated startup/shutdown attempts may help if the SCN
                mismatch is small)
    or
      c. If a database has been forced open used _ALLOW_RESETLOGS_CORRUPTION
         (See <Parameter:Allow_Resetlogs_Corruption> )


    The ADJUST_SCN event acts as described below.

  **NOTE: You can check that the ADJUST_SCN event has fired as it
    should write a message to the alert log in the form
  "Debugging event used to advance scn to %s".
  If this message is NOT present in the alert log the event
  has probably not fired.

  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  If the database will NOT open:
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Take a backup.
    You can use event 10015 to trigger an ADJUST_SCN on database open:

startup mount;

alter session set events '10015 trace name adjust_scn level 1';

        (NB: You can only use IMMEDIATE here on an OPEN database. If the
     database is only mounted use the 10015 trigger to adjust SCN,
     otherwise you get ORA 600 [2251], [65535], [4294967295] )

alter database open;

If you get an ORA 600:2256 shutdown, use a higher level and reopen.

    Do *NOT* set this event in init.ora or the instance will crash as soon
    as SMON or PMON try to do any clean up. Always use it with the
    "alter session" command.

  ~~~~~~~~~~~~~~~~~~~~~~~~~~
  If the database *IS* OPEN:
  ~~~~~~~~~~~~~~~~~~~~~~~~~~
    You can increase the SCN thus:

alter session set events 'IMMEDIATE trace name ADJUST_SCN level 1';

    LEVEL:  Level 1 is usually sufficient - it raises the SCN to 1 billion
            (1024*1024*1024)
    Level 2 raises it to 2 billion etc...

    If you try to raise the SCN to a level LESS THAN or EQUAL to its
    current setting you will get <OERI:2256>    - See below.
    Ie: The event steps the SCN to known levels. You cannot use
the same level twice.

  Calculating a Level from 600 errors:
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To get a LEVEL for ADJUST_SCN:

a) Determine the TARGET scn:
    ora-600 [2662]    See <OERI:2662>  Use TARGET >= blocks SCN
    ora-600 [2256]    See <OERI:2256>  Use TARGET >= Current SCN

  b) Multiply the TARGET wrap number by 4. This will give you the level
   to use in the adjust_scn to get the correct wrap number.
c) Next, add the following value to the level to get the desired base
   value as well :

        Add to Level         Base
        ~~~~~~~~~~~~ ~~~~~~~~~~~~
                   0            0
                   1   1073741824
                   2   2147483648
                   3   3221225472

(责任编辑:OracleTT)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
  • 上一篇:没有了
  • 下一篇:没有了
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容
热点内容