使用 oncheck -cd 和 oncheck -cD 命令检查每页的一致性。使用 oncheck -cd -y 或 oncheck -cD -y 命令修复其不一致性。
oncheck -cd 选项从指定数据库、表、分片或多个分片(碎片)的 tblspace 中读取 blobpages 和 sbpages 除外的所有页,并检查每页的一致性。它对照这些页检查位图页中的条目,以验证映射。
oncheck -cD 选项执行与 oncheck -cd 相同的检查,并检查每个 blobpage 头的一致性。oncheck -cD 选项不会比较开始时间戳记(存储在头中)和结束时间戳记(存储在 blobpage 的末尾)。使用 oncheck -cD -y 选项可以清除 blobspace 中孤立的简单大对象(它可能在跨几个日志文件执行回滚后产生)。
如果数据库包含分片表,但您未指定分片,那么 oncheck -cd 选项检查表中的所有分片。如果您未指定表,该选项会检查数据库中的所有表。通过进行比较, oncheck -pd 选项将显示指定页的十六进制转储,但不检查一致性。
对于 oncheck -cd 和 oncheck -cD 选项,oncheck 实用程序在检查表的索引时锁定每张表。要修复这些页,请使用 oncheck -cd -y 或 oncheck -cD -y。
TBLspace data check for multipart:gbasedbt.t1 Table fragment partition part_1 in DBspace dbs1 Table fragment partition part_2 in DBspace dbs1 Table fragment partition part_3 in DBspace dbs1 Table fragment partition part_4 in DBspace dbs1 Table fragment partition part_5 in DBspace dbs1
尽管可以用 PARTITION 语法分片索引,但是不能限制只对一个分片或分区检查索引。例如,您可以指示 oncheck -cDI my_db:my_tab,data_dbs1 or oncheck -cDI my_db:my_tab%part1 。该检查的 D(数据)部分根据规范限制,然而 I(索引) 检查不会被限制。
oncheck -cD superstores_demo:catalog
TBLspace data check for stores_demo:gbasedbt.tab1 Table fragment in DBspace db1
TBLSPACE data check for stores_demo:gbasedbt.customer
BAD PAGE 2:28: pg_addr 2:28 != bp-> bf_pagenum 2:69
物理地址 2:28 表示 chunk 号 2 的页 28 。
-9845 Access method access_method_name does not exist in database. Ensure that the DataBlade installation was successful.
要监视 blobspace blobpage ,请参阅 oncheck -pB:显示 blobspace 统计信息。