华为云用户手册

  • 如何查询两个时间的时间差? 答:您可以通过以下方法计算时间差。 通过age()函数计算两个时间的时间差。 gaussdb=# SELECT age(timestamp '2001-04-10 14:00:00', timestamp '2001-04-06 13:00:00'); age ----------------- 4 days 01:00:00 (1 row) 通过将字符串转为date类型然后再相减。 gaussdb=# SELECT ('2001-04-10 14:00:00'::date - '2001-04-06 13:00:00'::date); ?column? ---------- 4 (1 row) 通过date_part()函数,获取日期或者时间值中子域的值。 gaussdb=# SELECT date_part('day', '2001-04-10 14:00:00'::timestamp - '2001-04-06 13:00:00'::timestamp); date_part ----------- 4 (1 row) 父主题: FAQ
  • 参数说明 pool_name 资源池名称。 资源池名称不能和当前数据库里已有的资源池重名。 取值范围:字符串,要符合标识符命名规范。 group_name 控制组名称。 设置控制组名称时,语法可以使用双引号,也可以使用单引号。 group_name对大小写敏感。 若数据库管理员指定自定义Class组下的Workload控制组,如control_group的字符串为:"class1:workload1";代表此资源池指定到class1控制组下的workload1控制组。也可同时指定Workload控制组的层次,如control_group的字符串为:"class1:workload1:1"。 若数据库用户指定Timeshare控制组代表的字符串,即"Rush"、"High"、"Medium"或"Low"其中一种,如control_group的字符串为"High";代表资源池指定到DefaultClass控制组下的"High" Timeshare控制组。 取值范围:字符串,要符合说明中的规则,其指定已创建的控制组。 stmt 资源池语句执行的最大并发数量。 取值范围:数值型,-1~2147483647‬。-1:不限制,0:禁止任何语句执行。 dop 资源池最大并发度,语句执行时能够创建的最多线程数量。 取值范围:数值型,1~2147483647‬。 memory_size 资源池最大使用内存。 取值范围:字符串,内容范围1KB~2047GB mem_percent 资源池可用内存占全部内存或者组用户内存使用的比例。 在多租户场景下,组用户和业务用户的mem_percent范围1~100,默认为20。 在普通场景下,普通用户的mem_percent范围为0~100,默认值为0。 mem_percent和memory_limit同时指定时,只有mem_percent起作用。 io_limits 资源池每秒可触发I/O次数上限。 以万次为单位计数。 io_priority I/O利用率高达90%时,重消耗I/O作业进行I/O资源管控时关联的优先级等级。 包括三档可选:Low、Medium和High。不控制时可设置为None。默认为None。 io_limits和io_priority的设置都仅对复杂作业有效。包括批量导入(INSERT INTO SELECT,COPY FROM,CREATE TABLE AS等),单DN数据量大约超过500MB的复杂查询和VACUUM FULL等操作。 max_workers 只用于扩容的接口,表示扩容数据重分布时,表内插入并发度。 max_connections 最大连接数,用来限制资源池可使用的最大连接数。 所有资源池的最大连接数加起来不能超过整个gaussdb进程设置的guc参数max_connections指定的最大连接数。
  • 示例 本示例假定用户已预先成功创建控制组(创建控制组请联系管理员处理)。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 --创建一个默认资源池,其控制组为"DefaultClass"组下属的"Medium" Timeshare Workload控制组。 gaussdb=# CREATE RESOURCE POOL pool1; -- 创建一个资源池,其控制组指定为"DefaultClass"组下属的"High" Timeshare Workload控制组。 gaussdb=# CREATE RESOURCE POOL pool2 WITH (CONTROL_GROUP="High"); -- 创建一个资源池,其控制组指定为"class1"组下属的"Low" Timeshare Workload控制组。 gaussdb=# CREATE RESOURCE POOL pool3 WITH (CONTROL_GROUP="class1:Low"); -- 创建一个资源池,其控制组指定为"class1"组下属的"wg1" Workload控制组。 gaussdb=# CREATE RESOURCE POOL pool4 WITH (CONTROL_GROUP="class1:wg1"); -- 创建一个资源池,其控制组指定为"class1"组下属的"wg2" Workload控制组。 gaussdb=# CREATE RESOURCE POOL pool5 WITH (CONTROL_GROUP="class1:wg2:3"); --删除资源池。 gaussdb=# DROP RESOURCE POOL pool1; gaussdb=# DROP RESOURCE POOL pool2; gaussdb=# DROP RESOURCE POOL pool3; gaussdb=# DROP RESOURCE POOL pool4; gaussdb=# DROP RESOURCE POOL pool5;
  • 语法格式 1 2 CREATE RESOURCE POOL pool_name [WITH ({MEM_PERCENT=pct | CONTROL_GROUP="group_name" | ACTIVE_STATEMENTS=stmt | MAX_DOP = dop | MEMORY_LIMIT='memory_size' | io_limits=io_limits | io_priority='priority' | nodegroup='nodegroup_name' | is_foreign = boolean }[, ... ])];
  • Global SysCache特性函数 gs_gsc_table_detail(database_id default NULL, rel_id default NULL) 描述:查看数据库里全局系统缓存的表元数据。调用该函数的用户需要具有SYSADMIN权限。 参数:指定需要查看全局系统缓存的数据库和表,database_id默认值NULL或者-1表示所有的数据库,0表示共享表,其他数字表示指定数据库及共享表,rel_id表示指定表的oid,默认值NULL或者-1表示所有的表,其他值表示指定的表,database_id不存在会报错,rel_id不存在结果为空。 返回值类型:Tuple 示例: SELECT * FROM gs_gsc_table_detail(-1) limit 1; database_oid | database_name | reloid | relname | relnamespace | reltype | reloftype | relowner | relam | relfilenode | reltablespace | relhasindex | relisshared | relkind | relnatts | relhasoids | relhaspkey | parttype | tdhasuids | attnames | extinfo --------------+---------------+--------+-------------------------+--------------+---------+-----------+----------+-------+-------------+---------------+-------------+-------------+---------+----------+------------+------------+----------+-----------+-----------+--------- 0 | | 2676 | pg_authid_rolname_index | 11 | 0 | 0 | 10 | 403 | 0 | 1664 | f | t | i | 1 | f | f | n | f | 'rolname' | (1 row) gs_gsc_catalog_detail(database_id default NULL, rel_id default NULL) 描述:查看数据库里全局系统缓存的系统表行信息。调用该函数的用户需要具有SYSADMIN权限。 参数:指定需要查看全局系统缓存的数据库和表,database_id默认值NULL或者-1表示所有的数据库,0表示共享表,其他数字表示指定数据库及共享表,rel_id表示指定表的id,仅包含所有有系统缓存的系统表,默认值NULL或者-1表示所有的表,其他值表示指定的表,database_id不存在会报错,rel_id不存在结果为空。 返回值类型:Tuple 示例: --首先通过pg_database获取特定数据库的oid,查询语句一般为:SELECT oid, * FROM pg_database; --返回元组中通过datname列找到对应的oid列的值,然后执行如下查询,示例获取的oid为16574。 gaussdb=# SELECT * FROM gs_gsc_catalog_detail(16574, 1260); database_id | database_name | rel_id | rel_name | cache_id | self | ctid | infomask | infomask2 | hash_value | refcount -------------+---------------+--------+-----------+----------+--------+--------+----------+-----------+------------+---------- 0 | | 1260 | pg_authid | 10 | (0, 9) | (0, 9) | 10507 | 26 | 531311568 | 10 0 | | 1260 | pg_authid | 11 | (0, 4) | (0, 4) | 2313 | 26 | 365368336 | 1 0 | | 1260 | pg_authid | 11 | (0, 9) | (0, 9) | 10507 | 26 | 3911517328 | 10 0 | | 1260 | pg_authid | 11 | (0, 7) | (0, 7) | 2313 | 26 | 1317799983 | 1 0 | | 1260 | pg_authid | 11 | (0, 5) | (0, 5) | 2313 | 26 | 3664347448 | 1 0 | | 1260 | pg_authid | 11 | (0, 1) | (0, 1) | 2313 | 26 | 276477273 | 1 0 | | 1260 | pg_authid | 11 | (0, 3) | (0, 3) | 2313 | 26 | 2465837659 | 1 0 | | 1260 | pg_authid | 11 | (0, 8) | (0, 8) | 2313 | 26 | 3205288035 | 1 0 | | 1260 | pg_authid | 11 | (0, 6) | (0, 6) | 2313 | 26 | 131811687 | 1 0 | | 1260 | pg_authid | 11 | (0, 2) | (0, 2) | 2313 | 26 | 1226484587 | 1 (10 rows) gs_gsc_clean(database_id default NULL) 描述:清理global syscache的缓存,需要注意,正在使用中的数据不会被清理。调用该函数的用户需要具有SYSADMIN权限。 参数:指定需要清理全局系统缓存的数据库,默认值NULL或者-1表示强制清理所有的数据库全局系统缓存,0表示只淘汰共享表的全局系统缓存,其他数字表示淘汰指定数据库以及共享表的全局系统缓存,database_id不存在会报错。 返回值类型:Boolean 示例: gaussdb=# SELECT * FROM gs_gsc_clean(); gs_gsc_clean -------------- t (1 row) gs_gsc_dbstat_info(database_id default NULL) 描述:获取本地节点的GSC的内存统计信息,包括tuple、relation、partition的缓存查询,命中,加载、失效、占用空间信息,DB级别的淘汰信息,线程引用信息,内存占用信息。可以用于定位性能问题,例如当发现hits/searches数组远小于1时,可能是global_syscache_threshold设置太小,导致查询命中率下降。调用该函数的用户需要具有SYSADMIN权限。 参数:指定需要查看的数据库全局系统缓存统计信息,NULL或者-1表示查看所有的数据库,0表示只查看共享表信息,其他数字表示查看指定的数据库和共享表的信息。不合法的输入值,database_id不存在会报错。 返回值类型:Tuple 示例: gaussdb=# SELECT * FROM gs_gsc_dbstat_info(); database_id | database_name | tup_searches | tup_hits | tup_miss | tup_count | tup_dead | tup_memory | rel_searches | rel_hits | rel_mis s | rel_count | rel_dead | rel_memory | part_searches | part_hits | part_miss | part_count | part_dead | part_memory | total_memory | swa pout_count | refcount -------------+---------------+--------------+----------+----------+-----------+----------+------------+--------------+----------+-------- --+-----------+----------+------------+---------------+-----------+-----------+------------+-----------+-------------+--------------+---- -----------+---------- 0 | | 300 | 235 | 31 | 22 | 2 | 9752 | 598 | 108 | 1 8 | 18 | 0 | 77720 | 0 | 0 | 0 | 0 | 0 | 0 | 752912 | 0 | 0 16574 | testdb | 3368 | 2289 | 329 | 273 | 0 | 92593 | 1113 | 524 | 4 8 | 48 | 0 | 340456 | 0 | 0 | 0 | 0 | 0 | 0 | 4124792 | 0 | 10 (2 rows) 父主题: 函数和操作符
  • PG_DB_ROLE_SETTING PG_DB_ROLE_SETTING系统表存储数据库运行时每个角色与数据绑定的配置项的默认值 。 表1 PG_DB_ROLE_SETTING字段 名称 类型 描述 setdatabase oid 配置项所对应的数据库,如果未指定数据库,则为0。 setrole oid 配置项所对应的角色,如果未指定角色,则为0。 setconfig text[] 运行时配置项的默认值。配置请联系管理员处理。 父主题: 用户和权限管理
  • umdk_enabled 参数说明:控制当前数据库主备DN是否开启UMDK功能。若DN主备间通信使用UMDK通信协议,则DN上相关日志关键字为“umdk”,若DN主备间通信使用TCP协议,则记录log日志。目前仅部分场景支持该功能。 参数类型:布尔型 参数单位:无 取值范围: on:开启UMDK功能,若当前数据库实例不支持UMDK网络通信协议,则DN主备间通信走TCP协议;若当前数据库实例支持UMDK网络通信协议,DN主备间通信走UMDK协议。 off:不开启UMDK功能,DN主备间通信走TCP协议。 默认值:off 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:根据具体使用场景进行设置。
  • comm_proxy_attr 参数说明:通信代理库相关参数配置。 该参数仅支持欧拉2.9系统下的集中式ARM单机。 本功能在线程池开启状态下生效,即enable_thread_pool为on。 配置该参数时需同步配置GUC参数local_bind_address为libos_kni的网卡IP。 参数模板:comm_proxy_attr = '{enable_libnet:true, enable_dfx:false, numa_num:4, numa_bind:[[30,31],[62,63],[94,95],[126,127]]}' 可配置参数说明。 enable_libnet:是否开启用户态协议,取值范围:true、false。 enable_dfx:是否开启通信代理库视图,取值范围:true、false。 numa_num:机器环境中numa的数量,支持2P、4P服务器,取值范围:4、8。 numa_bind:代理线程绑核参数,每个numa两个CPU绑核,共numa_num组,取值范围:[0,cpu数-1]。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串,长度大于0。 默认值:'none'
  • umdk_port 参数说明:当DN主备间通信使用UMDK协议时,主备DN网络通信链路的侦听端口。 参数类型:整型 参数单位:无 取值范围:1 ~ 65535 默认值:dataPortBase+15,dataPortBase的值为数据库初次安装时GUC参数port的取值。 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 GaussDB数据库适配UMDK通信协议栈,UMDK能力由操作系统提供和维护。 GaussDB数据库侧umdk_port默认不会侦听,需要在GUC参数umdk_enabled打开后,且当前环境硬件和软件支持UMDK协议时,数据库UMDK协议的功能才会开启,相关端口才会被侦听,DN主备开始执行UMS网络协议(UMS为UMDK的网络协议族)。
  • tcp_keepalives_interval 参数说明:在支持TCP_KEEPINTVL套接字选项的操作系统上,以秒数声明在重新传输之间等待响应的时间。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:0-180,单位为s。 默认值:30 如果操作系统不支持TCP_KEEPINTVL选项,这个参数的值必须为0。 在通过UNIX域套接字进行的连接的操作系统上,这个参数将被忽略。 将该值设置为0时,将使用系统的值。 该参数在不同的会话之间不共享,也就是说不同的会话连接可能有不同的值。 查看该参数时查出来的是当前会话连接内的参数值,而不是GUC副本的值。
  • tcp_user_timeout 参数说明:在支持TCP_USER_TIMEOUT套接字选项的操作系统上,设置GaussDB在发送数据时,指定传输的数据在TCP连接被强制关闭之前可以保持未确认状态的最大时长。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 如果操作系统不支持TCP_USER_TIMEOUT选项,这个参数的值将不生效,默认为0。 在通过UNIX域套接字进行连接的操作系统上,这个参数将被忽略。 取值范围:0-3600000,单位为ms。其中0表示跟随操作系统设置。 默认值:0 注意,不同操作系统内核下,这个参数生效结果将不同: aarch64 EulerOS(Linux内核版本:4.19),超时时间即为该参数设置值。 x86 Euler2.5(Linux内核版本:3.10),超时时间不是该参数设置值,而是不同区间的最大值,即超时时间取值为:tcp_user_timeout设置值所处“Linux TCP重传总耗时”区间的上限最大值。例如:tcp_user_timeout=40000时,重传总耗时为51秒。 表1 x86 Euler2.5(Linux内核版本:3.10)tcp_user_timeout参数取值示意 Linux TCP重传次数 Linux TCP重传总耗时区间(秒) tcp_user_timeout设置举例(毫秒) 实际Linux TCP重传总耗时(秒) 1 (0.2,0.6] 400 0.6 2 (0.6,1.4] 1000 1.4 3 (1.4,3] 2000 3 4 (3,6.2] 4000 6.2 5 (6.2,12.6] 10000 12.6 6 (12.6,25.4] 20000 25.4 7 (25.4,51] 40000 51 8 (51,102.2] 80000 102.2 9 (102.2,204.6] 150000 204.6 10 (204.6,324.6] 260000 324.6 11 (324.6,444.6] 400000 444.6 注:TCP每次重传耗时随重传次数指数增加,当TCP一次重传到达120秒后,后续每次重传都将耗时120秒不再变化。
  • tcp_keepalives_count 参数说明:在支持TCP_KEEPCNT套接字选项的操作系统上,设置GaussDB服务端在断开与客户端连接之前可以等待的保持活跃信号个数。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 如果操作系统不支持TCP_KEEPCNT选项,这个参数的值必须为0。 在通过UNIX域套接字进行连接的操作系统上,这个参数将被忽略。 将该值设置为0时,将使用系统的值。 该参数在不同的会话之间不共享,也就是说不同的会话连接可能有不同的值。 查看该参数时查出来的是当前会话连接内的参数值,而不是GUC副本的值。 取值范围:0-100,其中0表示GaussDB未收到客户端反馈的保持活跃信号则立即断开连接。 默认值:20
  • tcp_keepalives_idle 参数说明:在支持TCP_KEEPIDLE套接字选项的系统上,设置发送活跃信号的间隔秒数。不设置发送保持活跃信号,连接就会处于闲置状态。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 如果操作系统不支持TCP_KEEPIDLE选项 ,这个参数的值必须为0。 在通过UNIX域套接字进行的连接的操作系统上,这个参数将被忽略。 将该值设置为0时,将使用系统的值。 该参数在不同的会话之间不共享,也就是说不同的会话连接可能有不同的值。 查看该参数时查出来的是当前会话连接内的参数值,而不是GUC副本的值。 取值范围:0-3600,单位为s。 默认值:60
  • 参数说明 @version_num:Outline的版本。不指定默认为1.0.0,当前仅支持1.0.0,为后续版本Outline行为控制做预留。 BEGIN_OUTLINE_DATA/END_OUTLINE_DATA:生成的Outline Hint,在使用时需要放在两者之间。 BEGIN_OUTLINE_DATA和END_OUTLINE_DATA必须成对使用。 当同时使用BEGIN_OUTLINE_DATA和END_OUTLINE_DATA时,只有两者之间的hint会生效。
  • 功能描述 Outline是描述执行计划的重要手段,也是计划固化的持久化表示。Outline存储在数据库中,需要在不同版本之间兼容,可以指导优化器生成指定计划。内核在生成执行计划的同时,可以生成Outline。同时优化器能够使用Outline对计划进行控制,Outline是计划管理的核心前提能力。 Outline Hint是优化器为了完全复现某一计划而生成的一组hint信息,以BEGIN_OUTLINE_DATA开始,并以END_OUTLINE_DATA结束。Outline Hint可以通过explain(outline on)获得。使用获得的Outline Hint能够对计划进行控制。
  • 特性约束 使用之前需要设置set explain_perf_mode = pretty选项。 Outline用于计划的复现还原,目前Outline可以控制同一条SQL的如下方面: 查询重写。 每层subquery的物理算子: a)扫描方式 b)连接方法 c)连接顺序 d)bitmap扫描的索引表 e)参数化路径 f)连接的内表物化 每层subquery的agg方法。 any子链接提升的额外处理:hashed或者material。 smp计划数据的传输方式。 目前内核的bitmapscan、indexscan Hint指定优化器在扫描相关表时,使用指定的索引产生索引扫描路径,具体的索引条件由优化器根据代价生成。 对于复杂多表连接的SQL,outline固定计划还原时,性能优于遗传算法。 当有Outline Hint时,对于在BEGIN OUTLINE和END OUTLINE包含以外的hint,若为控制计划生成的hint则全部失效处理(2,3,4点所提及的hint),若非控制计划生成的hint则保留,如wlmrule慢SQL管控规则的hint。
  • 原型 1 2 3 4 5 6 SQLRETURN SQLBindCol(SQLHSTMT StatementHandle, SQLUSMALLINT ColumnNumber, SQLSMALLINT TargetType, SQLPOINTER TargetValuePtr, SQLLEN BufferLength, SQLLEN *StrLen_or_IndPtr);
  • 参数 表1 SQLBindCol参数 关键字 参数说明 StatementHandle 语句句柄。 ColumnNumber 要绑定结果集的列号。起始列号为0,以递增的顺序计算列号,第0列是书签列。若未设置书签页,则起始列号为1。 TargetType 缓冲区中C数据类型的标识符。 TargetValuePtr 输出参数:指向与列绑定的数据缓冲区的指针。SQLFetch函数返回这个缓冲区中的数据。如果此参数为一个空指针,则StrLen_or_IndPtr是一个有效值。 BufferLength TargetValuePtr指向缓冲区的长度,以字节为单位。 StrLen_or_IndPtr 输出参数:缓冲区的长度或指示器指针。若为空值,则未使用任何长度或指示器值。
  • 参数说明 policy_name 审计策略名称,需要唯一,不可重复。 取值范围:字符串,要符合标识符命名规范。 resource_label_name 资源标签名称。 DDL 指的是针对数据库执行如下操作时进行审计,目前支持:CREATE、ALTER、DROP、ANALYZE、COMMENT、GRANT、REVOKE、SET、SHOW。 DML 指的是针对数据库执行如下操作时进行审计,目前支持:SELECT、COPY、DEALLOCATE、DELETE、EXECUTE、INSERT、PREPARE、REINDEX、TRUNCATE、UPDATE。 ALL 指的是上述DDL或DML中支持的所有对数据库的操作。当形式为{ DDL | ALL }时,ALL指所有DDL操作;当形式为{ DML | ALL }时,ALL指所有DML操作。 filter_type 指定审计策略的过滤信息,过滤类型包括:IP、ROLES、APP。 filter_value 指具体过滤信息内容。 policy_comments 用于记录策略相关的描述信息。 ENABLE|DISABLE 可以打开或关闭统一审计策略。
  • 示例 添加/删除审计策略中的操作类型。 --创建一个对数据库执行CREATE的审计策略adt1。 gaussdb=# CREATE AUDIT POLICY adt1 PRIVILEGES CREATE; --添加adt1审计策略中的DROP。 gaussdb=# ALTER AUDIT POLICY adt1 ADD PRIVILEGES (DROP); --删除adt1审计策略中的DROP。 gaussdb=# ALTER AUDIT POLICY adt1 REMOVE PRIVILEGES (DROP); 修改审计策略的注释信息。 --修改adt1审计策略的注释信息为adt1_comments。 gaussdb=# ALTER AUDIT POLICY adt1 COMMENTS 'adt1_comments'; 修改审计策略的过滤信息。 --创建bob_audit用户。 gaussdb=# CREATE USER bob_audit PASSWORD '********'; --修改adt1审计策略的过滤用户为bob_audit。 gaussdb=# ALTER AUDIT POLICY adt1 MODIFY (FILTER ON (ROLES(bob_audit))); --删除bob_audit用户。 gaussdb=# DROP USER bob_audit; 删除审计策略的过滤条件。 --删除adt1审计策略的过滤条件。 gaussdb=# ALTER AUDIT POLICY adt1 DROP FILTER; 关闭审计策略。 --关闭adt1审计策略。 gaussdb=# ALTER AUDIT POLICY adt1 DISABLE; --删除adt1审计策略。 gaussdb=# DROP AUDIT POLICY adt1;
  • 语法格式 添加/删除审计策略中的操作类型。 ALTER AUDIT POLICY [ IF EXISTS ] policy_name { ADD | REMOVE } { privilege_audit_clause | access_audit_clause }; 修改审计策略中的过滤条件。 ALTER AUDIT POLICY [ IF EXISTS ] policy_name MODIFY ( filter_group_clause ); 将审计策略中的过滤条件删除。 ALTER AUDIT POLICY [ IF EXISTS ] policy_name DROP FILTER; 修改审计策略描述。 ALTER AUDIT POLICY [ IF EXISTS ] policy_name COMMENTS policy_comments; 打开或者关闭审计策略。 ALTER AUDIT POLICY [ IF EXISTS ] policy_name { ENABLE | DISABLE }; privilege_audit_clause: 审计策略中具体的DDL操作类型及目标资源标签。 1 PRIVILEGES ({ DDL | ALL } [ ON LABEL ( resource_label_name [, ... ] ) ]) access_audit_clause: 审计策略中具体的DML操作类型及目标资源标签。 ACCESS ({ DML | ALL } [ ON LABEL ( resource_label_name [, ... ] ) ]) filter_group_clause: 审计策略中的过滤条件。 1 FILTER ON { filter_type ( filter_value [, ... ] ) } [, ... ]
  • MY_IND_EXPRESSIONS MY_IND_EXPRESSIONS视图显示当前用户下基于函数的表达式索引的信息。所有用户都可以访问。该视图同时存在于PG_CATALOG和SYS Schema下。 表1 MY_IND_EXPRESSIONS字段 名称 类型 描述 table_owner character varying(64) 表的所有者。 table_name character varying(64) 表名。 index_owner character varying(64) 索引的所有者。 index_name character varying(64) 索引名。 column_expression text 定义列的基于函数的索引表达式。 column_position smallint 索引中列的位置。 父主题: 其他系统视图
  • 原型 1 2 3 4 5 6 SQLRETURN SQLGetData(SQLHSTMT StatementHandle, SQLUSMALLINT Col_or_Param_Num, SQLSMALLINT TargetType, SQLPOINTER TargetValuePtr, SQLLEN BufferLength, SQLLEN *StrLen_or_IndPtr);
  • 参数 表1 SQLGetData参数 关键字 参数说明 StatementHandle 语句句柄,通过SQLAllocHandle获得。 Col_or_Param_Num 要返回数据的列号。结果集的列按增序从1开始编号。书签列的列号为0。 TargetType TargetValuePtr缓冲中的C数据类型的类型标识符。若TargetType为SQL_ARD_TYPE,驱动使用ARD中SQL_DESC_CONCISE_TYPE字段的类型标识符。若为SQL_C_DEFAULT,驱动根据源的SQL数据类型选择缺省的数据类型。 TargetValuePtr 输出参数:指向返回数据所在缓冲区的指针。 BufferLength TargetValuePtr所指向缓冲区的长度。 StrLen_or_IndPtr 输出参数:指向缓冲区的指针,在此缓冲区中返回长度或标识符的值。
  • DB4AI.CREATE_SNAPSHOT_INTERNAL CREATE_SNAPSHOT_INTERNAL是db4ai.create_snapshot函数的内置执行函数,如表1所示。函数存在信息校验,无法直接调用。 表1 DB4AI.CREATE_SNAPSHOT_INTERNAL入参和返回值列表 参数 类型 描述 s_id IN BIGINT 快照id。 i_schema IN NAME 快照存储的名字空间。 i_name IN NAME 快照名称。 i_commands IN TEXT[] 定义数据获取的SQL命令。 i_comment IN TEXT 快照描述。 i_owner IN NAME 快照拥有者。 父主题: DB4AI Schema
  • GS_GSC_MEMORY_DETAIL GS_GSC_MEMORY_DETAIL视图显示当前节点当前进程的全局SysCache的内存占用情况,仅在开启GSC的模式下有数据。 由于此查询是以数据库内存上下文分隔的,因此会缺少一部分内存的统计,缺失的内存统计对应的内存上下文名称为GlobalSysDBCache。 表1 GS_GSC_MEMORY_DETAIL字段 名称 类型 描述 db_id text 数据库ID。 totalsize numeric 共享内存总大小,单位Byte。 freesize numeric 共享内存剩余大小,单位Byte。 usedsize numeric 共享内存使用大小,单位Byte。 父主题: 其他系统视图
  • PG_TS_CONFIG PG_TS_CONFIG系统表包含表示文本搜索配置的记录。其中的每一条配置包含一个特定的文本搜索解析器和字典映射的列表。 解析器在PG_TS_CONFIG记录中显示,但是字典映射的标记是由PG_TS_CONFIG_MAP里面的辅助记录定义的。 表1 PG_TS_CONFIG字段 名称 类型 引用 描述 oid oid - 行标识符(隐含属性,必须明确选择)。 cfgname name - 文本搜索配置名。 cfgnamespace oid PG_NAMESPACE.oid 包含这个配置的名称空间的OID。 cfgowner oid PG_AUTHID.oid 配置的所有者。 cfgparser oid PG_TS_PARSER.oid 这个配置的文本搜索解析器的OID。 cfoptions text[] - 分词相关配置选项。 父主题: 其他系统表
  • MY_ROLE_PRIVS MY_ROLE_PRIVS视图显示授予当前用户角色(包括public角色)的权限的信息。默认所有用户都可以访问。该视图同时存在于PG_CATALOG和SYS Schema下。 表1 MY_ROLE_PRIVS字段 名称 类型 描述 grantee character varying(128) 被授予权限的用户或角色名称。 granted_role character varying(128) 被授予的角色。 admin_option character varying(3) 该授权是否包含ADMIN选项。 YES:包含ADMIN选项。 NO:不包含ADMIN选项。 delegate_option character varying(3) 暂不支持,值为NULL。 default_role character varying(3) 暂不支持,值为NULL。 os_granted character varying(3) 暂不支持,值为NULL。 common character varying(3) 暂不支持,值为NULL。 inherited character varying(3) 暂不支持,值为NULL。 父主题: 用户和权限管理
  • SUMMARY_STATEMENT_COUNT 显示数据库汇聚各节点(数据库节点)当前时刻执行的五类语句(SELECT、INSERT、UPDATE、DELETE、MERGE INTO)和(DDL、DML、DCL)统计信息,如表1所示。 表1 SUMMARY_STATEMENT_COUNT字段 名称 类型 描述 user_name text 用户名。 select_count numeric select语句统计结果。 update_count numeric update语句统计结果。 insert_count numeric insert语句统计结果。 delete_count numeric delete语句统计结果。 mergeinto_count numeric merge into语句统计结果。 ddl_count numeric DDL语句的数量。 dml_count numeric DML语句的数量。 dcl_count numeric DCL语句的数量。 total_select_elapse numeric 总select的时间花费(单位:微秒)。 avg_select_elapse bigint 平均select的时间花费(单位:微秒)。 max_select_elapse bigint 最大select的时间花费(单位:微秒)。 min_select_elapse bigint 最小select的时间花费(单位:微秒)。 total_update_elapse numeric 总update的时间花费(单位:微秒)。 avg_update_elapse bigint 平均update的时间花费(单位:微秒)。 max_update_elapse bigint 最大update的时间花费(单位:微秒)。 min_update_elapse bigint 最小update的时间花费(单位:微秒)。 total_insert_elapse numeric 总insert的时间花费(单位:微秒)。 avg_insert_elapse bigint 平均insert的时间花费(单位:微秒)。 max_insert_elapse bigint 最大insert的时间花费(单位:微秒)。 min_insert_elapse bigint 最小insert的时间花费(单位:微秒)。 total_delete_elapse numeric 总delete的时间花费(单位:微秒)。 avg_delete_elapse bigint 平均delete的时间花费(单位:微秒)。 max_delete_elapse bigint 最大delete的时间花费(单位:微秒)。 min_delete_elapse bigint 最小delete的时间花费(单位:微秒)。 父主题: Query
  • ADM_HIST_SQL_PLAN ADM_HIST_SQL_PLAN视图描述当前用户通过执行EXPLAIN PLAN收集到的计划信息。默认只有系统管理员权限才可以访问,普通用户需要授权才可以访问。该视图同时存在PG_CATALOG和SYS Schema下。 表1 ADM_HIST_SQL_PLAN字段 名称 类型 描述 dbid text 数据库ID。 sql_id character varying(30) 表示插入该条数据的会话,由服务线程启动时间戳和服务线程ID组成。受非空约束限制。 plan_hash_value bigint 查询标识。 id integer 分配给执行计划中的每个步骤编号。 operation character varying(30) 操作描述。 options character varying(255) 操作选项。 object_node character varying(128) 暂不支持,值为NULL。 object# numeric 暂不支持,值为NULL。 object_owner name 表或索引的对象编号。 object_name name 操作对应的对象名,来自于用户定义。 object_alias character varying(261) 暂不支持,值为NULL。 object_type character varying(30) 对象类型。 optimizer character varying(20) 暂不支持,值为NULL。 parent_id numeric 暂不支持,值为NULL。 depth numeric 暂不支持,值为NULL。 position numeric 暂不支持,值为NULL。 search_columns numeric 暂不支持,值为NULL。 cost double precision 优化器对算子估算的执行代价。 cardinality double precision 优化器对算子估算访问表记录基数大小。 bytes numeric 暂不支持,值为NULL。 other_tag character varying(35) 暂不支持,值为NULL。 partition_start character varying(64) 暂不支持,值为NULL。 partition_stop character varying(64) 暂不支持,值为NULL。 partition_id numeric 暂不支持,值为NULL。 other character varying(4000) 暂不支持,值为NULL。 distribution character varying(20) 暂不支持,值为NULL。 cpu_cost numeric 暂不支持,值为NULL。 io_cost numeric 暂不支持,值为NULL。 temp_space numeric 暂不支持,值为NULL。 access_predicates character varying(4000) 暂不支持,值为NULL。 filter_predicates character varying(4000) 暂不支持,值为NULL。 projection character varying(4000) 操作输出的列信息。 time numeric 暂不支持,值为NULL。 qblock_name character varying(128) 暂不支持,值为NULL。 remarks character varying(4000) 暂不支持,值为NULL。 timestamp timestamp(0) without time zone 暂不支持,值为NULL。 other_xml clob 暂不支持,值为NULL。 con_dbid text 容器数据库ID,目前与dbid取值相同。 con_id numeric 容器ID,目前不支持容器,值为为0。 父主题: 其他系统视图
共100000条