2019独角兽企业重金招聘Python工程师标准>>>

在数据库遇到ora-600[2662],scn不一致(又没有日志)的时候,我们首先想到的就是去推进数据库的scn,让数据库能够open起来,抢救其中的数据,但是由于各种乱用的情况,oraclescn的pach出来后(11.2.0.4,12.0.1.0默认就屏蔽),屏蔽了以前大部分传统的推进scn的方法(adjust_scn, _minimum_giga_scn),现在能够推进scn的有oradebug,bbed,修改控制文件.本文就列举通过ue修改控制文件scn来推进数据库scn的方法.

数据库当前scn

idle> select checkpoint_change# from v$database; CHECKPOINT_CHANGE# 271743118 idle> shutdown abort ORACLE 例程已经关闭。

分析控制文件中scn

这里我们可以看到加粗部分为数据库scn

SQL>select to_number('10327a59','xxxxxxxxx') from dual; TO_NUMBER('10327A59','XXXXXXXXX') 271743577

这里的scn值和在数据库中查询的值有小差别,因为查询时间点和我完全关闭数据库有个时间差,而这个时间差有scn变化.细红框部分为控制文件对块的验证信息

修改控制文件scn和验证信息

验证信息修改为全部0,scn信息你可以根据你的需求去修改,这里把数据库的scn修改为57253932971026,按照数据库的原理,启动后的scn应该稍微大于该scn值.

SQL>select to_number('341278563412','xxxxxxxxxxxxxxxxx') from dual; TO_NUMBER('341278563412','XXXXXXXXXXXXXXXXX') 57253932971026

启动数据库

idle> startup mount ORACLE 例程已经启动。 Total System Global Area 400846848 bytes Fixed Size 2440024 bytes Variable Size 289408168 bytes Database Buffers 100663296 bytes Redo Buffers 8335360 bytes 数据库装载完毕。 idle> recover database; 完成介质恢复。 idle> alter database open; 数据库已更改。 idle> select checkpoint_change# from v$database; CHECKPOINT_CHANGE# 57253932991028

数据库启动后查询scn为57253932991028(数据库当前scn)果然微大于57253932971026(修改控制文件scn),证明我们通过修改控制文件scn,实现数据库scn推近完全OK.不实验风险较大,请勿在生产环境上测试,负载后果自负

转载于:https://my.oschina.net/u/3635497/blog/2990596

通过修改控制文件scn推进数据库scn相关推荐

  1. 查询oracle数据库错误修改了,【案例】Oracle报错ora-00600[2662] 修改控制文件scn推进数据库scn...

    天萃荷净 运维DBA反映数据库重启后无法启动,报错ora-00600[2662],分析原因为SCN异常导致,通过修改控制文件scn推进数据库scn 在数据库遇到ora-600[2662],scn不一致 ...

  2. oracle更改语句用 怎么站位,Oracle 数据库如何修改控制文件的位置

    数据库通过控制文件保持数据库的完整性,一旦控制文件被破坏数据库讲无法启动,因此建议采用多路控制文件或者备份控制文件的方法. 控制文件是数据库建立的时候自动生成的二进制文件,只能通过实例进行修改,如果手 ...

  3. oracle数据库的scn,Oracle数据库SCN详解

    SCN号概述 SCN是当Oracle数据库更新后,由DBMS自动维护去累积递增的一个数字.Oracle数据库中一共有4种SCN分别为 系统检查点SCN: 系统检查点SCN位于控制文件中,当检查点进程启 ...

  4. mysql中的scn,oracle数据库SCN概念

    目录 1.SCN的介绍 2.SCN的工作机制 3.SCN的增加 4.其他的SCN 5测试 6小结 7问题 1.SCN的介绍 Oracle中的SCN有下面几种: 1)系统检查点scn(v$databas ...

  5. 通过历史控制文件恢复Oracle数据库,只需这10步

    墨墨导读:通过历史控制文件恢复数据库,只需这10步. 1. 记录控制文件.数据文件头的scn SYS@enmo>select checkpoint_change# from v$database ...

  6. oracle数据库imp导入失败提示:“不是有效的导出文件, 标头验证失败”解决方法,修改dmp文件里oracle数据库版本号方法

    报错信息如下,该报错主要是因为原来导出时的数据库版本和现有的数据库版本不匹配所致. C:\Users\Administrator>imp ncc2005zdh_0602/ufida file=D ...

  7. oracle之物理数据库结构概述(数据文件、重做日志文件,控制文件等各种数据库文件)

    oracle之物理数据库结构概述 oracle的物理结构其实是由各种各样的文件组成的, 其中与数据库相关的有: 数据文件(data file):这些文件是数据库的主要文件:其中包括数据表.索引和所有其 ...

  8. oracle某个表丢失,丢失一个控制文件并恢复数据库

    只丢失或损坏一个控制文件的情况下来恢复数据库,相对来说简单一点.一般来说,控制文件都需要形成 一个多路径冗余策略,来提高数据库的安全性.这样的话只需将完好的控制文件复制一个副本放到丢失或者 损坏了的控 ...

  9. SCN试验之二 checkpoin scn 与数据库scn的关系

    oracle11g 观察数据库scn: SQL> select dbms_flashback.get_system_change_number from dual; GET_SYSTEM_CHA ...

  10. Oracle数据文件scn不一致,控制文件与数据文件头SCN不一致导致数据库无法启动故障处理...

    环境说明 OS操作系统:WINDOWS 2012 64位 数据库版 本:ORACLE 11.2.0.1 故障问题描述 客户反映数据库无法启动,报ORA-01589:要打开数据库必须使用RESETLOG ...

最新文章

  1. lightgbm 决策树 可视化 graphviz
  2. 去掉警告:PerformSelector may cause a leak because its
  3. visualStudio创建项目过程
  4. 【原创】leetCodeOj ---Convert Sorted List to Binary Search Tree 解题报告
  5. padarray函数
  6. UGUI 自动布局的重叠BUG
  7. 白鹭引擎开发飞机大战详尽教程(四控制飞机移动)
  8. POJ 2251 Dungeon Master (BFS最短路)
  9. 电脑出现 远程计算机或者设备不受连接
  10. 堆排序时间复杂度_图解堆结构、堆排序及堆的应用
  11. CentOS 7安装配置Samba
  12. 标 题: 三维游戏里面的自动寻路的算法可能是什么样的?
  13. 推荐一个文字生成图片的网站
  14. 杭电、POJ、ZOJ ACM刷题顺序和题目分类详解
  15. 【内网安全】基础知识:工作组、域和权限分配
  16. Java实现P5713 【深基3.例5】洛谷团队系统
  17. struck.unpack
  18. 中国合伙人及致青春电影名言
  19. 优质的计算机软件著作权,计算机软件著作权登记后会公开吗?
  20. lodop 简单实现订单批量打印

热门文章

  1. 排序构造 GYM 101149 F - The Weakest Sith
  2. 2015 年 4 月份 LeanCloud 更新汇总
  3. jsp以及servlet中文乱码问题
  4. linux和windows时间同步问题(UTClocaltime)
  5. Wireshark实战分析之UDP协议
  6. keepalived+LVS 详解(1) -- 编译
  7. Linux上,最常用的一批命令解析
  8. centos6.5 gcc升级至4.8
  9. C++设计模式10--命令模式(二)(Command)--降低请求发送者与接收者耦合
  10. linux文件系统之mount流程分析