[20231021]生成bbed的执行脚本.txt

2023年 10月 27日 13.2k 0

[20231021]生成bbed的执行脚本.txt

--//尝试使用bbed 恢复rename IDL_UB1$的情况,前面的准备分析时间很长,恢复很容易。但是每次做修复数据块的一致性时,我总是还要

--//查询我以前写的文档,特别浪费时间记不住一些细节。实际上主要写计算公式上,我想既然已经给出提示信息。通过外部命令计算很

--//容易生成bbed的执行脚本,自己尝试看看。

--//bbed执行verify后出现6110,6111错误,简单更正公式如下:

--//code 6110

--//avsp = dtl-used-fsc

--//code 6111

--//tosp = avsp+stb+fsc

--//code=6110的情况:

BBED> verify

DBVERIFY - Verification starting

FILE = /mnt/ramdisk/book/system01.dbf

BLOCK = 243

Block Checking: DBA = 4194547, Block Type = KTB-managed data block

data header at 0x8ec644

kdbchk: the amount of space used is not equal to block size

        used=7298 fsc=66 avsp=822 dtl=8120

Block 243 failed with check code 6110

--//avsp = dtl-used-fsc

--//avsp= 8120-7298-66 = 756

BBED> assign kdbh.kdbhavsp=756

sb2 kdbhavsp                                @78       756

--//code=6111的情况:

BBED> verify

DBVERIFY - Verification starting

FILE = /mnt/ramdisk/book/system01.dbf

BLOCK = 243

Block Checking: DBA = 4194547, Block Type = KTB-managed data block

data header at 0x8ec644

kdbchk: space available on commit is incorrect

        tosp=890 fsc=66 stb=0 avsp=756

Block 243 failed with check code 6111

--//tosp = avsp+stb+fsc

--//tosp= 756+0+66  = 822

BBED> assign kdbh.kdbhtosp=822

sb2 kdbhtosp                                @80       822

--//在vim下定义如下,实际上写出来看上去很复杂,就是自己编辑过程再重现的过程。

noremap b10 Yp:.s/^\s*//:.s/ /;/g:s/$/;dtl-used-fsc/!!bc -lq:.s/^/--\/\/ assign kdbh.kdbhavsp = /

noremap b11 Yp:.s/^ *//:.s/ /;/g:s/$/;avsp+stb+fsc/!!bc -lq:.s/^/--\/\/ assign kdbh.kdbhtosp = /

--//简单解析一下:

--//noremap b10 Yp:.s/^\s*//:.s/ /;/g:s/$/;dtl-used-fsc/!!bc -lq:.s/^/--\/\/ assign kdbh.kdbhavsp = /

Yp                                     复制1行。

:.s/^\s*//                             删除开头的空行以及tab字符

:.s/ /;/g                              将全部空格替换为分号。used=7298 fsc=66 avsp=822 dtl=8120 变为 used=7298;fsc=66;avsp=822;dtl=8120

s/$/;dtl-used-fsc/                     在行尾增加如下;dtl-used-fsc。 used=7298;fsc=66;avsp=822;dtl=8120 变为 used=7298;fsc=66;avsp=822;dtl=8120;;dtl-used-fsc

!!bc -lq                               调用bc计算器,返回结果756.

:.s/^/--\/\/ assign kdbh.kdbhavsp = /  在行头加入--// assign kdbh.kdbhavsp = ;最终变为 --// assign kdbh.kdbhavsp = 756。

--//演示一下:

        used=7298 fsc=66 avsp=822 dtl=8120

--//快速的按 \b10,结果如下:

--// assign kdbh.kdbhavsp = 756

        tosp=890 fsc=66 stb=0 avsp=756

--//快速的按 \b11,结果如下:

--// assign kdbh.kdbhtosp = 822

--//我个人喜欢自己定义一个map.vim文件包括以上内容。在.vimrc文件中加入如下内容

source c:\vim\vim73\map.vim

--//这样生成的脚本,可以避免每次手工计算的错误。

相关文章

服务器端口转发,带你了解服务器端口转发
服务器开放端口,服务器开放端口的步骤
产品推荐:7月受欢迎AI容器镜像来了,有Qwen系列大模型镜像
如何使用 WinGet 下载 Microsoft Store 应用
百度搜索:蓝易云 – 熟悉ubuntu apt-get命令详解
百度搜索:蓝易云 – 域名解析成功但ping不通解决方案

发布评论