返回首页

gbase数据、南大通用产品文档:GBase8s监视事务

更新日期:2024年09月11日

本主题中包含有关监视事务方法的信息的参考。
命令
描述
引用
onstat -x
监视事务。
监视全局事务
onstat -g sql
监视 SQL 语句,并按会话标
识和数据库列出语句。

onstat -g stm
监视预编译 SQL 语句的内存
使用情况。

下列语法规则适用于那些定义在命名了的 ROW 类型或未命名的 ROW 类型上的列上的
插入:
在要插入字段值之前,指定 ROW 构造函数。
将 ROW 类型的字段值括在圆括号中。
将 ROW 表达式强制转型为适当的命名了的 ROW 类型(对于命名了的 ROW 类型)。
包含命名了的 row 类型的行
下列语句展示您如何将一行插入到在 图 1 中的 employee 内:
INSERT INTO employee
VALUES ('Poole, John',

GBase 8s SQL 指南:教程
南大通用数据技术股份有限公司
- 168 -
ROW('402 High St', 'Willits', 'CA',
ROW(69055,1450))::address_t, 35000 );
由于 employee 表的 address 列是命名了的 ROW 类型,因此您必须使用强制转型运算符和
ROW 类型的名称(address_t)来插入类型 address_t的值。

包含未命名的 row 类型的行
假设您创建下图所示的表。student 表定义 s_address 列为一未命名的 row 类型。
图: 创建 student 表。
CREATE TABLE student
(
s_name VARCHAR(30),
s_address ROW(street VARCHAR (20), city VARCHAR(20),
state CHAR(2), zip VARCHAR(9)),
grade_point_avg DECIMAL(3,2)
);
下列语句展示您如何向 student 表添加一行。要插入到未命名的 row 类型列 s_address 内,
请使用 ROW 构造函数,但不要对该 row 类型值进行强制转型。
INSERT INTO student
VALUES ('Keene, Terry',
ROW('53 Terra Villa', 'Wheeling', 'IL', '45052'),
3.75);

为 row 类型指定 NULL 值
row 类型列的字段可包含 NULL 值。您可在列级别或在字段级别指定 NULL 值。
下列语句在列级别指定 NULL 值,
来为 s_address 列的所有字段插入 NULL 值。
当您在列
级别插入 NULL 值时,请不要包括 ROW 构造函数。
INSERT INTO student VALUES ('Brauer, Howie', NULL, 3.75);
当您为 ROW 类型的特定字段插入 NULL 值时,必须包括 ROW 构造函数。下列
INSERT 语句展示您可以如何将 NULL 值插入到 employee 表的address 列的特定字段内。
(address 列被定义为命名了的 ROW 类型。)
INSERT INTO employee
VALUES (
'Singer, John',
ROW(NULL, 'Davis', 'CA',

GBase 8s SQL 指南:教程
南大通用数据技术股份有限公司
- 169 -
ROW(97000, 2000))::address_t, 67000
);
当您为 ROW 类型的字段指定 NULL 值时,当该 ROW 类型出现在 INSERT 语句、
UPDATE 语句或程序变量赋值中时,无需显式地强制转型该 NULL 值。
下列 INSERT 语句展示您如何为 student 表的 s_address 列的 street 和 zip 字段插入 NULL
值:
INSERT INTO student
VALUES(
'Henry, John',
ROW(NULL, 'Seattle', 'WA', NULL), 3.82
);

操作步骤
请在执行下面的安装步骤前先获取license 文件。
步骤1 :获取安装包并解压:
1.
复制安装包到文件系统的某个目录下,拷贝命令参考如下:
# cp
/tmp/GBase8a_MPP_Cluster-NoLicense-9.5.3.17-redhat7.3-x86_64.tar.bz2
/opt
2.
进入该目录,在命令行模式下使用tar 命令进行解压。解压命令如下:
#cd /opt
# tar xjf
GBase8a_MPP_Cluster-NoLicense-9.5.3.17-redhat7.3-x86_64.tar.bz2
3.
解压后,将会在解压目录下生成gcinstall 目录:
# ls /opt
gcinstall
步骤2 :创建DBA 用户并配置权限
1.
使用操作系统root 用户在所有集群节点服务器上创建DBA 用户。
安装示例中DBA 用户以gbase 为例,
本手册中不做特殊说明均默认以gbase 为DBA
用户。
# useradd gbase
# passwd gbase

GBase 8a MPP Cluster 产品手册
3 集群安装升级与卸载
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
62
2.
使用root 用户将gcinstall 目录属主更改为DBA 用户
# chown –R gbase:gbase gcinstall
3.
使用root 用户将安装目录的属主更改为DBA 用户
安装目录是由demo.options 文件中installPrefix 参数指定的软件安装目录,默认是
/opt
# chown –R gbase:gbase /opt
4.
使用root 用户在所有节点上给DBA 用户赋予安装GBase 相关的权限
使用root用户将gcinstall目录下的SetSysEnv.py文件拷贝到集群所有节点服务器上,
并执行该文件。
# scp SetSysEnv.py
root@192.168.146.21:/opt
# /opt/SetSysEnv.py
--dbaUser=gbase --installPrefix=/opt
SetSysEnv.py 语法说明:
# python SetSysEnv.py --dbaUser=* --installPrefix=* [--cgroup]
步骤3:切换到DBA 用户,并修改安装配置文件参数。
进入解压后的gcinstall 目录,
根据实际的集群环境修改安装参数文件demo.options,
具体操作如下:
#su - gbase
$ vi /opt/gcinstall/demo.options
installPrefix= /opt
coordinateHost = 192.168.146.20,192.168.146.21,192.168.146.22
参数名称


--installPrefix=INSTALLPREFIX
用户可配安装目录,必须为demo.options 中
installPrefix。集群日志按归档功能使用该参数。
--dbaUser=DBAUSER
必须为demo.options 中的dbaUser。
--cgroup
使用资源管理功能时,主要用于修改资源管理配
置文件。在使用资源管理前必须执行。
注意
安装之前,需要在gcluster 节点和gnode 节点上使用root 用户执行安装包中提供的一键
部署脚本SetSysEnv.py。如果GCware 节点独立部署在单独的服务器上,GCware 节
点不需要执行SetSysEnv.py 文件。
1.
将该脚本拷贝到要安装集群的各个节点,每个节点都需要使用root 执行;
2.
集群各个节点在安装之前,必须存在集群的安装用户,且拥有安装目录的
读写权限

GBase 8a MPP Cluster 产品手册
3 集群安装升级与卸载
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
63
coordinateHostNodeID = 20,21,22
dataHost =