一、简介
dmdbchk 是 DM 提供的用于检查数据库完整性、正确性的命令行工具。
二、dmdbchk检测内容
1.数据文件合法性检验。
2.索引正确性校验。
3.对象 ID 合法性校验。
4.残留信号量和共享内存的检测及删除
三、使用说明
./dmdbchk HELP
关键字 说明
PATH dm.ini绝对路径或者当前目录的dm.ini
DCR_INI dmdcr.ini的路径
HELP 打印帮助信息
START_INDEXID 最小检查索引号
END_INDEXID 最大检查索引号
CHECK_SEMA 检查当前系统信号量使用情况
(只适用于LINUX,1:只做检查 2:检查并删除残留信号量)
CHECK_SHM 检查当前系统共享内存使用情况
(只适用于LINUX,1:只做检查 2:检查并删除残留 共享内存)
四、实例
[root@localhost bin]# ./dmdbchk PATH=/dm/data/AAA/dm.ini
/dmdbchk 版本信息/
[2022-01-24 10:55:35] dmdbchk V8
[2022-01-24 10:55:35] file dm.key not found, use default license!
Can not open ini file dmdcr.ini!
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL
ndct db load finished
/###开始标志###/
[2022-01-24 10:55:35] DM DB CHECK START……
/数据文件校验结果/
因为是新初始化的数据库,只有这三个重要的数据文件,临时文件不做检查
[2022-01-24 10:55:35] ————check dbf file size start————-
[2022-01-24 10:55:35] FILE=(ts_id=0, fil_id=0, path=/dm/data/AAA/SYSTEM.DBF)
[2022-01-24 10:55:35] FILE=(ts_id=1, fil_id=0, path=/dm/data/AAA/ROLL.DBF)
[2022-01-24 10:55:35] FILE=(ts_id=4, fil_id=0, path=/dm/data/AAA/MAIN.DBF)
[2022-01-24 10:55:35] ————check dbf file size end—————-
/索引校验结果/
[2022-01-24 10:55:35] ————check indexes start———————-
[2022-01-24 10:55:35] INDEX=(id=33554433, name=SYSINDEXCOLUMNS, table_name=SYSCOLUMNS)
[2022-01-24 10:55:35] INDEX=(id=33554434, name=SYSINDEXINDEXES, table_name=SYSINDEXES)
[2022-01-24 10:55:35] INDEX=(id=33554440, name=SYSINDEXTUSERS, table_name=SYSUSER$)
[2022-01-24 10:55:35] INDEX=(id=33554442, name=SYSINDEXSYSGRANTS, table_name=SYSGRANTS)
[2022-01-24 10:55:35] INDEX=(id=33554452, name=SYSINDEXCONSTRAINTS, table_name=SYSCONS)
[2022-01-24 10:55:35] INDEX=(id=33554458, name=SYSINDEXSYSAUDIT, table_name=SYSAUDIT)
……
[2022-01-24 10:55:36] ————check indexes end————————-
/对象 ID 校验结果/
[2022-01-24 10:55:36] ————check iid start—————————-
[2022-01-24 10:55:36] check cons id …
[2022-01-24 10:55:36] check index id …
[2022-01-24 10:55:36] check table id …
[2022-01-24 10:55:36] check proc id …
[2022-01-24 10:55:36] check schema id …
[2022-01-24 10:55:36] check synonym id …
[2022-01-24 10:55:36] check user id …
[2022-01-24 10:55:36] ————check iid end——————————-
/结束标志/
[2022-01-24 10:55:36] DM DB CHECK END……
/错误总数/
[2022-01-24 10:55:36] error count is 0
当前系统信号量使用情况
./dmdbchk CHECK_SEMA=1
/ dmdbchk 版本信息/
[2022-01-24 11:06:31] dmdbchk V8
/所有信号量检测结果/
[2022-01-24 11:06:31] get semid 589824(key:0x0ac2d825) current value:1, it is being used, continue!
[2022-01-24 11:06:31] get semid 491521(key:0x04a6491a) current value:1, it is being used, continue!
/总数归类/
[2022-01-24 11:06:31] check os semaphore finished:
[2022-01-24 11:06:31] total_cnt:2, active_cnt:2, check_err_cnt:0, need_del:0, real_del:0, del_err_cnt:0!
当前系统共享内存使用情况
./dmdbchk CHECK_SHM=1
/ dmdbchk 版本信息/
[2022-01-24 11:09:56] dmdbchk V8
[2022-01-24 11:09:56] check os shared memory finished:
[2022-01-24 11:09:56] total_cnt:0, active_cnt:0, check_err_cnt:0, need_del:0, real_del:0, del_err_cnt:0!
达梦相关技术信息在达梦云适配中心
https://eco.dameng.com
版权声明:本文为博主原创文章,未经博主允许不得转载。
达梦
- 上一篇:转载Python配置连接达梦数据库
- 下一篇:达梦8 dmfldr命令工具使用




