华为云用户手册

  • 限制 发布订阅基于逻辑复制实现,继承所有逻辑复制的限制,同时发布订阅还有下列额外的限制或者缺失的功能。 数据库模式和DDL命令不会被复制。初始模式可以手工使用gs_dump --schema-only进行拷贝。后续的模式改变需要手工保持同步。 序列数据不复制。serial类型的数据或绑定到sequence的指定列如果是table的一部分则会被复制,但是订阅端上的序列本身的数据不会更新。如果订阅端是一个只读数据库,这不是问题。如果订阅端将要执行switchover或failover,那么序列需要被更新,可以拷贝发布端的数据(可以使用gs_dump)或根据订阅端的表数据指定其序列最大值。 只有表支持复制,包括分区表。试图复制其他类型的关系,例如视图、物化视图或外部表,将会导致错误。 同一数据库内的多个订阅不应当订阅内容重复的发布(指发布相同的表),否则会产生数据重复或者主键冲突。 如果被发布的表中包含不支持btree/hash索引的数据类型(如地理类型等),那么该表需要有主键,才能成功的复制UPDATE/DELETE操作到订阅端。否则复制会失败,同时订阅端会出现“FATAL: could not identify an equality operator for type xx”的日志。 父主题: 发布订阅
  • DBE_PLDEBUGGER.finish 执行存储过程中当前的SQL直到下一个断点触发或执行到上层栈的下一行。 表1 finish入参和返回值列表 名称 类型 描述 funcoid OUT oid 函数id funcname OUT text 函数名 lineno OUT integer 当前调试运行的下一行行号 query OUT text 当前调试的下一行函数源码 父主题: DBE_PLDEBUGGER Schema
  • DBE_SQL_UTIL.disable_sql_patch disable_sql_patch是用于禁用SQL PATCH的接口函数,返回执行是否成功。 限制仅初始用户、sysadmin、opradmin、monadmin用户有权限调用。 表1 DBE_SQL_UTIL.disable_sql_patch入参和返回值列表 参数 类型 描述 patch_name IN name PATCH名称。 result OUT bool 执行是否成功。 父主题: DBE_SQL_UTIL Schema
  • DBE_SQL_UTIL.create_abort_sql_patch create_abort_sql_patch是用于创建避险SQL PATCH的接口函数,返回执行是否成功。 限制仅初始用户、sysadmin、opradmin、monadmin用户有权限调用。 表1 DBE_SQL_UTIL.create_abort_sql_patch入参和返回值列表 参数 类型 描述 patch_name IN name PATCH名称。 unique_sql_id IN bigint 查询全局唯一ID。 description IN text PATCH的备注,默认值为NULL。 enabled IN bool PATCH是否生效,默认值为true。 result OUT bool 执行是否成功。 父主题: DBE_SQL_UTIL Schema
  • DBE_SQL_UTIL Schema DBE_SQL_UTIL模式存储了用于管理SQL PATCH的工具,包括创建、删除、开启、禁用SQL PATCH等系统函数。普通用户只有usage权限,没有create、alter、drop、comment等权限。 DBE_SQL_UTIL.create_hint_sql_patch DBE_SQL_UTIL.create_abort_sql_patch DBE_SQL_UTIL.drop_sql_patch DBE_SQL_UTIL.enable_sql_patch DBE_SQL_UTIL.disable_sql_patch DBE_SQL_UTIL.show_sql_patch 父主题: Schema
  • DBE_SQL_UTIL.create_hint_sql_patch create_hint_sql_patch是用于创建调优SQL PATCH的接口函数,返回执行是否成功。 限制仅初始用户、sysadmin、opradmin、monadmin用户有权限调用。 表1 DBE_SQL_UTIL.create_hint_sql_patch入参和返回值列表 参数 类型 描述 patch_name IN name PATCH名称。 unique_sql_id IN bigint 查询全局唯一ID。 hint_string IN text Hint文本。 description IN text PATCH的备注,默认值为NULL。 enabled IN bool PATCH是否生效,默认值为true。 父主题: DBE_SQL_UTIL Schema
  • DBE_SQL_UTIL.drop_sql_patch drop_sql_patch是用于删除SQL PATCH的接口函数,返回执行是否成功。 限制仅初始用户、sysadmin、opradmin、monadmin用户有权限调用。 表1 DBE_SQL_UTIL.drop_sql_patch入参和返回值列表 参数 类型 描述 patch_name IN name PATCH名称。 result OUT bool 执行是否成功。 父主题: DBE_SQL_UTIL Schema
  • DBE_PLDEBUGGER.backtrace debug端调试过程中,调用backtrace,查看当前的调用堆栈。 表1 backtrace返回值列表 名称 类型 描述 frameno OUT integer 调用栈编号 funcname OUT text 函数名 lineno OUT integer 行号 query OUT text 断点内容 funcoid OUT oid 函数oid 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.info_breakpoints debug端调试过程中,调用info_breakpoints,查看当前的函数断点。 表1 info_breakpoints返回值列表 名称 类型 描述 breakpointno OUT integer 断点编号 funcoid OUT oid 函数ID lineno OUT integer 行号 query OUT text 断点内容 enable OUT boolean 是否有效 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.set_var 将指定的调试的存储过程中最上层栈上的变量修改为入参的取值。如果存储过程中包含同名的变量,set_var只支持第一个变量值的设置。 表1 set_var入参和返回值列表 名称 类型 描述 var_name IN text 变量名 value IN text 修改值 result OUT boolean 结果,是否成功 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.continue 执行当前存储过程,直到下一个断点或结束,返回执行的下一条的行数和对应query。 函数原型为: 12 DBE_PLDEBUGGER.continue()RETURN Record; 表1 continue 返回值列表 名称 类型 描述 funcoid OUT oid 函数id funcname OUT text 函数名 lineno OUT integer 当前调试运行的下一行行号 query OUT text 当前调试的下一行函数源码 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.next 执行存储过程中当前的sql,返回执行的下一条的行数和对应query。 表1 next返回值列表 名称 类型 描述 funcoid OUT oid 函数id funcname OUT text 函数名 lineno OUT integer 当前调试运行的下一行行号 query OUT text 当前调试的下一行函数源码 父主题: DBE_PLDEBUGGER Schema
  • User Tables stats 表1 User Tables stats报表主要内容 列名称 描述 DB Name Database名称。 Schema Schema名称。 Relname Relation名称。 Seq Scan 此表发起的顺序扫描数。 Seq Tup Read 顺序扫描抓取的活跃行数。 Index Scan 此表发起的索引扫描数。 Index Tup Fetch 索引扫描抓取的活跃行数。 Tuple Insert 插入行数。 Tuple Update 更新行数。 Tuple Delete 删除行数。 Tuple Hot Update HOT更新行数(即没有更新所需的单独索引)。 Live Tuple 估计活跃行数。 Dead Tuple 估计死行数。 Last Vacuum 最后一次此表是手动清理的(不计算VACUUM FULL)时间。 Last Autovacuum 上次被autovacuum守护进程清理的时间。 Last Analyze 上次手动分析这个表的时间。 Last Autoanalyze 上次被autovacuum守护进程分析的时间。 Vacuum Count 这个表被手动清理的次数(不计算VACUUM FULL)。 Autovacuum Count 这个表被autovacuum清理的次数。 Analyze Count 这个表被手动分析的次数。 Autoanalyze Count 这个表被autovacuum守护进程分析的次数。
  • User index stats 表2 User index stats报表主要内容 列名称 描述 DB Name Database名称。 Schema Schema名称。 Relname Relation名称。 Index Relname Index名称。 Index Scan 索引上开始的索引扫描数。 Index Tuple Read 通过索引上扫描返回的索引项数。 Index Tuple Fetch 通过使用索引的简单索引扫描抓取的表行数。
  • DBE_PLDEBUGGER.print_var debug端调试过程中,调用print_var,打印当前存储过程内变量中指定的变量名及其取值。该函数入参frameno表示查询遍历的栈层数,支持不加入该参数调用,缺省为查看最上层栈变量。 表1 print_var入参和返回值列表 名称 类型 描述 var_name IN text 变量 frameno IN integer(可选) 指定的栈层数,缺省为最顶层 varname OUT text 变量名 vartype OUT text 变量类型 value OUT text 变量值 package_name OUT text 变量对应的package名,预留使用,当前均为空 isconst OUT boolean 是否为常量 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.step debug端调试过程中,如果当前执行的是一个存储过程,则进入该存储过程继续调试,返回该存储过程第一行的行号等信息,如果当前执行的不是存储过程,则和next行为一致,执行该sql后返回下一行的行号等信息。 表1 step入参和返回值列表 名称 类型 描述 funcoid OUT oid 函数ID funcname OUT text 函数名 lineno OUT integer 当前调试运行的下一行行号 query OUT text 当前调试的下一行函数源码 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.add_breakpoint debug端调试过程中,调用add_breakpoint增加新的断点。如果返回-1则说明指定的断点不合法,请参考DBE_PLDEBUGGER.info_code的canbreak字段确定断点合适的位置。 表1 add_breakpoint入参和返回值列表 名称 类型 描述 funcoid IN text 函数ID lineno IN integer 行号 breakpointno OUT integer 断点编号 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.info_locals debug端调试过程中,调用info_locals,打印当前存储过程内变量。该函数入参frameno表示查询遍历的栈层数,支持无入参调用,缺省为查看最上层栈变量。 表1 info_locals入参和返回值列表 名称 类型 描述 frameno IN integer (可选) 指定的栈层数,缺省为最顶层 varname OUT text 变量名 vartype OUT text 变量类型 value OUT text 变量值 package_name OUT text 变量对应的package名,非package时为空 isconst OUT boolean 是否为常量 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.info_code debug端调试过程中,调用info_code,查看指定存储过程的源语句和各行对应的行号,行号从函数体开始,函数头部分行号为空。 表1 info_code入参和返回值列表 名称 类型 描述 funcoid IN oid 函数ID lineno OUT integer 行号 query OUT text 源语句 canbreak OUT bool 当前行是否支持断点 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.attach server端执行存储过程,停在第一条语句前,等待debug端关联。debug端调用attach,传入nodename和port,关联到该存储过程上。 如果调试过程中报错,attach会自动失效;如果调试过程中attach到其他存储过程上,当前attach的调试也会失效。 表1 attach 入参和返回值列表 名称 类型 描述 nodename IN text 节点名称 port IN integer 连接端口号 funcoid OUT oid 函数id funcname OUT text 函数名 lineno OUT integer 当前调试运行的下一行行号 query OUT text 当前调试的下一行函数源码 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.local_debug_server_info 用于查找当前连接中已经turn_on的存储过程oid。便于用户确认在调试哪些存储过程,需要通过funcoid和pg_proc配合使用。 表1 local_debug_server_info 返回值列表 名称 类型 描述 nodename OUT text 节点名称 port OUT bigint 端口号 funcoid OUT oid 存储过程oid 父主题: DBE_PLDEBUGGER Schema
  • Replication stat 表2 Replication stat报表主要内容 列名称 描述 Thread Id 线程的PID。 Usesys Id 用户系统ID。 Usename 用户名称。 Application Name 应用程序。 Client Addr 客户端地址。 Client Hostname 客户端主机名。 Client Port 客户端端口。 Backend Start 程序起始时间。 State 日志复制状态。 Sender Sent Location 发送端发送日志位置。 Receiver Write Location 接收端write日志位置。 Receiver Flush Location 接收端flush日志位置。 Receiver Replay Location 接收端replay日志位置。 Sync Priority 同步优先级。 Sync State 同步状态。
  • DBE_PLDEBUGGER.turn_off 用于去掉turn_on添加的调试标记,返回值表示成功或失败。可通过DBE_PLDEBUGGER.local_debug_server_info查找已经turn_on的存储过程oid。 函数原型为: 12 DBE_PLDEBUGGER.turn_off(Oid)RETURN boolean; 表1 turn_off 入参和返回值列表 名称 类型 描述 func_oid IN oid 函数oid turn_off OUT boolean turn off是否成功 父主题: DBE_PLDEBUGGER Schema
  • DBE_PLDEBUGGER.turn_on 该函数用于标记某一存储过程为可调试,执行turn_on后server端可以执行该存储过程来进行调试。需要用户根据系统表PG_PROC手动获取存储过程oid,传入函数中。turn_on后本session内执行该存储过程会停在第一条sql前等待debug端的调试操作。该设置会在session断连后默认被清理掉。目前不支持对启用自治事务的存储过程/函数进行调试。 函数原型为: 12 DBE_PLDEBUGGER.turn_on(Oid)RETURN Record; 表1 turn_on 入参和返回值列表 名称 类型 描述 func_oid IN oid 函数oid nodename OUT text 节点名称 port OUT integer 连接端口号 父主题: DBE_PLDEBUGGER Schema
  • User table IO activity 表1 User table IO activity表格字段 列名称 描述 DB Name Database名称。 Schema Name Schema名称。 Table Name Table名称。 %Heap Blks Hit Ratio 此表的Buffer Pool命中率。 Heap Blks Read 该表中读取的磁盘块数。 Heap Blks Hit 此表缓存命中数。 Idx Blks Read 表中所有索引读取的磁盘块数。 Idx Blks Hit 表中所有索引命中缓存数。 Toast Blks Read 此表的TOAST表读取的磁盘块数(如果存在)。 Toast Blks Hit 此表的TOAST表命中缓冲区数(如果存在)。 Tidx Blks Read 此表的TOAST表索引读取的磁盘块数(如果存在)。 Tidx Blks Hit 此表的TOAST表索引命中缓冲区数(如果存在)。
  • User index IO activity 表2 User index IO activity 表格字段 列名称 描述 DB Name Database名称。 Schema Name Schema名称。 Table Name Table名称。 Index Name Index名称。 %Idx Blks Hit Ratio Index的命中率。 Idx Blks Read 所有索引读取的磁盘块数。 Idx Blks Hit 所有索引命中缓存数。
  • Configuration settings Configuration settings列名称及描述如下表所示。 表1 Configuration settings报表主要内容 列名称 描述 Name GUC名称。 Abstract GUC描述。 Type 数据类型。 Curent Value 当前值。 Min Value 合法最小值。 Max Value 合法最大值。 Category GUC类别。 Enum Values 如果是枚举值,列举所有枚举值。 Default Value 数据库启动时参数默认值。 Reset Value 数据库重置时参数默认值。 父主题: 查看WDR报告
  • SQL Statistics SQL Statistics列名称及描述如下表所示。 表1 SQL Statistics报表主要内容 列名称 描述 Unique SQL Id 归一化的SQL ID。 Node Name 节点名称。 User Name 用户名称。 Tuples Read 访问的元组数量。 Calls 调用次数。 Min Elapse Time(us) 最小执行时间(us)。 Max Elapse Time(us) 最大执行时间(us)。 Total Elapse Time(us) 总执行时间(us)。 Avg Elapse Time(us) 平均执行时间(us)。 Returned Rows SELECT返回行数。 Tuples Affected Insert/Update/Delete行数。 Logical Read Buffer逻辑读次数。 Physical Read Buffer物理读次数。 CPU Time(us) CPU时间(us)。 Data IO Time(us) IO上的时间花费(us)。 Sort Count 排序执行的次数。 Sort Time(us) 排序执行的时间(us)。 Sort Mem Used(KB) 排序过程中使用的work memory大小(KB)。 Sort Spill Count 排序过程中,若发生落盘,写文件的次数。 Sort Spill Size(KB) 排序过程中,若发生落盘,使用的文件大小(KB)。 Hash Count hash执行的次数。 Hash Time(us) hash执行的时间(us)。 Hash Mem Used(KB) hash过程中使用的work memory大小(KB)。 Hash Spill Count hash过程中,若发生落盘,写文件的次数。 Hash Spill Size(KB) hash过程中,若发生落盘,使用的文件大小(KB)。 SQL Text 归一化SQL字符串。 父主题: 查看WDR报告
  • Wait Events Wait Events列名称及描述如下表所示。 表1 Wait Events报表主要内容 列名称 描述 Type Wait Event类别名称: STATUS。 LWLOCK_EVENT。 LOCK_EVENT。 IO_EVENT。 Event Wait Event名称。 Total Wait Time (us) 总Wait时间(us)。 Waits 总Wait次数。 Failed Waits Wait失败次数。 Avg Wait Time (us) 平均Wait时间(us)。 Max Wait Time (us) 最大Wait时间(us)。 父主题: 查看WDR报告
  • Time Model Time Model名称及描述如下表所示。 表1 Time Model报表主要内容 名称 描述 DB_TIME 所有线程端到端的墙上时间(WALL TIME)消耗总和(单位:微秒)。 EXECUTION_TIME 消耗在执行器上的时间总和(单位:微秒)。 PL_EXECUTION_TIME 消耗在PL/SQL执行上的时间总和(单位:微秒)。 CPU_TIME 所有线程CPU时间消耗总和(单位:微秒)。 PLAN_TIME 消耗在执行计划生成上的时间总和(单位:微秒)。 REWRITE_TIME 消耗在查询重写上的时间总和(单位:微秒)。 PL_COMPILATION_TIME 消耗在SQL编译上的时间总和(单位:微秒)。 PARSE_TIME 消耗在SQL解析上的时间总和(单位:微秒)。 NET_SEND_TIME 消耗在网络发送上的时间总和(单位:微秒)。 DATA_IO_TIME 消耗在数据读写上的时间总和(单位:微秒)。 父主题: 查看WDR报告
共100000条