返回首页

gbase数据、南大通用产品文档:GBase8soncheck pt 和 pT:显示表或分片的 tblspaces

更新日期:2024年09月11日

oncheck -pt 和 oncheck -pT 选项打印指定表或分片的 tblspace 报告。
它们之间的仅有一个
区别:oncheck -pT 打印更多的信息,包括一些特定索引的信息。
语法

表 1. oncheck -pt 和 oncheck -pT 命令的选项
元素
用途
关键注意事项
database
指定要检查其一致性的数据
库名称
语法必须符合 Identifier 段;请参阅
《GBase 8s SQL 指南:语法》
frag_dbs
指定包含想要检查其一致性
的分片的 dbspace 名称
Dbspace 必须存在并包含要检查一致性的分
片。
语法必须符合 Identifier 段;请参阅
Identifier

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 324 -
元素
用途
关键注意事项
owner
指定表的所有者
必须指定表的当前所有者。
语法必须符合 Owner Name 段;请参阅
Owner name
table
指定想要检查其一致性的表
的名称
表应存在。
语法必须符合 Table Name 段;请参阅
《GBase 8s SQL 指南:语法》

-pt 选项打印给定分片和数据库的 tblspace 报告。如果未指定表,该选项显示数据库中所
有表的信息。该报告包含一般的分配信息,包括最大行大小、键数量、extent 数量、其大
小、每个 extent 所分配和使用的页、当前的序列值以及表的创建日期。-pt 输出打印了
tblspace 页大小、逻辑页的页数(分配的页、使用的页和数据页)。
TBLspace Flags 字段显示了 tblspace 的配置信息,包括该 tblspace 是用于 Enterprise
Replication 还是时间序列数据。
Extents 字段列出了该表中 tblspace tblspace 条目的物理地址和第一个 extent 的首页地址。
该 extent 列表显示了每个事件中的逻辑页号和物理页号。
-pT 选项打印与 -pt 选项相同的信息。此外,-pT 选项还显示以下信息:
 特定索引信息
 按页类型分配页的信息(为 dbspace)
 表或表分片中压缩的行数以及其压缩的百分比
如果表或分片行没有被压缩,那么“Compressed Data Summary”段落不会出现在输出中。
当您想要运行选项时请做出计划,因为它要完整扫描一个分区。
-pt 和 -pT 的输出包含已使用页数的列表。输出中显示的该字段的值绝不会减小,因为作
为 extent 的一部分分配给 tblspace 的磁盘空间仍保持专用于该 extent,
即使在通过删除行
而释放空间之后也是如此。有关当前使用页数的准确计数,请参阅 -pT 选项提供的有关
tblspace 使用情况(按页类型组织)的详细信息。
oncheck -pt 输出样本
以下示例显示了 oncheck -pt 命令输出的样本:
TBLspace Report for testdb:tab1

Physical Address 2:10

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 325 -
Creation date 10/07/2004 17:01:16
TBLspace Flags 801 Page Locking
TBLspace use 4 bit bit-maps
Maximum row size 14
Number of special columns 0
Number of keys 0
Number of extents 1
Current serial value 1
Pagesize (k) 4
First extent size 4
Next extent size 4
Number of pages allocated 340
Number of pages used 337
Number of data pages 336
Number of rows 75806
Partition partnum 2097154
Partition lockid 2097154

Extents
Logical Page Physical Page Size Physical Pages
0 2:106 340 680
oncheck -pT 输出示例
以下示例显示了oncheck -pT 命令的输出:
TBLspace Report for database_a:nilesh.table_1a

Table fragment partition dbspace1 in DBspace dbspace1

Physical Address 3:5
Creation date 03/21/2009 15:35:47
TBLspace Flags 8000901 Page Locking
TBLspace contains VARCHARS
TBLspace use 4 bit bit-maps
TBLspace is compressed
Maximum row size 80

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 326 -
Number of special columns 1
Number of keys 0
Number of extents 1
Current serial value 100001
Current SERIAL8 value 1
Current BIGSERIAL value 1
Current REFID value 1
Pagesize (k) 2
First extent size 8
Next extent size 8
Number of pages allocated 24
Number of pages used 22
Number of data pages 14
Number of rows 500
Partition partnum 3145730
Partition lockid 3145730

Extents
Logical Page Physical Page Size Physical Pages
0 3:16053 24 24

Type Pages Empty Semi-Full Full Very-Full
---------------- ---------- ------- ------------ ------ --------
Free 9
Bit-Map 1
Index 0
Data (Home) 14
Data (Remainder) 0 0 0 0 0
----------
Total Pages 24

Unused Space Summary

Unused data bytes in Home pages 1177

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 327 -
Unused data bytes in Remainder pages 0

Home Data Page Version Summary

Version Count
0 (current) 14

Compressed Data Summary
Number of compressed rows and percentage of compressed rows 500 100.00

功能描述
SAVEPOINT 用于在当前事务里建立一个新的保存点。
保存点是事务中的一个特殊记号,
它允许将那些在它建立后执行的命令全部回滚,
把事
务的状态恢复到保存点所在的时刻。
注意事项
使用ROLLBACK TO SAVEPOINT 回滚到一个保存点。
使用RELEASE SAVEPOINT 删
除一个保存点,但是保留该保存点建立后执行的命令的效果。
保存点只能在一个事务块里面建立。在一个事务里面可以定义多个保存点。
由于节点故障或者通信故障引起的节点线程或进程退出导致的报错,以及由于COPY
FROM 操作中源数据与目标表的表结构不一致导致的报错,均不能正常回滚到保存点之前,
而是整个事务回滚。

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
1226
SQL 标准要求,使用savepoint 建立一个同名保存点时,需要自动删除前面那个同名保
存点。在GBase 8c 数据库里,我们将保留旧的保存点,但是在回滚或者释放的时候,只使
用最近的那个。释放了新的保存点将导致旧的再次成为ROLLBACK TO SAVEPOINT 和
RELEASE SAVEPOINT 可以访问的保存点。除此之外,SAVEPOINT 是完全符合SQL 标准
的。
语法格式
SAVEPOINT savepoint_name;
参数说明

savepoint_name
新建保存点的名称。
示例
--创建一个新表。
gbase=#CREATE TABLE table1(a int);
--开启事务。
gbase=#START TRANSACTION;
--插入数据。
gbase=#INSERT INTO table1 VALUES (1);
--建立保存点。
gbase=#SAVEPOINT my_savepoint;
--插入数据。
gbase=#INSERT INTO table1 VALUES (2);
--回滚保存点。
gbase=#ROLLBACK TO SAVEPOINT my_savepoint;
--插入数据。
gbase=#INSERT INTO table1 VALUES (3);
--提交事务。

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
1227
gbase=#COMMIT;
--查询表的内容,会同时看到1 和3,不能看到2,因为2 被回滚。
gbase=#SELECT * FROM table1;
--删除表。
gbase=#DROP TABLE table1;
--创建一个新表。
gbase=#CREATE TABLE table2(a int);
--开启事务。
gbase=#START TRANSACTION;
--插入数据。
gbase=#INSERT INTO table2 VALUES (3);
--建立保存点。
gbase=#SAVEPOINT my_savepoint;
--插入数据。
gbase=#INSERT INTO table2 VALUES (4);
--回滚保存点。
gbase=#RELEASE SAVEPOINT my_savepoint;
--提交事务。
gbase=#COMMIT;
--查询表的内容,会同时看到3 和4。
gbase=#SELECT * FROM table2;
--删除表。
gbase=#DROP TABLE table2;
相关命令
RELEASE SAVEPOINT,ROLLBACK TO SAVEPOINT

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
1228

systraceclasses 系统目录表包含跟踪类的名称和标识符。systraceclasses 具有以下列。
表 35. SYSTRACECLASSES 表列描述

类型
解释

GBase 8s SQL 指南:参考
南大通用数据技术股份有限公司 - 67 -


类型
解释
name
CHAR(18)
跟踪消息的类的名称
classid
SERIAL
跟踪类的标识代码

跟踪类是可以在开发和测试新的 DataBlade 模块和用户定义的例程过程中使用的跟
踪消息类别。
开发者可以通过在其代码中调用适当的 DataBlade
API 例程来使用跟踪设施。

要创建新的跟踪类,
将一行直接插入 systraceclasses表中。
缺省情况下,
所有用户都可
以查看此表,但只有具有 DBA 特权的用户才能对其进行修改。
除非没有定义 MITRACE_OFF 配置参数,否则数据库不支持跟踪。
name 列的唯一索引要求每个跟踪类都具有唯一名称。
数据库服务器为每个类指定唯一
顺序代码。此 classid 列的索引也只允许唯一值。