news 2026/4/15 11:55:52

obet 实现dbv功能(obet数据文件坏块检测)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
obet 实现dbv功能(obet数据文件坏块检测)

通过一段时间的测试和使用,obet修复了不少bug,关于obet的以往功能和特性的文章:
OBET工具使用说明

Oracle数据块编辑工具( Oracle Block Editor Tool)-obet
并且也在客户的生产环境上进行了实战:obet快速修改scn/resetlogs恢复数据库(缺少归档,ORA-00308).利用周末的时间又对obet的工具进行了功能增强,增加了dbv(数据块校验)功能.

Oracle dbv的不足
1. oracle dbv需要在安装oracle服务端的环境下才能执行
2. oracle dbv对于文件大小不正确(文件头记录block数和实际文件大小不匹配),文件头损坏等情况都可能导致dbv无法执行,类似下面的报错

C:\Users\XFF>dbvfile=H:\BaiduNetdisk\kingdee\system01.dbf

DBVERIFY: Release 11.2.0.4.0 - Production on 星期日 1月 11 17:30:29 2026

Copyright (c) 1982, 2011, Oracle and/orits affiliates. All rights reserved.

DBV-00107: 未知标头格式 (0) (2054913149)

C:\Users\XFF>

C:\Users\XFF>dbvfile=H:\BaiduNetdisk\kingdee\users01.dbf

DBVERIFY: Release 11.2.0.4.0 - Production on 星期日 1月 11 20:10:05 2026

Copyright (c) 1982, 2011, Oracle and/orits affiliates. All rights reserved.

DBV-00102: FILE (H:\BAIDUNETDISK\KINGDEE\USERS01.DBF) 在 endread操作 (-1) 期间出现文件 I/O错误

C:\Users\XFF>

3. oracle dbv一条命令执行检测一个数据文件,如果数据文件多,检查起来很繁琐
4. oracle dbv么有检查进度,对于io性能较慢,数据文件较大的情况,无法跟踪检查进度.

obet的dbv功能使用
1. 配置listfile.txt文件,格式为file# name

1 H:\BaiduNetdisk\kingdee\system01.dbf

5 H:\BaiduNetdisk\kingdee\EAS_D_EAS_STANDARD.ORA

2. 启动obet,执行open listfile.txt(如果不在obet目录提供完整路径)

OBET>openlistfile.txt

Loaded 2 files from configfile'listfile.txt'.

OBET> info

Loaded files (2 total):

----------------------------------------

Number Path

----------------------------------------

1 H:\BaiduNetdisk\kingdee\system01.dbf

5 H:\BaiduNetdisk\kingdee\EAS_D_EAS_STANDARD.ORA

----------------------------------------

3. 执行dbv命令(logfile 部分为可选),默认会记录日志在obet目录下面dbv_年月日时分秒.log的日志

OBET> dbv

===============================================

DBV (Data Block Verification)

Block Size: 8192 bytes

===============================================

Verifyingfile#1: H:\BaiduNetdisk\kingdee\system01.dbf (131841 blocks) - Started: 2026-01-11 18:03:58

file1, block 0: checksum error (expected 0xC4DA, got 0xC478), bad block

file1, block 1: checksum error (expected 0xF835, got 0xB835), bad block

Progress: 10000 / 131841 blocks checked...

Progress: 20000 / 131841 blocks checked...

……………….

Progress: 120000 / 131841 blocks checked...

Progress: 130000 / 131841 blocks checked...

File#1 completed: 0 all zero, 0 soft corrupted, 0 tailchk error, 2 checksum error, 0 rdba error

Verifyingfile#5: H:\BaiduNetdisk\kingdee\EAS_D_EAS_STANDARD.ORA (4194303 blocks) - Started: 2026-01-11 18:04:08

Progress: 10000 / 4194303 blocks checked...

Progress: 20000 / 4194303 blocks checked...

……………………

Progress: 260000 / 4194303 blocks checked...

Progress: 270000 / 4194303 blocks checked...

file5, block 277678: tailchk error (expected 0x0228BB21, got 0x0228AD21), bad block

file5, block 277679: rdba error (expected 277679, got 277615), bad block

file5, block 277680: rdba error (expected 277680, got 277616), bad block

file5, block 277681: rdba error (expected 277681, got 277617), bad block

………………

file5, block 277692: rdba error (expected 277692, got 277628), bad block

file5, block 277693: rdba error (expected 277693, got 277629), bad block

file5, block 277694: rdba error (expected 277694, got 277630), bad block

file5, block 279406: tailchk error (expected 0x02281E22, got 0x00000700), bad block

file5, block 279407: rdba error (expected 279407, got 448), bad block

file5, block 279408: rdba error (expected 279408, got 0), bad block

………………

Progress: 280000 / 4194303 blocks checked...

Progress: 290000 / 4194303 blocks checked...

Progress: 300000 / 4194303 blocks checked...

Progress: 310000 / 4194303 blocks checked...

file5, block 312932: tailchk error (expected 0x0106C0B8, got 0x010629B8), bad block

file5, block 312933: rdba error (expected 312933, got 312869), bad block

file5, block 312934: rdba error (expected 312934, got 312870), bad block

file5, block 312935: rdba error (expected 312935, got 312871), bad block

file5, block 312936: rdba error (expected 312936, got 312872), bad block

file5, block 312937: rdba error (expected 312937, got 312873), bad block

file5, block 312938: rdba error (expected 312938, got 312874), bad block

file5, block 312939: rdba error (expected 312939, got 312875), bad block

………………

Progress: 4180000 / 4194303 blocks checked...

Progress: 4190000 / 4194303 blocks checked...

File#5 completed: 1 all zero, 0 soft corrupted, 13 tailchk error, 1 checksum error, 255 rdba error

DBV completed at: 2026-01-11 18:09:30

===============================================

DBV Summary:

Total blocks checked: 4325872

Total all zero blocks found: 1

Total all rdba error blocks found: 255

Total all tailchk error blocks found: 13

Total all soft corrupted blocks found: 0

Total all checksum error blocks found: 3

Total bad blocks found: 272

===============================================

Detailed report saved to: dbv_20260111180358.log

OBET>

检测效果截图

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 11:53:11

TI高温环境MOSFET选型条件深度剖析

高温工况下TI MOSFET选型的实战指南:从参数迷雾到可靠设计在新能源汽车的电机控制器里,一个看似普通的MOSFET突然失效,导致整车动力中断;在光伏逆变器满载运行数月后,效率持续下降,排查发现是功率管高温下导…

作者头像 李华
网站建设 2026/4/15 11:51:07

ResNet18部署手册:多线程推理优化指南

ResNet18部署手册:多线程推理优化指南 1. 背景与应用场景 在边缘计算和实时视觉识别场景中,轻量级、高稳定性的图像分类模型需求日益增长。ResNet-18 作为深度残差网络中最经典的轻量版本之一,凭借其40MB左右的模型体积、毫秒级推理速度以及…

作者头像 李华
网站建设 2026/4/15 11:54:12

ResNet18部署指南:高并发场景下的优化策略

ResNet18部署指南:高并发场景下的优化策略 1. 背景与挑战:通用物体识别中的性能瓶颈 随着AI应用在智能安防、内容审核、电商推荐等领域的广泛落地,通用图像分类服务已成为基础设施级能力。基于TorchVision官方实现的ResNet-18模型&#xff…

作者头像 李华
网站建设 2026/4/15 11:51:06

ResNet18实战案例:智能相册的自动分类

ResNet18实战案例:智能相册的自动分类 1. 引言:通用物体识别与ResNet-18的价值 在智能设备普及的今天,用户每天产生海量照片,如何让这些图像数据“可搜索、可管理”成为智能相册系统的核心挑战。传统手动打标签效率低下&#xf…

作者头像 李华
网站建设 2026/4/14 13:29:34

ResNet18部署教程:解决模型加载问题

ResNet18部署教程:解决模型加载问题 1. 背景与痛点分析 在深度学习实际部署中,模型加载失败是开发者最常遇到的难题之一。尤其是在使用 torchvision.models 加载预训练模型时,经常出现如下错误: RuntimeError: Unable to load …

作者头像 李华
网站建设 2026/4/10 7:26:55

ResNet18性能优化:提升推理效率的7个技巧

ResNet18性能优化:提升推理效率的7个技巧 1. 引言:通用物体识别中的ResNet-18价值与挑战 在当前AI应用广泛落地的背景下,通用物体识别已成为智能监控、内容审核、辅助驾驶和AR/VR等场景的核心能力。其中,ResNet-18作为深度残差网…

作者头像 李华