断电引起redo和数据文件不一致故障恢复---惜分飞
联系:手机/微信(+86 17813235971) QQ(107644445)
作者:惜分飞版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]
有些时候故障总是来的让人非常意外,这个在准备停机迁移数据库之前的几分钟由于某种原因直接导致主机掉电,再次开机数据库无法启动
Sat Aug 03 23:10:37 2024Successful mount of redo thread 1, with mount id 3696805928Database mounted in Exclusive ModeLost write protection disabledCompleted: alter database mountSat Aug 03 23:10:43 2024alter database openErrors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_ora_6808.trc:ORA-01113: 文件 21 需要介质恢复ORA-01110: 数据文件 21: 'D:\APP\ADMINISTRATOR\ORADATA\XFF\XIFENFEI.DBF'ORA-1113 signalled during: alter database open... |
尝试数据库恢复各种报错ORA-600 kdourp_inorder2,ORA-600 3020,ORA-7445 kdxlin等
ALTER DATABASE RECOVER CONTINUE DEFAULT Media Recovery Log D:\APP\ADMINISTRATOR\FAST_RECOVERY_AREA\XFF\ARCHIVELOG\2024_08_03\O1_MF_1_1159998_MBW605HP_.ARCORA-279 signalled during: ALTER DATABASE RECOVER CONTINUE DEFAULT ...ALTER DATABASE RECOVER CONTINUE DEFAULT Media Recovery Log D:\APP\ADMINISTRATOR\FAST_RECOVERY_AREA\XFF\ARCHIVELOG\2024_08_03\O1_MF_1_1159999_MBW63QBY_.ARCSat Aug 03 23:22:10 2024Exception [type: ACCESS_VIOLATION, UNABLE_TO_READ] [ADDR:0xC] [PC:0x14306B54A, kdxlin()+4432]Sat Aug 03 23:22:10 2024Exception [type: ACCESS_VIOLATION, UNABLE_TO_READ] [ADDR:0xC] [PC:0x14306B54A, kdxlin()+4432]Sat Aug 03 23:22:10 2024Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_pr25_7740.trc (incident=132557):ORA-00600: internal error code, arguments: [kdourp_inorder2], [4], [22], [44], [44], [], [], [], [], [], [], []Incident details in: D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\incident\incdir_132557\xff_pr25_7740_i132557.trcERROR: Unable to normalize symbol name for the following short stack (at offset 213):dbgexProcessError()+200<-dbgeExecuteForError()+65<-dbgePostErrorKGE()+2269<-dbkePostKGE_kgsf()+77<-kgeade()+562<-kgerelv()+151<-kgerev()+45<-kgerec5()+60<-sss_xcpt_EvalFilterEx()+1862<-sss_xcpt_EvalFilter()+174<-.1.4_5+59<-00007FFCB5E2C92F<-00007FFCB5E3D82D<-00007FFCB5DE916B<-00007FFCB5E3C9EE<-kdxlin()+4432<-kco_issue_callback()+196<-kcoapl()+746<-kcbr_apply_change()+6156<-kcbr_mapply_change()+1162<-kcbrapply()+2297<-kcbr_apply_pending()+2931<-krp_slave_apply()+1155<-krp_slave_main()+4010<-ksvrdp()+2580<-opirip()+904<-opidrv()+906<-sou2o()+98<-opimai_real()+280<-opimai()+191<-BackgroundThreadStart()+646<-00007FFCB562168D<-00007FFCB5E14629Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_pr1w_6472.trc (incident=132485):ORA-07445: exception encountered: core dump [kdxlin()+4432] [ACCESS_VIOLATION] [ADDR:0xC] [PC:0x14306B54A]Incident details in: D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\incident\incdir_132485\xff_pr1w_6472_i132485.trcUse ADRCI or Support Workbench to package the incident.See Note 411.1 at My Oracle Support for error and packaging details.Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_pr2o_7472.trc (incident=132709):ORA-07445: exception encountered: core dump [kdxlin()+4432] [ACCESS_VIOLATION] [ADDR:0xC] [PC:0x14306B54A] Incident details in: D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\incident\incdir_132709\xff_pr2o_7472_i132709.trcUse ADRCI or Support Workbench to package the incident.See Note 411.1 at My Oracle Support for error and packaging details.Sat Aug 03 23:22:11 2024Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_pr18_7812.trc (incident=132301):ORA-00600: internal error code, arguments: [3020], [62], [517633], [260564481], [], [], [], []ORA-10567: Redo is inconsistent with data block (file# 62, block# 517633, file offset is 4240449536 bytes)ORA-10564: tablespace HSEMR_TABORA-01110: data file 62: 'D:\APP\ADMINISTRATOR\ORADATA\XFF\EMR006.DBF'ORA-10560: block type 'FIRST LEVEL BITMAP BLOCK'Sat Aug 03 23:22:56 2024Slave exiting with ORA-10562 exceptionErrors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_pr25_7740.trc:ORA-10562: Error occurred while applying redo to data block (file# 64, block# 508263)ORA-10564: tablespace HSEMR_TABORA-01110: data file 64: 'D:\APP\ADMINISTRATOR\ORADATA\XFF\HSEMR_TAB008.DBF'ORA-10561: block type 'TRANSACTION MANAGED DATA BLOCK', data object# 467202ORA-00600: internal error code, arguments: [kdourp_inorder2], [4], [22], [44], [44], [], [], []Sat Aug 03 23:22:56 2024Slave exiting with ORA-10562 exceptionErrors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_pr1w_6472.trc:ORA-10562: Error occurred while applying redo to data block (file# 65, block# 498512)ORA-10564: tablespace HSEMR_TABORA-01110: data file 65: 'D:\APP\ADMINISTRATOR\ORADATA\XFF\EMR009.DBF'ORA-10561: block type 'TRANSACTION MANAGED INDEX BLOCK', data object# 467200ORA-00607: Internal error occurred while making a change to a data blockORA-00602: internal programming exceptionORA-07445: exception encountered: core dump [kdxlin()+4432] [ACCESS_VIOLATION] [ADDR:0xC] Sat Aug 03 23:22:57 2024Media Recovery failed with error 448Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\xff\xff\trace\xff_pr00_6732.trc:ORA-00283: recovery session canceled due to errorsORA-00448: normal completion of background processSat Aug 03 23:22:57 2024ORA-600 signalled during: ALTER DATABASE RECOVER CONTINUE DEFAULT ...ALTER DATABASE RECOVER CANCEL ORA-1112 signalled during: ALTER DATABASE RECOVER CANCEL ... |
通过分析确认有部分数据文件和redo信息不匹配,导致无法正常recover成功
SQL> recover datafile 77;完成介质恢复。SQL> recover datafile 78;ORA-00283: 恢复会话因错误而取消ORA-00600: 内部错误代码, 参数: [3020], [78], [473221], [327628933], [], [], [],[], [], [], [], []ORA-10567: Redo is inconsistent with data block (file# 78, block# 473221, fileoffset is 3876626432 bytes)ORA-10564: tablespace HSEMR_TABORA-01110: 数据文件 78: 'D:\APP\ADMINISTRATOR\ORADATA\XFF\HIS23.DBF'ORA-10560: block type 'FIRST LEVEL BITMAP BLOCK'SQL> recover datafile 66;ORA-00279: 更改 6029114092 (在 08/03/2024 19:44:05 生成) 对于线程 1 是必需的ORA-00289: 建议:D:\APP\ADMINISTRATOR\FAST_RECOVERY_AREA\XFF\ARCHIVELOG\2024_08_03\O1_MF_1_1159999_MBW63QBY_.ARCORA-00280: 更改 6029114092 (用于线程 1) 在序列 #1159999 中指定日志: {<RET>=suggested | filename | AUTO | CANCEL}auto已应用的日志。完成介质恢复。SQL> recover datafile 65;ORA-00279: 更改 6029114092 (在 08/03/2024 19:44:05 生成) 对于线程 1 是必需的ORA-00289: 建议:D:\APP\ADMINISTRATOR\FAST_RECOVERY_AREA\XFF\ARCHIVELOG\2024_08_03\O1_MF_1_1159999_MBW63QBY_.ARCORA-00280: 更改 6029114092 (用于线程 1) 在序列 #1159999 中指定日志: {<RET>=suggested | filename | AUTO | CANCEL}autoORA-00283: 恢复会话因错误而取消ORA-10562: Error occurred while applying redo to data block (file# 65, block#498544)ORA-10564: tablespace HSEMR_TABORA-01110: 数据文件 65: 'D:\APP\ADMINISTRATOR\ORADATA\XFF\EMR009.DBF'ORA-10561: block type 'TRANSACTION MANAGED INDEX BLOCK', data object# 467200ORA-00607: 当更改数据块时出现内部错误ORA-00602: 内部编程异常错误ORA-07445: 出现异常错误: 核心转储 [kdxlin()+4432] [ACCESS_VIOLATION] [ADDR:0xC][PC:0x14306B54A] [UNABLE_TO_READ] []ORA-01112: 未启动介质恢复 |
对于最终无法正常recover成功数据文件,使用Oracle数据库恢复利器:Oracle Recovery Tools工具快速调整scn
然后重建ctl,recover 数据库并open成功
Sun Aug 04 01:01:51 2024Successful mount of redo thread 1, with mount id 3696824638Completed: CREATE CONTROLFILE REUSE DATABASE "XFF" NORESETLOGS FORCE LOGGING ARCHIVELOG MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 200 MAXINSTANCES 8 MAXLOGXFFTORY 23360LOGFILE GROUP 1 'D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO01.LOG' SIZE 50M BLOCKSIZE 512, GROUP 2 'D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO02.LOG' SIZE 50M BLOCKSIZE 512, GROUP 3 'D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO03.LOG' SIZE 50M BLOCKSIZE 512DATAFILE 'D:\APP\ADMINISTRATOR\ORADATA\XFF\SYSTEM01.DBF', 'D:\APP\ADMINISTRATOR\ORADATA\XFF\SYSAUX01.DBF',……ALTER DATABASE RECOVER database Media Recovery Start started logmerger processOnly allocated 127 recovery slaves (requested 128)Parallel Media Recovery started with 127 slavesSun Aug 04 01:01:56 2024Recovery of Online Redo Log: Thread 1 Group 2 Seq 1160002 Reading mem 0 Mem# 0: D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO02.LOGCompleted: ALTER DATABASE RECOVER database Sun Aug 04 01:02:20 2024alter database openBeginning crash recovery of 1 threads parallel recovery started with 32 processesStarted redo scanCompleted redo scan read 1946 KB redo, 0 data blocks need recoveryStarted redo application at Thread 1: logseq 1160002, block 2, scn 6029119350Recovery of Online Redo Log: Thread 1 Group 2 Seq 1160002 Reading mem 0 Mem# 0: D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO02.LOGCompleted redo application of 0.00MBCompleted crash recovery at Thread 1: logseq 1160002, block 3895, scn 6029139793 0 data blocks read, 0 data blocks written, 1946 redo k-bytes readInitializing SCN for created control fileDatabase SCN compatibility initialized to 3Sun Aug 04 01:02:21 2024LGWR: STARTING ARCH PROCESSESSun Aug 04 01:02:21 2024ARC0 started with pid=71, OS id=2772 ARC0: Archival startedLGWR: STARTING ARCH PROCESSES COMPLETEARC0: STARTING ARCH PROCESSESSun Aug 04 01:02:22 2024ARC1 started with pid=72, OS id=7996 Sun Aug 04 01:02:22 2024ARC2 started with pid=73, OS id=2900 Sun Aug 04 01:02:22 2024ARC3 started with pid=74, OS id=6856 Archived Log entry 1 added for thread 1 sequence 1160000 ID 0xc4814d77 dest 1:ARC1: Archival startedARC2: Archival startedARC2: Becoming the 'no FAL' ARCHARC2: Becoming the 'no SRL' ARCHARC1: Becoming the heartbeat ARCHThread 1 advanced to log sequence 1160003 (thread open)Thread 1 opened at log sequence 1160003 Current log# 1 seq# 1160003 mem# 0: D:\APP\ADMINISTRATOR\ORADATA\XFF\REDO01.LOGSuccessful open of redo thread 1MTTR advisory is disabled because FAST_START_MTTR_TARGET is not setSun Aug 04 01:02:23 2024SMON: enabling cache recoveryArchived Log entry 2 added for thread 1 sequence 1160002 ID 0xc4814d77 dest 1:Archived Log entry 3 added for thread 1 sequence 1160001 ID 0xc4814d77 dest 1:ARC3: Archival startedARC0: STARTING ARCH PROCESSES COMPLETE[7808] Successfully onlined Undo Tablespace 2.Undo initialization finished serial:0 start:7657234 end:7657703 diff:469 (4 seconds)Dictionary check beginningTablespace 'TEMP' #3 found in data dictionary,but not in the controlfile. Adding to controlfile.Dictionary check completeVerifying file header compatibility for 11g tablespace encryption..Verifying 11g file header compatibility for tablespace encryption completedSMON: enabling tx recovery*********************************************************************WARNING: The following temporary tablespaces contain no files. Txff condition can occur when a backup controlfile has been restored. It may be necessary to add files to these tablespaces. That can be done using the SQL statement: ALTER TABLESPACE <tablespace_name> ADD TEMPFILE Alternatively, if these temporary tablespaces are no longer needed, then they can be dropped. Empty temporary tablespace: TEMP*********************************************************************Database Characterset is ZHS16GBKNo Resource Manager plan active**********************************************************WARNING: Files may exists in db_recovery_file_destthat are not known to the database. Use the RMAN commandCATALOG RECOVERY AREA to re-catalog any such files.If files cannot be cataloged, then manually delete themusing OS command.One of the following events caused txff:1. A backup controlfile was restored.2. A standby controlfile was restored.3. The controlfile was re-created.4. db_recovery_file_dest had previously been enabled and then disabled.**********************************************************replication_dependency_tracking turned off (no async multimaster replication found)Starting background process QMNCSun Aug 04 01:02:27 2024QMNC started with pid=75, OS id=7884 LOGSTDBY: Validating controlfile with logical metadataLOGSTDBY: Validation completeCompleted: alter database open |
后续处理异常表,lob,index等数据,客户业务测试都ok,完成本次恢复工作
- ORA-00600: internal error code, arguments: [4194], [], [], [], [], [], [], []
- Oracle Recovery Tools 解决ORA-600 3020故障
- ORA-00742: 日志读取在线程 %d 序列 %d 块 %d 中检测到写入丢失情况
- ORA-00322 ORA-00312恢复
- ORA-01595/ORA-600 4194处理
- 数据库open报ORA-600 kcratr_scan_lastbwr故障处理
- 分享一次ORA-01113 ORA-01110故障处理过程
- 硬件故障数据库异常恢复
- ORA-00742 ORA-00312故障恢复
- ORA-600 kcrf_resilver_log_1故障处理
- 又一例ORA-600 kcratr_nab_less_than_odr
- ORA-600 kcbr_apply_change_11
断电引起redo和数据文件不一致故障恢复---惜分飞的更多相关文章
- 事务不提交,也有可能写redo和数据文件
事务不提交,也有可能写redo和数据文件
- 关于oracle修复控制文件与数据文件不一致的问题----
本小菜鸟周末鼓捣数据库关于rman恢复与备份方面的实验,结果不知道哪根筋搭错了,手一哆嗦,做了不知道什么操作,就出现了数据库打不开的严重状态,只能开启到mount状态,但是切换到open状态时就会报错 ...
- Linux环境下利用句柄恢复Oracle误删除的数据文件
在误删除Oracle的数据文件后,如果未关闭数据库,文件句柄还没有释放,且被删除的数据文件占用的磁盘块未被复写,则可以利用句柄的方式来恢复数据文件.下面模拟恢复过程. (一)环境 OS版本:redha ...
- Oracle数据库案例整理-Oracle系统执行时故障-断电导致数据文件状态变为RECOVER
1.1 现象描写叙述异常断电.数据库数据文件的状态由ONLINE变为RECOVER. 系统显演示样例如以下信息:SQL>selectfile_name,tablespace_name, ...
- SQLLoader4(数据文件中的列与表中列不一致情况-filler)
A.数据文件中字段个数少于表中列字段个数,但数据文件中缺少的列,在表定义中可以为空.----- 这种情况是比较简单的,只需要将数据文件中数据对应的列的名字写到控制文件中即可.因为SQL*Loader是 ...
- MySQL实例多库某张表数据文件损坏导致xxx库无法访问故障恢复
一.问题发现 命令行进入数据库实例手动给某张表进行alter操作,发现如下报错. mysql> use xx_xxx; No connection. Trying to reconnect... ...
- 定点分析: MySQL InnoDB是如何保证系统异常断电情况下的数据可靠性?
MySQL支持事务,所以保证数据可靠的前提是对数据的修改事务已经成功提交 这个问题可以解释为'MySQL InnoDB是如何保证事务C(一致性)D(持久性)性的?' 可能出现的两种情况: (一致性)数 ...
- 记数据库数据文件损坏恢复ORA-00376+ORA-01110
现象:业务平台无法登陆,日志报错为ORACLE的错误. 查看oracle日志的报错, ORA-00376: file 5 cannot be read at this time ORA-01110: ...
- oracle rename数据文件的两种方法
oracle rename数据文件的两种方法 2012-12-11 20:44 10925人阅读 评论(0) 收藏 举报 分类: oracle(98) 版权声明:本文为博主原创文章,未经博主允许不 ...
- ORACLE体系结构一 (物理结构)- 数据文件、日志文件、控制文件和参数文件
一.物理结构Oracle物理结构包含了数据文件.日志文件.控制文件和参数文件 1.数据文件每一个ORACLE数据库有一个或多个物理的数据文件(data file).一个数据库的数据文件包含全部数据库数 ...
随机推荐
- Node.js躬行记(30)——SkyWalking使用和排查分析
公司使用了阿里云的服务,其中可以在项目中使用全链路监测,最近要排查慢响应,所以就在 Node 项目中接了一下 SkyWalking. 本文还会记录在使用时遇到的问题,以及解决思路. 一.初始化 1)参 ...
- 首次进入Mysql修改密码报“The MySQL server is running with the --skip-grant-tables option so it cannot execute”--九五小庞
第一次安装完mysql,修改默认密码的时候,报"The MySQL server is running with the --skip-grant-tables option so it c ...
- 四方连续贴图自动生成+PBR贴图自动生成
官网:www.pixplant.com 软件有汉化补丁,可自行搜索 可以将一张图自动生成四分连续贴图,PBR材质贴纸 介绍: https://www.bilibili.com/video/BV1Ff4 ...
- 【转】-Java锁解析
不可不说的Java"锁"事 **该博客转载自美团技术团队 的不可不说的Java"锁"事 ** 前言 Java提供了种类丰富的锁,每种锁因其特性的不同,在适当的场 ...
- 联想3650 X型号服务器的raid划分
1进入bios,点击System setting选项: 2进去后,点击Storage选项: 3进去后,只有一个选项,就是AVAGO MegaRAID<ServerRAID M5210> C ...
- MySQL误删数据了,如何快速恢复?
前言 最近星球中有位小伙伴说:他不小心把测试环境MySQL表中所有数据都误删了,问我要如何快速恢复? 幸好他误删的是测试环境,非生产环境. 我遇到过,之前有同事把生产环境会员表中的数据误删除的情况. ...
- 将虚拟机从PVE上迁移至EXSI详细步骤!!!(避免踩坑)
近期进行了大量虚拟机迁移的动作,从PVE到EXSI,从PVE到PVE,从EXSI到EXSI,从EXSI到PVE,可算是把这两个平台玩遍了,害,简单做个记录,因为从PVE到EXSI迁移比较麻烦,而且参考 ...
- LangGraph官方文档笔记——1.构建一个基础聊天机器人
目录 LangGraph介绍 官方资料 环境配置 看官方的示例 快速开始demo--基础聊天机器人 1.设置环境变量 2.创建State类 3.创建langgraph图 4.创建LLM和聊天chatb ...
- dumpbin命令不能使用解决方法
我们在查看一个.exe文件需要哪些.dll和一个dll会导出那些函数的时候我们都会用到dumpbin,但运行的时候dumpbin的时候总是提示dumbin是无效的命令(在DOS下的cmd命令中),按照 ...
- 遇到ImportError: cannot import name ‘soft_unicode’ from 'markupsafe’问题
运行jupyter notebook的时候报错:ImportError: cannot import name 'soft_unicode' from 'markupsafe' 这个报错应该怎么解决呢 ...