news 2026/5/1 10:25:48

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/5/1 9:59:32

ResNet18性能测试:并发请求处理能力

ResNet18性能测试:并发请求处理能力 1. 引言:通用物体识别中的ResNet-18角色 在当前AI应用广泛落地的背景下,通用图像分类已成为智能系统感知世界的基础能力之一。从智能相册自动打标签,到安防监控中的异常行为识别,…

作者头像 李华
网站建设 2026/4/23 4:40:44

ResNet18案例研究:社交媒体图像自动标记系统

ResNet18案例研究:社交媒体图像自动标记系统 1. 引言:通用物体识别与ResNet-18的工程价值 在社交媒体平台中,每天都有海量用户上传图片内容。如何高效理解这些图像语义,并自动生成准确标签(如“滑雪”、“宠物猫”、…

作者头像 李华
网站建设 2026/5/1 7:21:55

ResNet18实战:野生动物监测识别系统搭建

ResNet18实战:野生动物监测识别系统搭建 1. 引言:从通用识别到生态守护 1.1 通用物体识别的工程价值 在人工智能落地的浪潮中,图像分类作为计算机视觉的基础任务,正广泛应用于智能安防、环境监测、农业管理等多个领域。其中&am…

作者头像 李华
网站建设 2026/5/1 7:19:32

ResNet18性能测试:不同硬件平台对比评测

ResNet18性能测试:不同硬件平台对比评测 1. 引言:通用物体识别中的ResNet-18价值定位 在当前AI应用快速落地的背景下,轻量级图像分类模型成为边缘计算、嵌入式设备和本地化服务的核心选择。其中,ResNet-18 作为深度残差网络&…

作者头像 李华
网站建设 2026/5/1 5:06:43

896785

/79/79/9789

作者头像 李华
网站建设 2026/5/1 6:07:21

ResNet18应用案例:博物馆文物自动识别系统

ResNet18应用案例:博物馆文物自动识别系统 1. 引言:通用物体识别与ResNet-18的工程价值 在智能视觉系统快速发展的今天,通用物体识别已成为AI落地的核心能力之一。无论是安防监控、内容审核,还是智慧文旅场景,能够“…

作者头像 李华