华为云用户手册

  • GS_SPM_VALIDATE_PLAN(sql_hash, plan_hash) 描述:GS_SPM_VALIDATE_PLAN属于DBE_SQL_UTIL schema,它是SPM特性用于计划可用性验证的接口函数。 参数:如表5所示。 表5 GS_SPM_VALIDATE_PLAN入参和返回值列表 参数 类型 描 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - execute_status OUT boolean 被验证的计划是否可用: t:被验证的计划可用;f: 被验证的计划不可用 t/f 返回值类型:boolean 示例: SELECT dbe_sql_util.gs_spm_validate_plan(sql_hash, plan_hash) FROM gs_spm_sql_baseline WHERE outline LIKE '%IndexScan%'; gs_spm_validate_plan ---------------------- f (1 row)
  • GS_SPM_DELETE_PLAN(sql_hash, plan_hash) 描述:GS_SPM_DELETE_PLAN属于DBE_SQL_UTIL schema,它是SPM特性用于计划删除baseline的接口函数。若该函数在执行期间异常中止,可能会导致gs_spm_baseline表中记录数超出GUC参数spm_plan_capture_max_plannum指定的数量。 参数:如表6所示。 表6 GS_SPM_DELETE_PLAN入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - execute_status OUT boolean 计划删除行为是否正常完成:t表示正常;异常会报错。 t/f 返回值类型:boolean 示例: SELECT dbe_sql_util.gs_spm_delete_plan(sql_hash, plan_hash) FROM gs_spm_sql_baseline WHERE outline LIKE '%IndexScan%'; gs_spm_delete_plan -------------------- t (1 row)
  • GS_SPM_GET_PLAN_HISTORY(sql_input_hash, history_time) 描述:GS_SPM_GET_PLAN_HISTORY属于DBE_SQL_UTIL Schema,它是SPM特性用于查看指定查询语句在某个给定历史时间点之前的所有历史计划。 参数:如表7所示。 表7 GS_SPM_GET_PLAN_HISTORY入参和返回值列表 参数 类型 描述 取值范围 sql_input_hash IN bigint SQL文本的hash值。 - history_time IN timestamp with time zone 指定的历史时间点。 - sql_hash OUT bigint SQL文本的hash值。 - plan_hash OUT bigtint SQL计划outline文本的hash值。 - outline OUT text 当前计划对应outline的所有Hint的组合字符串。 - plan_status OUT text 当前计划的状态。 ACC:表示已经接受的计划。 UNACC:表示未接受的计划。 FIXED:一种特殊的ACC状态的计划,计划的匹配优先级高于ACC状态的计划。 gplan OUT boolean 当前计划是否是gplan。t表示是gplan;异常会报错。 t/f cost OUT double 当前计划的代价。 - sql_text OUT text SQL文本。 - param_num OUT integer SQL的参数数量。 - source OUT text baseline的来源。 AUTO:表示该基线由AUTO模式捕获。 MANUAL:表示该基线由MANUAL模式捕获。 STORE:表示该基线由STORE模式捕获。 history_creation_time OUT timestamp with time zone 跳变历史创建的时间。 - invalid OUT boolean 当前baseline是否无效。 t/f 返回值类型:record 示例: gaussdb=# SELECT dbe_sql_util.gs_spm_get_plan_history(sql_hash, creation_time + 1) FROM pg_catalog.gs_spm_plan_history WHERE sql_hash IN (SELECT sql_hash FROM pg_catalog.gs_spm_baseline WHERE sql_namespace = get_schema_oid(CURRENT_SCHEMA::cstring)); -[ RECORD 1 ]-----------+--------------------------------------------------------------------------------------------------------------------------------------- gs_spm_get_plan_history | (812490094,1950233227," begin_outline_data | TableScan(@""sel$1"" test_spm_gplan_change_perception.test_spm_perception_t1@""sel$1"") | version(""1.0.0"") | end_outline_data",UNACC,t,180,"select * from test_spm_perception_t1 where a = $1",1,STORE,10,"Mon Jan 13 06:04:22.614726 2025 PST",f) (4 rows)
  • GS_SPM_EVOLUTE_PLAN(sql_hash, plan_hash) 描述:GS_SPM_EVOLUTE_PLAN属于DBE_SQL_UTIL schema,是SPM特性用于计划演进的接口函数。只要该计划基线相关的表存在,就可以对该计划基线进行演进。 参数:如表1所示。 表1 GS_SPM_EVOLUTE_PLAN入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - evolute_status OUT boolean 演进行为是否正常完成:t表示正常;异常会报错。 t/f 返回值类型:boolean 示例: gaussdb=# SELECT * FROM dbe_sql_util.gs_spm_evolute_plan(107760189, 2284373089); evolute_status ---------------- t (1 row)
  • GS_SPM_SET_PLAN_STATUS(sql_hash, plan_hash, plan_status) 描述:GS_SPM_SET_PLAN_STATUS属于DBE_SQL_UTIL schema,它是SPM特性用于修改baseline状态的接口函数。 参数:如表2所示。 表2 GS_SPM_SET_PLAN_STATUS入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - plan_status IN text 计划的状态。 ACC:表示已经接受的计划。 UNACC:表示未接受的计划。 FIXED:一种特殊的ACC状态的计划,计划的匹配优先级高于ACC状态的计划。 execute_status OUT boolean 修改计划状态行为是否正常完成:t表示正常;异常会报错。 t/f 返回值类型:boolean 示例: gaussdb=# SELECT dbe_sql_util.gs_spm_set_plan_status(sql_hash, plan_hash, 'ACC') FROM gs_spm_sql_baseline where outline like '%BitmapScan%'; gs_spm_set_plan_status ------------------------ t (1 row)
  • GS_SPM_DISPLAY_PLANS(sql_hash) 描述:GS_SPM_DISPLAY_PLANS属于DBE_SQL_UTIL schema,它是SPM特性用于查看单条SQL所有baseline的接口函数。 参数:如表3所示。 表3 GS_SPM_DISPLAY_PLANS入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL的唯一标识。 - sql_hash OUT bigint SQL文本的hash值。 - plan_hash OUT bigint SQL计划outline文本的hash值。 - outline OUT text 当前计划对应outline的所有Hint的组合字符串。 - cost OUT double 当前计划的代价。 - status OUT text 当前计划的状态。 ACC:表示已经接受的计划。 UNACC:表示未接受的计划。 FIXED:一种特殊的ACC状态的计划,计划的匹配优先级高于ACC状态的计划。 gplan OUT boolean 当前计划是否是gplan。t表示是gplan;异常会报错。 t/f 返回值类型:bigint, text, double, text, boolean 示例: select sql_hash, plan_hash, outline, status, gplan from dbe_sql_util.gs_spm_display_plans(107760189) order by status, outline; sql_hash | plan_hash | outline | status | gplan -----------+------------+------------------------------------------------+--------+------- 107760189 | 2519317082 | begin_outline_data +| ACC | f | | IndexScan(@"sel$1" tb_a@"sel$1" tb_a_idx_c1) +| | | | version("1.0.0") +| | | | end_outline_data | | 107760189 | 2686653876 | begin_outline_data +| UNACC | f | | BitmapScan(@"sel$1" tb_a@"sel$1" tb_a_idx_c1)+| | | | version("1.0.0") +| | | | end_outline_data | | 107760189 | 2284373089 | begin_outline_data +| UNACC | f | | TableScan(@"sel$1" tb_a@"sel$1") +| | | | version("1.0.0") +| | | | end_outline_data | | (3 rows)
  • GS_SPM_RELOAD_PLAN(sql_hash,plan_hash) 描述:GS_SPM_RELOAD_PLAN属于DBE_SQL_UTIL schema,它是SPM特性用于加载baseline系统表中某baseline到SPM global cache中的接口函数。 参数:如表4所示。 表4 GS_SPM_RELOAD_PLAN入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - execute_status OUT boolean baseline的加载行为是否正常完成:t表示正常;异常会报错。 t/f 返回值类型:boolean 示例: SELECT dbe_sql_util.gs_spm_reload_plan(sql_hash, plan_hash) from gs_spm_sql_baseline where outline like '%IndexScan%'; gs_spm_reload_plan -------------------- t (1 row)
  • REPLICATION_STAT REPLICATION_STAT用于描述日志同步状态信息,如发起端发送日志位置、接收端接收日志位置等,如表1所示。多租场景下,non-PDB访问该视图时返回全部信息,PDB访问该视图时仅返回该PDB相关信息,当前不支持PDB级别的日志同步,因此实际会返回空列表。 表1 REPLICATION_STAT字段 名称 类型 描述 pid bigint 线程的PID。 usesysid oid 用户系统ID。 usename name 用户名。 application_name text 程序名称。 client_addr inet 客户端地址。 client_hostname text 客户端名。 client_port integer 客户端端口。 backend_start timestamp with time zone 程序启动时间。 state text 日志复制的状态: 追赶状态 一致的流状态 sender_sent_location text 发送端发送日志位置。 receiver_write_location text 接收端write日志位置。 receiver_flush_location text 接收端flush日志位置。 receiver_replay_location text 接收端replay日志位置。 sync_priority integer 同步复制的优先级(0表示异步)。 sync_state text 同步状态: 异步复制 同步复制 潜在同步者 dbid oid 数据库标识。 父主题: Utility
  • MY_SUBPART_KEY_COLUMNS MY_SUBPART_KEY_COLUMNS视图显示了当前用户所拥有的二级分区表或分区索引的分区键列的相关信息。该视图所有用户可访问,仅可查看当前用户所属信息。该视图同时存在于PG_CATA LOG 和SYS schema下。 表1 MY_SUBPART_KEY_COLUMNS字段 名称 类型 描述 name character varying(128) 二级分区表名或索引名。 object_type character(5) 对象类型。 若分区为分区表,此列为table。 若分区为分区索引,此列为index。 column_name character varying(4000) 二级分区表的二级分区键列名。 column_position numeric 列在分区中的位置。 collated_column_id numeric 暂不支持,值为NULL。 父主题: 分区表
  • 示例 --创建角色。 gaussdb=# CREATE ROLE bob PASSWORD '********'; --创建外部服务器。 gaussdb=# CREATE SERVER my_server FOREIGN DATA WRAPPER log_fdw; --创建USER MAPPING。 gaussdb=# CREATE USER MAPPING FOR bob SERVER my_server OPTIONS (USER 'bob', PASSWORD '********'); --修改USER MAPPING。 gaussdb=# ALTER USER MAPPING FOR bob SERVER my_server OPTIONS (SET PASSWORD '********'); --删除USER MAPPING。 gaussdb=# DROP USER MAPPING FOR bob SERVER my_server; --删除外部服务器。 gaussdb=# DROP SERVER my_server; --删除角色。 gaussdb=# DROP ROLE bob;
  • 注意事项 当在OPTIONS中出现password选项时,需要保证 GaussDB 每个节点的$GAUSSHOME/bin目录下存在usermapping.key.cipher和usermapping.key.rand文件,如果不存在这两个文件,请使用gs_guc工具生成并使用gs_ssh工具发布到GaussDB每个节点的$GAUSSHOME/bin目录下。具体操作请参考OPTIONS ( { option_name ' value ' } [, ...] )中的说明。 OPTIONS中的敏感字段(如password)在使用多层引号时,语义和不带引号的场景是不同的,因此不会被识别为敏感字段进行脱敏。
  • 参数说明 user_name 需要映射到外部服务器的一个现有用户的名称。 CURRENT_USER和USER匹配当前用户的名称。 当PUBLIC被指定时,一个公共映射会被创建,当没有特定用户的映射可用时将会使用它。 server_name 创建用户映射的现有服务器的名称。 OPTIONS ( { option_name ' value ' } [, ...] ) 这个子句指定用户映射的选项。这些选项通常定义该映射实际的用户名和密码。选项名必须唯一。允许的选项名和值与该服务器的外部数据包装器有关。 用户的密码会加密后保存到系统表PG_USER_MAPPING中,加密时需要使用usermapping.key.cipher和usermapping.key.rand作为加密密码文件和加密因子。首次使用前需要通过如下命令创建这两个文件,并将这两个文件放入各节点的$GAUSSHOME/bin目录,且确保具有读权限。gs_ssh工具可以协助您快速将文件放入各节点对应目录下。 gs_ssh -c "gs_guc generate -o usermapping -S default -D $GAUSSHOME/bin" 其中-S参数指定default时会随机生成密码,用户也可为-S参数指定密码,此密码用于保证生成密码文件的安全性和唯一性,用户无需保存或记忆。其他参数详见工具参考中gs_guc工具说明。
  • SUMMARY_REL_IOSTAT 获取所有节点上的数据文件I/O统计信息的汇总求和结果,如表1所示。多租场景下,non-PDB访问该视图时返回全部信息,PDB访问该视图时仅返回该PDB相关信息。在PDB中通过该视图查询到的I/O统计信息是被持久化的,数据库重启后不会清零,会不断进行累计。 表1 SUMMARY_REL_IOSTAT字段 名称 类型 描述 phyrds numeric 读物理文件的数目。 phywrts numeric 写物理文件的数目。 phyblkrd numeric 读物理文件的块的数目。 phyblkwrt numeric 写物理文件的块的数目。 dbid oid 未开启数据库多租特性的场景下,该值始终为0;开启数据库多租特性的场景下,在PDB中查询时为PDB对应的数据库id,在CDB中查询时该值始终为0。 父主题: File
  • GS_POLICY_LABEL GS_POLICY_LABEL系统表记录资源标签配置信息,一个资源标签对应着一条或多条记录,每条记录标记了数据库资源所属的资源标签。需要有系统管理员或安全策略管理员权限才可以访问此系统表。 FQDN(Fully Qualified Domain Name)标识了数据库资源所属的绝对路径。 表1 GS_POLICY_LABEL表字段 名称 类型 描述 oid oid 行标识符(隐含属性,必须明确选择)。 labelname name 资源标签名称。 labeltype name 资源标签类型,目前仅为RESOURCE。 fqdnnamespace oid 被标识的数据库资源所属的namespace oid。 fqdnid oid 被标识的数据库资源的oid,若数据库资源为列,则该列为所属表的oid。 relcolumn name 列名,若被标识的数据库资源为列,该列指出列名,否则该列为空。 fqdntype name 被标识的数据库资源的类型名称,例如:schema, table, column, view等。 父主题: 其他系统表
  • PG_AM PG_AM系统表存储有关索引访问方法的信息。系统支持的每种索引访问方法都有一行。 表1 PG_AM字段 名称 类型 引用 描述 oid oid - 行标识符(隐含属性,必须明确选择)。 amname name - 访问方法的名称。 amstrategies smallint - 访问方法的操作符策略个数,或者如果访问方法没有一个固定的操作符策略集则为0。 amsupport smallint - 访问方法的支持过程个数。 amcanorder boolean - 这种访问方式是否支持通过索引字段值的命令扫描排序。 t(true):表示支持。 f(false):表示不支持。 amcanorderbyop boolean - 这种访问方式是否支持通过索引字段上操作符的结果的命令扫描排序。 t(true):表示支持。 f(false):表示不支持。 amcanbackward boolean - 访问方式是否支持向后扫描。 t(true):表示支持。 f(false):表示不支持。 amcanunique boolean - 访问方式是否支持唯一索引。 t(true):表示支持。 f(false):表示不支持。 amcanmulticol boolean - 访问方式是否支持多字段索引。 t(true):表示支持。 f(false):表示不支持。 amoptionalkey boolean - 访问方式是否支持第一个索引字段上没有任何约束的扫描。 t(true):表示支持。 f(false):表示不支持。 amsearcharray boolean - 访问方式是否支持ScalarArrayOpExpr搜索。 t(true):表示支持。 f(false):表示不支持。 amsearchnulls boolean - 访问方式是否支持IS NULL/NOT NULL搜索。 t(true):表示支持。 f(false):表示不支持。 amstorage boolean - 是否允许索引存储的数据类型与列的数据类型不同。 t(true):表示允许。 f(false):表示不允许。 amclusterable boolean - 是否允许在一个这种类型的索引上聚簇。 t(true):表示允许。 f(false):表示不允许。 ampredlocks boolean - 是否允许这种类型的一个索引管理细粒度的谓词锁定。 t(true):表示允许。 f(false):表示不允许。 amkeytype oid PG_TYPE.oid 存储在索引里数据的类型,如果不是一个固定的类型则为0。 aminsert regproc PG_PROC.proname “插入这个行”函数。 ambeginscan regproc PG_PROC.proname “准备索引扫描”函数。 amgettuple regproc PG_PROC.proname “下一个有效行”函数,如果没有则为0。 amgetbitmap regproc PG_PROC.proname “抓取所有的有效行” 函数,如果没有则为0。 amrescan regproc PG_PROC.proname “(重新)开始索引扫描”函数。 amendscan regproc PG_PROC.proname “索引扫描后清理” 函数。 ammarkpos regproc PG_PROC.proname “标记当前扫描位置”函数。 amrestrpos regproc PG_PROC.proname “恢复已标记的扫描位置”函数。 ammerge regproc PG_PROC.proname “归并多个索引对象”函数。 ambuild regproc PG_PROC.proname “建立新索引”函数。 ambuildempty regproc PG_PROC.proname “建立空索引”函数。 ambulkdelete regproc PG_PROC.proname 批量删除函数。 amvacuumcleanup regproc PG_PROC.proname VACUUM后的清理函数。 amcanreturn regproc PG_PROC.proname 检查是否索引支持唯一索引扫描的函数,如果没有则为0。 amcostestimate regproc PG_PROC.proname 估计一个索引扫描开销的函数。 amoptions regproc PG_PROC.proname 为一个索引分析和确认reloptions的函数。 父主题: 其他系统表
  • GLOBAL_PARALLEL_DECODE_THREAD_INFO GLOBAL_PARALLEL_DECODE_THREAD_INFO视图用于查看当前节点上的复制槽的并行解码线程信息,如表1所示。 表1 GLOBAL_PARALLEL_DECODE_THREAD_INFO字段 名称 类型 描述 node_name name 节点名称。 thread_id bigint 线程id。 slot_name text 复制槽名。 thread_type text 线程种类(共三种,sender代表发送线程,reader代表读取线程,decoder代表解码线程)。 seq_number integer 当前复制槽中同种线程的序号(从1开始)。 父主题: Utility
  • Schema GaussDB的Schema如表1所示。 数据库禁止在提供功能接口的Schema下创建用户的业务数据,包括但不限于表、函数等(dbe_*, pkg_*)。 表1 GaussDB支持的Schema Schema名称 描述 blockchain 用于存储账本数据库特性中创建防篡改表时自动创建的用户历史表。 db4ai 用于管理AI训练中不同版本的数据信息。 dbe_perf DBE_PERF Schema内视图主要用来诊断性能问题,也是WDR Snapshot的数据来源。数据库安装后,默认只有初始用户和监控管理员具有模式dbe_perf的权限,有权查看该模式下的视图和函数。 dbe_pldebugger 用于调试PL/SQL函数及存储过程。 snapshot 用于管理WDR snapshot的相关的数据信息,默认初始化用户或监控管理员用户可以访问。 sqladvisor 用于分布列推荐,集中式不可用。 sys 用于提供系统信息视图接口。 pg_catalog 用于维护系统的catalog信息,包含系统表和所有内置数据类型、函数、操作符。 pg_toast 用于存储大对象(系统内部使用)。 public 公共模式,用于存储公共对象。search_path参数缺省时,如果存在用户同名的模式则将创建的表(以及其他对象)默认创建到同名模式下,不存在用户同名模式则自动放入public模式。 pkg_service 用于管理package服务相关信息。 pkg_util 用于管理package工具相关信息。 dbe_raw 高级功能包dbe_raw,用于raw类型数据的转化、取子串、求长度等操作。 dbe_session 高级功能包dbe_session,用于设置指定属性的值(value),并支持用户查询校验。 dbe_lob 高级功能包dbe_lob,用于大文件(clob/blob)的读取、写入、复制等操作。 dbe_match 高级功能包dbe_match,用于字符串相似度的比较。 dbe_task 高级功能包dbe_task,用于作业任务的调度包括提交任务、取消任务、同步任务状态、更新任务信息等可以使数据库定期执行特定的任务。 dbe_sql 高级功能包dbe_sql,用于执行动态sql,可以在应用的运行时间构建查询和其他命令。 dbe_file 高级功能包dbe_file,用于数据库外部文件的读取、复制、写入、删除、重命名等。 dbe_output 高级功能包dbe_output,用于打印输出信息。 dbe_random 高级功能包dbe_random,用于生成随机种子和随机数。 dbe_application_info 高级功能包dbe_application_info,用于记录客户端信息。 dbe_utility 高级功能包dbe_utility,用于存储过程中调用调试工具,例如打印错误堆栈等。 dbe_scheduler 高级功能包dbe_scheduler,用于创建定时任务,通过程序(program)、调度(schedule)使数据库定期执行特定的任务。也可以通过授权、提供证书执行数据库外部任务。 information_schema 用于存储有关当前数据库中定义的对象的信息。 dbe_pldeveloper 用户存储过程编译调试。 dbe_xmlgen 高级功能包dbe_xmlgen,用于将查询结果转换成xml字符串。 dbe_stats 高级功能包dbe_stats,用于管理统计信息。 dbe_describe 高级功能包dbe_describe,用于查询存储过程或函数的参数信息。 dbe_sql_util SQL运维功能,目前包含SQL Patch和Plan Management的运维接口。 Information Schema DBE_PERF Schema WDR Snapshot Schema DBE_PLDEBUGGER Schema DB4AI Schema DBE_PLDEVELOPER DBE_SQL_UTIL Schema
  • ADM_PART_INDEXES ADM_PART_INDEXES视图显示数据库中所有分区表索引的信息(不包含分区表全局索引)。默认只有系统管理员权限才可以访问,普通用户需要授权才可以访问。该视图同时存在于PG_CATALOG和SYS Schema下。 表1 ADM_PART_INDEXES字段 名称 类型 描述 def_tablespace_name name 分区表索引的表空间名称。 index_owner character varying(64) 分区表索引的所有者名称。 index_name character varying(64) 分区表索引的名称。 partition_count bigint 分区表索引的索引分区的个数。 partitioning_key_count integer 分区表的分区键个数。 partitioning_type text 分区表的分区策略。 说明: 当前分区表策略支持范围见CREATE TABLE PARTITION。 schema character varying(64) 分区表索引所属模式的名称。 table_name character varying(64) 分区表索引所属的分区表名称。 subpartitioning_type text 二级分区表的分区策略。如果分区表是一级分区表,则显示NONE。 说明: 当前二级分区表策略支持范围见CREATE TABLE SUBPARTITION。 def_subpartition_count integer 默认创建二级分区的个数。二级分区表为1,一级分区表为0。 subpartitioning_key_count integer 分区表二级分区键的个数。 父主题: 分区表
  • 示例 声明用于查询的游标示例: EXEC SQL DECLARE C CURSOR FOR SELECT * FROM My_Table; EXEC SQL DECLARE C CURSOR FOR SELECT Item1 FROM T; EXEC SQL DECLARE cur1 CURSOR FOR SELECT version(); 声明用于预备语句的游标示例: EXEC SQL PREPARE stmt1 AS SELECT version(); EXEC SQL DECLARE cur1 CURSOR FOR stmt1;
  • ADM_TAB_HISTOG RAM S ADM_TAB_HISTOGRAMS系统视图显示数据库所有表和视图的直方图信息。默认只有系统管理员权限才可以访问,普通用户需要授权才可以访问。该视图同时存在于PG_CATALOG和SYS Schema下。 表1 ADM_TAB_HISTOGRAMS字段 名称 类型 描述 owner character varying(128) 表的所有者。 table_name character varying(128) 表名。 column_name character varying(4000) 列名。 endpoint_number numeric 直方图的桶号。 endpoint_value numeric 暂不支持,值为NULL。 endpoint_actual_value character varying(4000) 桶端点的实际值。 endpoint_actual_value_raw raw 暂不支持,值为NULL。 endpoint_repeat_count numeric 暂不支持,值为NULL。 scope character varying(7) 暂不支持,值为SHARED。 父主题: 其他系统视图
  • GS_SESSION_MEMORY_CONTEXT GS_SESSION_MEMORY_CONTEXT视图显示所有会话的内存使用情况,以MemoryContext节点来统计。当GUC参数enable_memory_limit或enable_thread_pool的值为off时,本视图不可用。 其中内存上下文“TempSmallContextGroup”,记录当前线程中所有内存上下文字段“totalsize”小于8192字节的信息汇总,并且内存上下文统计计数记录到“usedsize”字段中。所以在视图中,“TempSmallContextGroup”内存上下文中的“totalsize”和“freesize”是该线程中所有内存上下文“totalsize”小于8192字节的汇总总和,usedsize字段表示统计的内存上下文个数。多租场景下,non-PDB访问该视图时返回全部信息,PDB访问该视图时仅返回该PDB相关信息。 表1 GS_SESSION_MEMORY_CONTEXT字段 名称 类型 描述 sessid text 会话启动时间+会话标识(字符串信息为timestamp.sessionid)。 threadid bigint 会话绑定的线程标识,如果未绑定线程,该值为-1。 contextname text 内存上下文名称。 level smallint 当前上下文在整体内存上下文中的层级。 parent text 父内存上下文名称。 totalsize bigint 当前内存上下文的内存总数,单位Byte。 freesize bigint 当前内存上下文中已释放的内存总数,单位Byte。 usedsize bigint 当前内存上下文中已使用的内存总数,单位Byte;“TempSmallContextGroup”内存上下文中该字段含义为统计计数。 该视图为运维视图,用于定位内存问题时使用,不要并发查询该视图,并发查询该视图会随着并发数的增多导致新连接接入等待时间增加,长时间无法接入。 父主题: 其他系统视图
  • PG_STATIO_ALL_TABLES PG_STATIO_ALL_TABLES视图可用来查询当前数据库中每个表(包括TOAST表)的I/O统计信息。 表1 PG_STATIO_ALL_TABLES字段 名称 类型 描述 relid oid 表OID。 schemaname name 该表的模式名。 relname name 表名。 heap_blks_read bigint 从该表中读取的磁盘块数。 heap_blks_hit bigint 该表命中缓存数。 idx_blks_read bigint 从表中所有索引读取的磁盘块数。 idx_blks_hit bigint 表中所有索引命中缓存数。 toast_blks_read bigint 从该表的TOAST表读取的磁盘块数(如果存在)。 toast_blks_hit bigint 该表的TOAST表命中缓存数(如果存在)。 tidx_blks_read bigint 从该表的TOAST表索引读取的磁盘块数(如果存在)。 tidx_blks_hit bigint 该表的TOAST表索引命中缓存数(如果存在)。 父主题: 其他系统视图
  • seqscan_csn_cache_num 参数说明:此参数控制csn cache的大小,此cache只有在seqscan通过MVCC快照扫描heap表页面判断可见性会使用到。 参数类型:整型 参数单位:无 取值范围:0 ~ 1000。参数值为0时,表示不使用csn缓存机制。 默认值:100 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • enable_lightweight_transaction 参数说明:设置是否开启轻量事务。轻量事务是指对查询语句的性能优化特性。可以使用轻量事务的查询语句中,不包含子查询、SELECT FOR UPDATE、函数调用、写操作,JOIN操作,该查询语句不在事务或存储过程中执行。 参数类型:布尔型 参数单位:无 取值范围: on:表示开启轻量事务检查。 off:表示关闭轻量事务检查。 默认值:on。若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • replication_type 参数说明:标记当前部署模式是一主多备模式或单主机模式。 参数类型:整型 参数单位:无 取值范围:0 ~ 3 0:是预留参数。 1:表示使用一主多备模式,全场景覆盖,推荐使用。 2:表示使用单主机模式,此模式无法扩展备机。 3:是预留参数。 默认值:1 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。该参数是CM部署时使用的参数,用户不能对该参数进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • pgxc_node_name 参数说明:指定节点名称。 在备机请求主机进行日志复制时,如果application_name参数没有被设置,那么pgxc_node_name参数会被用来作为备机在主机上的流复制槽名字。该流复制槽的命名方式为 "该参数值_备机ip_备机port"。其中,备机ip和备机port取自replconninfo参数中指定的备机ip和端口号。该流复制槽最大长度为61个字符,如果拼接后的字符串超过该长度,则会使用截断后的pgxc_node_name进行拼接,以保证流复制槽名字长度小于等于61个字符。 参数类型:字符串 参数单位:无 取值范围:字符串 默认值:当前节点名称。 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:不建议进行修改。 设置不当的风险与影响:修改后会导致连接数据库实例失败。
  • enable_defer_calculate_snapshot 参数说明:延迟计算快照的xmin和oldestxmin,执行1000个事务或者间隔1s才触发计算。 参数类型:布尔型 参数单位:无 取值范围: on:表示延迟计算快照xmin和oldestxmin。 off:表示实时计算快照xmin和oldestxmin。 默认值:on 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:设置为on时可以在高负载场景下减少计算快照的开销,但是会导致oldestxmin推进较慢,影响垃圾元组回收。设置为off时xmin和oldestxmin可以实时推进,但是会增加计算快照时的开销。
  • enable_interp_reuse_tran 参数说明:表示是否支持存储过程中嵌套异常块子事务复用,该功能只有在开启了behavior_compat_options参数的plstmt_implicit_savepoint选项后方能生效。多租场景下,该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示存储过程支持嵌套异常块事务复用功能(需同时开启behavior_compat_options参数的plstmt_implicit_savepoint选项,此功能才能生效)。 off:表示存储过程不支持嵌套异常块事务复用功能。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
  • transaction_read_only 参数说明:设置当前事务是否为只读事务。对于开启的新事务,该参数在数据库恢复过程中或者在备机里,固定为on;否则在CDB里,固定为default_transaction_read_only的值。该参数可在PDB级别设置, 设置pdb_transaction_read_only后,以pdb_transaction_read_only的值为准。 参数类型:布尔型 参数单位:无 取值范围: on:表示设置当前事务为只读事务。 off:表示设置当前事务为读写事务。 默认值:off。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。 当dbcompatibility='M'时,查询tx_read_only和查询transaction_read_only效果相同。 当dbcompatibility='M'且m_format_dev_version = 's2'时,执行“SET [local|session|@@session.] transaction_read_only= value;”会修改会话级事务特性。即同时修改default_transaction_read_only参数值。 当dbcompatibility='M'且m_format_dev_version = 's2'时,执行“SET @@transaction_read_only= value;”用来设置下一个事务的访问模式,并且不允许在显式事务内使用;如果隐式事务报错,即单个SQL语句报错,继续保持下一个事务特性。
  • allow_concurrent_tuple_update 参数说明:设置是否允许并发更新。该参数可在PDB级别设置。 参数类型:布尔型 参数单位:无 取值范围: on:表示允许并发更新。 off:表示不允许并发更新。 默认值:on。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全