标签云
asm恢复 bbed bootstrap$ dul In Memory kcbzib_kcrsds_1 kccpb_sanity_check_2 kfed MySQL恢复 ORA-00312 ORA-00607 ORA-00704 ORA-01110 ORA-01555 ORA-01578 ORA-08103 ORA-600 2131 ORA-600 2662 ORA-600 2663 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 Oracle 恢复 ORACLE恢复 ORACLE数据库恢复 oracle 比特币 OSD-04016 YOUR FILES ARE ENCRYPTED 勒索恢复 比特币加密文章分类
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (102)
- 数据库 (1,682)
- DB2 (22)
- MySQL (73)
- Oracle (1,544)
- Data Guard (52)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (159)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (7)
- Oracle ASM (67)
- Oracle Bug (8)
- Oracle RAC (53)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (28)
- Oracle备份恢复 (565)
- Oracle安装升级 (92)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (79)
- PostgreSQL (18)
- PostgreSQL恢复 (6)
- SQL Server (27)
- SQL Server恢复 (8)
- TimesTen (7)
- 达梦数据库 (2)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (37)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (20)
-
最近发表
- 断电引起的ORA-08102: 未找到索引关键字, 对象号 39故障处理
- ORA-00227: corrupt block detected in control file
- 手工删除19c rac
- 解决oracle数据文件路径有回车故障
- .wstop扩展名勒索数据库恢复
- Oracle Recovery Tools工具一键解决ORA-00376 ORA-01110故障(文件offline)
- OGG-02771 Input trail file format RELEASE 19.1 is different from previous trail file form at RELEASE 11.2.
- OGG-02246 Source redo compatibility level 19.0.0 requires trail FORMAT 12.2 or higher
- GoldenGate 19安装和打patch
- dd破坏asm磁盘头恢复
- 删除asmlib磁盘导致磁盘组故障恢复
- Kylin Linux 安装19c
- ORA-600 krse_arc_complete.4
- Oracle 19c 202410补丁(RUs+OJVM)
- ntfs MFT损坏(ntfs文件系统故障)导致oracle异常恢复
- .mkp扩展名oracle数据文件加密恢复
- 清空redo,导致ORA-27048: skgfifi: file header information is invalid
- A_H_README_TO_RECOVER勒索恢复
- 通过alert日志分析客户自行对一个数据库恢复的来龙去脉和点评
- ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的SERVICE_NAME
标签归档:O/S-Error: (OS 23)
O/S-Error: (OS 23) 数据错误(循环冗余检查)—故障处理
有客户由于磁盘坏道导致数据文件访问报ORA-27070 OSD-04016 O/S-Error等相关错误
rman 尝试读取88号文件
RMAN> backup datafile 88 format 'e:\rman\%d_%T_%I.%s%p'; 启动 backup 于 05-6月 -24 使用目标数据库控制文件替代恢复目录 分配的通道: ORA_DISK_1 通道 ORA_DISK_1: SID=2246 设备类型=DISK 通道 ORA_DISK_1: 正在启动全部数据文件备份集 通道 ORA_DISK_1: 正在指定备份集内的数据文件 输入数据文件: 文件号=00088 名称=E:\APP\ADMINISTRATOR\ORADATA\XFF\XIFENFEI.ORA 通道 ORA_DISK_1: 正在启动段 1 于 05-6月 -24 RMAN-00571: =========================================================== RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS =============== RMAN-00571: =========================================================== RMAN-03009: backup 命令 (ORA_DISK_1 通道上, 在 06/05/2024 18:33:43 上) 失败 ORA-19501: 文件 "E:\APP\ADMINISTRATOR\ORADATA\XFF\XIFENFEI.ORA", 块编号 322944 (块大小=8192) 上出现读取错误 ORA-27070: 异步读取/写入失败 OSD-04016: 异步 I/O 请求排队时出错。 O/S-Error: (OS 23) 数据错误(循环冗余检查)。
检查系统日志,发现有报:设备 \Device\Harddisk0\DR0 有一个不正确的区块
到目前为止基本上可以判断是文件系统或者磁盘层面出现坏道导致该问题(磁盘坏道概率更大),使用工具对损坏数据文件进行强制拷贝,提示少量扇区数据无法拷贝
通过dbv检查恢复出来文件效果
E:\check_db>DBV FILE=D:/XIFENFEI.ORA DBVERIFY: Release 11.2.0.3.0 - Production on 星期日 6月 9 22:17:28 2024 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved. DBVERIFY - 开始验证: FILE = D:\XIFENFEI.ORA 页 323055 标记为损坏 Corrupt block relative dba: 0x1604edef (file 88, block 323055) Bad header found during dbv: Data in bad block: type: 229 format: 5 rdba: 0xe5e5e5e5 last change scn: 0xe5e5.e5e5e5e5 seq: 0xe5 flg: 0xe5 spare1: 0xe5 spare2: 0xe5 spare3: 0xe5e5 consistency value in tail: 0x4c390601 check value in block header: 0xe5e5 computed block checksum: 0x5003 DBVERIFY - 验证完成 检查的页总数: 524288 处理的页总数 (数据): 204510 失败的页总数 (数据): 0 处理的页总数 (索引): 127485 失败的页总数 (索引): 0 处理的页总数 (其他): 3030 处理的总页数 (段) : 0 失败的总页数 (段) : 0 空的页总数: 189262 标记为损坏的总页数: 1 流入的页总数: 0 加密的总页数 : 0 最高块 SCN : 184063522 (3470.184063522)
运气不错,就一个数据库block异常,通过dba_extents查询坏块所属对象,运气不太好是一个表数据
SQL> SELECT OWNER, SEGMENT_NAME, SEGMENT_TYPE, TABLESPACE_NAME, A.PARTITION_NAME 2 FROM DBA_EXTENTS A 3 WHERE FILE_ID = &FILE_ID 4 AND &BLOCK_ID BETWEEN BLOCK_ID AND BLOCK_ID + BLOCKS - 1; 输入 file_id 的值: 88 原值 3: WHERE FILE_ID = &FILE_ID 新值 3: WHERE FILE_ID = 88 输入 block_id 的值: 323055 原值 4: AND &BLOCK_ID BETWEEN BLOCK_ID AND BLOCK_ID + BLOCKS - 1 新值 4: AND 323055 BETWEEN BLOCK_ID AND BLOCK_ID + BLOCKS - 1 OWNER ------------------------------ SEGMENT_NAME -------------------------------------------------------------------------------- SEGMENT_TYPE TABLESPACE_NAME PARTITION_NAME ------------------ ------------------------------ ------------------------------ XFFUSER XFFTABLE TABLE XFFTBS_TAB2
设置跳过坏块导出数据,然后重命名原表导入数据,完成本次恢复,以前有过类似恢复:
一次侥幸的OSD-04016 O/S-Error异常恢复
O/S-Error: (OS 23) 数据错误(循环冗余检查) 数据库恢复
O/S-Error: (OS 23) 数据错误(循环冗余检查) 数据库恢复
有客户数据库运行过程中突然crash,检测发现ORA-27070 OSD-04016 O/S-Error: (OS 23) 等报错
Thu May 12 11:25:53 2022 KCF: write/open error block=0x19e95f online=1 file=57 H:\ORADATA\xifenfei\XFF51.DBF error=27070 txt: 'OSD-04016: 异步 I/O 请求排队时出错。 O/S-Error: (OS 23) 数据错误(循环冗余检查)。' Thu May 12 11:25:53 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_dbw0_3532.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 ORA-01114: 将块写入文件 57 时出现 IO 错误 (块 # 1698143) ORA-01110: 数据文件 57: 'H:\ORADATA\xifenfei\XFF51.DBF' ORA-27070: 异步读取/写入失败 OSD-04016: 异步 I/O 请求排队时出错。 O/S-Error: (OS 23) 数据错误(循环冗余检查)。 DBW0: terminating instance due to error 1242 Thu May 12 11:25:54 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_mman_3528.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 Thu May 12 11:25:54 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_lgwr_3544.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 Thu May 12 11:25:55 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_dbw1_3536.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 Thu May 12 11:25:55 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_psp0_3524.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 Thu May 12 11:25:55 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_ckpt_3548.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 Thu May 12 11:25:55 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_pmon_3520.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 Thu May 12 11:26:06 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_q002_37468.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 Thu May 12 11:26:08 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_reco_3556.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 Thu May 12 11:26:08 2022 Errors in file e:\oracle\product\10.2.0\admin\xifenfei\bdump\xifenfei_smon_3552.trc: ORA-01242: 数据文件出现介质故障: 数据库处于 NOARCHIVELOG 模式 Thu May 12 11:26:10 2022 Instance terminated by DBW0, pid = 3532
再次重启数据库报错 ORA-27070: 异步读取/写入失败 OSD-04016: 异步 I/O 请求排队时出错。类似错误
dbv检查数据文件报异常
通过以上信息基本上可以确认是由于底层故障(文件系统或者硬件故障),导致数据库文件访问异常,检查系统日志发现异常
通过专业恢复软件对异常文件进行恢复,实现数据库正常open(跳过坏块)