华为云用户手册

  • track_sql_count 参数说明:控制对每个会话中当前正在执行的SELECT、INSERT、UPDATE、DELETE、MERGE INTO语句进行计数的统计数据。 在x86架构集中式部署下,硬件配置规格为32核CPU/256GB内存,使用Benchmark SQL 5.0工具测试性能,开关此参数性能影响约0.8%。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示开启计数功能。 off表示关闭计数功能。 默认值:on track_sql_count参数受track_activities约束: track_activities开启而track_sql_count关闭时,如果查询了gs_sql_count视图,日志中将会有WARNING提示track_sql_count是关闭的; track_activities和track_sql_count同时关闭,那么此时日志中将会有两条WARNING,分别提示track_activities是关闭的和track_sql_count是关闭的; track_activities关闭而track_sql_count开启,此时日志中将仅有WARNING提示track_activities是关闭。 当参数关闭时,查询视图的结果为0行。
  • track_io_timing 参数说明:控制收集数据库I/O调用时序的统计数据。I/O时序统计数据可以在pg_stat_database中查询。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示开启收集功能,开启时,收集器会在重复地去查询当前时间的操作系统,这可能会引起某些平台的重大开销,故默认值设置为off。 off表示关闭收集功能。 默认值:off
  • enable_save_datachanged_timestamp 参数说明:确定是否收集insert/update/delete, exchange/truncate/drop partition操作对表数据改动的时间。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示允许收集相关操作对表数据改动的时间。 off表示禁止收集相关操作对表数据改动的时间。 默认值:on
  • track_activities 参数说明:控制收集每个会话中当前正在执行命令的统计数据。对于存储过程,打开该参数后,可以通过pg_stat_activity视图看到存储过程内正在执行的perform语句、调用存储过程语句、存储过程内的SQL语句、OPEN CURSOR语句。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示开启收集功能。 off表示关闭收集功能。 默认值:on
  • 简化输入 简化输入到 CS V日志文件,可以通过如下操作: 设置log_filename和log_rotation_age,为日志文件提供一个一致的、可预测的命名方案。通过日志文件名,预测一个独立的日志文件完成并进入准备导入状态的时间。 将log_rotation_size设为0来终止基于尺寸的日志回滚,因为基于尺寸的日志回滚让预测日志文件名变得非常的困难。 将log_truncate_on_rotation设为on以便区分在同一日志文件中旧的日志数据和新的日志数据。
  • csvlog定义 以“逗号分隔值” 即CSV(Comma Separated Value)的形式发出日志。 以下是简单的用来存储CSV形式日志输出的表定义: 1 2 3 4 5 6 7 8 91011121314151617181920212223242526272829 CREATE TABLE gaussdb_log(log_time timestamp(3) with time zone,node_name text,user_name text,database_name text,process_id bigint,connection_from text,"session_id" text,session_line_num bigint,command_tag text,session_start_time timestamp with time zone,virtual_transaction_id text,transaction_id bigint,query_id bigint,module text,error_severity text,sql_state_code text,message text,detail text,hint text,internal_query text,internal_query_pos integer,context text,query text,query_pos integer,location text,application_name text); 详细说明请参见表1。 表1 csvlog字段含义表 字段名 字段含义 字段名 字段含义 log_time 毫秒级的时间戳 module 日志所属模块 node_name 节点名称 error_severity ERRORSTATE代码 user_name 用户名 sql_state_code SQLSTATE代码 database_name 数据库名 message 错误消息 process_id 进程ID detail 详细错误消息 connection_from 客户主机:端口号 hint 提示 session_id 会话ID internal_query 内部查询(查询那些导致错误的信息,如果有的话) session_line_num 每个会话的行数 internal_query_pos 内部查询指针 command_tag 命令标签 context 环境 session_start_time 会话开始时间 query 错误发生位置的字符统计 virtual_transaction_id 常规事务 query_pos 错误发生位置指针 transaction_id 事务ID location 在 GaussDB 源代码中错误的位置(如果log_error_verbosity的值设为verbose ) query_id 查询ID application_name 应用名称 使用COPY FROM命令将日志文件导入这个表: 1 COPY gaussdb_log FROM '/opt/data/pg_log/logfile.csv' WITH csv; 此处的日志名“logfile.csv”要换成实际生成的日志的名称。
  • alarm_component 参数说明:在对告警做上报时,会进行告警抑制,即同一个实例的同一个告警项在alarm_report_interval(默认值为10s)内不做重复上报。在这种情况下设置用于处理告警内容的告警组件的位置,仅sysadmin用户可以访问。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串。 若前置脚本gs_preinstall中的--alarm-type参数设置为5时,表示未对接第三方组件,告警写入system_alarm日志,此时GUC参数alarm_component的取值为:/opt/huawei/snas/bin/snas_cm_cmd。 若前置脚本gs_preinstall中的--alarm-type参数设置为1时,表示对接第三方组件,此时GUC参数alarm_component的值为第三方组件的可执行程序的绝对路径。 默认值:/opt/huawei/snas/bin/snas_cm_cmd
  • log_truncate_on_rotation 参数说明:logging_collector设置为on时,log_truncate_on_rotation设置日志消息的写入方式。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 示例如下: 假设日志需要保留7天,每天生成一个日志文件,日志文件名设置为server_log.Mon、server_log.Tue等。第二周的周二生成的日志消息会覆盖写入到server_log.Tue。设置方法:将log_filename设置为server_log.%a ,log_truncate_on_rotation设置为on,log_rotation_age设置为1440,即日志有效时间为1天。 取值范围: 布尔型 on表示GaussDB以覆盖写入的方式写服务器日志消息。 off表示GaussDB将日志消息附加到同名的现有日志文件上。 默认值:off
  • log_rotation_size 参数说明:logging_collector设置为on时,log_rotation_size决定服务器日志文件的最大容量。当日志消息的总量超过日志文件容量时,服务器将生成一个新的日志文件。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0 ~ INT_MAX / 1024,单位为kB。 0表示关闭基于容量的新日志文件的创建。 建议该值大小设置级别至少为MB级,利于日志文件的及时划分。 默认值:20MB
  • log_filename 参数说明:logging_collector设置为on时,log_filename决定服务器运行日志文件的名称。通常日志文件名是按照strftime模式生成,因此可以用系统时间定义日志文件名,用%转义字符实现,仅sysadmin用户可以访问。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 建议使用%转义字符定义日志文件名称,否则难以对日志文件进行有效的管理。 当log_destination设为csvlog时,系统会生成附加了时间戳的日志文件名,文件格式为csv格式,例如“server_log.1093827753.csv”。 取值范围:字符串 默认值:postgresql-%Y-%m-%d_%H%M%S.log
  • log_file_mode 参数说明:logging_collector设置为on时,log_file_mode设置服务器日志文件的权限。通常log_file_mode的取值是能够被chmod和umask系统调用接受的数字。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 使用此选项前请设置log_directory,将日志存储到数据目录之外的地方。 因日志文件可能含有敏感数据,故不能将其设为对外可读。 取值范围:整型,0000~0777 (8进制计数,转化为十进制 0 ~ 511)。 0600表示只允许服务器管理员读写日志文件。 0640表示允许管理员所在用户组成员只能读日志文件。 默认值:0600
  • log_rotation_age 参数说明:logging_collector设置为on时,log_rotation_age决定创建一个新日志文件的时间间隔。当现在的时间减去上次创建一个服务器日志的时间超过了log_rotation_age的值时,将生成一个新的日志文件。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0 ~ 35791394,单位为min。其中0表示关闭基于时间的新日志文件的创建。 默认值:1440(min)
  • log_destination 参数说明:GaussDB支持多种方法记录服务器日志,log_destination的取值为一个逗号分隔开的列表(如log_destination="stderr,csvlog")。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 有效值为stderr、csvlog、syslog、eventlog。 取值为stderr,表示日志打印到屏幕。 取值为csvlog,表示日志的输出格式为“逗号分隔值”即CSV (Comma Separated Value)格式。使用csvlog记录日志的前提是将logging_collector设置为on,请参见使用CSV格式写日志。 取值为syslog,表示通过操作系统的syslog记录日志。 GaussDB使用 syslog的LOCAL0 ~ LOCAL7记录日志,请参见syslog_facility。使用syslog记录日志需在操作系统后台服务配置文件中添加代码: 1 local0.* /var/log/omm 默认值:stderr
  • logging_collector 参数说明:控制开启后端日志收集进程logger进行日志收集。该进程捕获发送到stderr或csvlog的日志消息并写入日志文件。 这种记录日志的方法比将日志记录到syslog更加有效,因为某些类型的消息在syslog的输出中无法显示。例如动态链接库加载失败消息和脚本(例如archive_command)产生的错误消息。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 将服务器日志发送到stderr时可以不使用logging_collector参数,此时日志消息会被发送到服务器的stderr指向的空间。这种方法的缺点是日志回滚困难,只适用于较小的日志容量。 取值范围:布尔型 on表示开启日志收集功能。 off表示关闭日志收集功能。 默认值:on
  • log_directory 参数说明:logging_collector设置为on时,log_directory决定存放服务器日志文件的目录。它可以是绝对路径,或者是相对路径(相对于数据目录的路径)。log_directory支持动态修改,可以通过gs_guc reload实现,仅sysadmin用户可以访问。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 当配置文件中log_directory的值为非法路径时,会导致数据库无法重新启动。 通过gs_guc reload动态修改log_directory时,当指定路径为合法路径时,日志输出到新的路径下。当指定路径为非法路径时,日志输出到上一次合法的日志输出路径下而不影响数据库正常运行。此时即使指定的log_directory的值非法,也会写入到配置文件中。 在沙箱环境,路径中不可以包含/var/chroot,例如log的绝对路径是/var/chroot/var/lib/log/Ruby/pg_log/cn_log,则只需要设置为/var/lib/log/Ruby/pg_log/cn_log。 合法路径:用户对此路径有读写权限。 非法路径:用户对此路径无读写权限。 取值范围:字符串 默认值:安装时指定。
  • qrw_inlist2join_optmode 参数说明:控制是否使用inlist-to-join查询重写。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 disable:关闭inlist2join查询重写。 cost_base:基于代价的inlist2join查询重写。 rule_base:基于规则的inlist2join查询重写,即强制使用inlist2join查询重写。 任意正整数:inlist2join查询重写阈值,即list内元素个数大于该阈值,进行inlist2join查询重写。 默认值:cost_base
  • try_vector_engine_strategy 参数说明:设置行存表走向量化执行引擎的策略。通过设置该参数,可以使包含行存表的查询可以转换为向量化的执行计划执行计算,从而提升类AP场景的复杂查询的执行性能。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:枚举型 off,为默认取值,表示关闭本功能,即行存表不会转换为向量的执行计划执行。 force,表示只要查询中不包含向量化引擎不支持的类型或者表达式,则不论查询的基表为行存表、列存表,还是行列混合存储的,强制将查询转换为向量化的执行计划执行计算。在这种情况下,针对不同的查询场景可能出现性能下降。 optimal,表示在force的基础上,由优化器根据查询的复杂度进行选择是否将查询语句转换为向量化的执行计划,尽可能避免转换为向量化的执行计划后出现性能下降。 默认值:off
  • backtrace_min_messages 参数说明:控制当产生该设置参数级别相等或更高级别的信息时,会打印函数的堆栈信息到服务器日志文件中。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 该参数作为客户现场问题定位手段使用,且由于频繁的打印函数栈会对系统的开销及稳定性有一定的影响,因此如果需要进行问题定位时,建议避免将backtrace_min_messages的值设置为fatal及panic以外的级别。 取值范围:枚举类型 有效值有debug、debug5、debug4、debug3、debug2、debug1、info、log、notice、warning、error、fatal、panic。参数的详细信息请参见表1。 默认值:panic
  • log_min_duration_statement 参数说明:当某条语句的持续时间大于或者等于特定的毫秒数时,log_min_duration_statement参数用于控制记录每条完成语句的持续时间。 设置log_min_duration_statement可以很方便地跟踪需要优化的查询语句。对于使用扩展查询协议的客户端,语法分析、绑定、执行每一步所花时间被独立记录。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 当此选项与log_statement同时使用时,已经被log_statement记录的语句文本不会被重复记录。在没有使用syslog情况下,推荐使用log_line_prefix记录PID或会话ID,方便将当前语句消息连接到最后的持续时间消息。 取值范围:整型,-1~ 2147483647,单位为毫秒。 设置为250,所有运行时间不短于250ms的SQL语句都会被记录。 设置为0,输出所有语句的持续时间。 设置为-1,关闭此功能。 默认值:3s(即3000ms)
  • client_min_messages 参数说明:控制发送到客户端的消息级别。每个级别都包含排在它后面的所有级别中的信息。级别越低,发送给客户端的消息就越少。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 当client_min_messages和log_min_messages取相同值时,其值所代表的级别不同。 取值范围:枚举类型,有效值有debug、debug5、debug4、debug3、debug2、debug1、info、log、notice、warning、error、fatal、panic。参数的详细信息请参见表1。在实际设置过程中,如果设置的级别大于error,为fatal或panic,系统会默认将级别转为error。 默认值:notice
  • log_min_messages 参数说明:控制写到服务器日志文件中的消息级别。每个级别都包含排在它后面的所有级别中的信息。级别越低,服务器运行日志中记录的消息就越少。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 当client_min_messages和log_min_messages取相同值log时所代表的消息级别不同。部分日志信息的打印需要同时配置该参数与logging_module,即设置该参数打开后可能还需要设置logging_module打开对应模块的日志打印开关。 取值范围:枚举类型,有效值有debug、debug5、debug4、debug3、debug2、debug1、info、log、notice、warning、error、fatal、panic。参数的详细信息请参见表1。 默认值:warning
  • log_min_error_statement 参数说明:控制在服务器日志中记录错误的SQL语句。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:枚举类型,有效值有debug、debug5、debug4、debug3、debug2、debug1、info、log、notice、warning、error、fatal、panic。参数的详细信息请参见表1。 设置为error,表示导致错误、日志消息、致命错误、panic的语句都将被记录。 设置为panic,表示关闭此特性。 默认值:error
  • wal_keep_segments 参数说明:Xlog日志文件段数量。设置“pg_xlog”目录下保留事务日志文件的最小数目,备机通过获取主机的日志进行流复制。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,2 ~ INT_MAX 默认值:1024 设置建议: 当服务器开启日志归档或者从检查点恢复时,保留的日志文件数量可能大于wal_keep_segments设定的值。 如果此参数设置过小,则在备机请求事务日志时,此事务日志可能已经被产生的新事务日志覆盖,导致请求失败,主备关系断开。 当双机为异步传输时,以COPY方式连续导入4G以上数据需要增大wal_keep_segments配置。以T6000单板为例,如果导入数据量为50G,建议调整参数为1000。您可以在导入完成并且日志同步正常后,动态恢复此参数设置。 若synchronous_commit级别小于LOCAL_FLUSH,重建备机时,建议调大改参数为1000,避免重建过程中,主机日志回收导致重建失败。
  • repl_auth_mode 参数说明:设置主备复制和备机重建的验证模式。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 如果主机上开启了UUID验证功能、且配置了非空字符串的repl_uuid验证码,那么备机也需要开启UUID验证功能、且配置相同的repl_uuid验证码,否则主备日志复制和备机重建请求将被主机拒绝。 该参数支持SIGHUP动态加载新值。修改之后,不影响已建连的主备连接,对后续主备复制请求和主备重建请求生效。 支持Quorum、DCF协议下的备机重建验证;支持Quorum协议下的主备复制验证;不支持DCF协议下的主备复制验证。 不支持跨数据库实例主、备之间的认证,包括Dorado主备实例和容灾主备实例。 UUID验证功能主要为了防止主、备误连导致的数据串扰和污染,不是用于安全目的。 该参数不支持主、备间自动同步。 取值范围:枚举类型 off 表示关闭UUID验证功能。 default 表示关闭UUID验证功能。 uuid 表示开启UUID验证功能。 默认值:default
  • max_replication_slots 参数说明:设置主机端的日志复制slot个数。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0~1024(建议取值范围:8~100) 默认值:20 设置建议: 当使用双机复制、备份恢复、逻辑解码时,该参数值建议设为:当前物理流复制槽数+备份槽数+所需的逻辑复制槽数。如果实际设置值比上述建议值要小,那么可能造成这些功能不可用或异常。 物理流复制槽提供了一种自动化的方法来确保主节点在所有备节点或从备节点收到xlog之前,xlog不会被移除。也就是说物理流复制槽用于支撑主备HA。数据库所要的物理流复制槽数为备节点加从备的和与主节点之间的比例。例如,假设数据库高可用方案为1主、1备、1从备,则所需物理流复制槽数为2。假设数据库的高可用方案为1主3备,则所需物理流复制槽数为3。 备份槽:记录备份执行过程中的一些复制信息,全量备份和增量备份各自对应单独的备份槽,共2个。 目前默认不支持主备从部署方式。 关于逻辑复制槽数,请按如下规则考虑: 一个逻辑复制槽只能解码一个数据库的修改,如果需要解码多个数据库,则需要创建多个逻辑复制槽。 如果需要多路逻辑复制同步给多个目标数据库,在源端数据库需要创建多个逻辑复制槽,每个逻辑复制槽对应一条逻辑复制链路。
  • logical_decode_options_default 参数说明:指定逻辑解码启动时未指定解码选项的全局默认值。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 当前支持指定的逻辑解码选项包括:parallel-decode-num, parallel-queue-size, max-txn-in-memory, max-reorderbuffer-in-memory,exclude-users。选项意义请参考示例:逻辑复制代码示例 取值范围:通过逗号分隔的key=value字符串,例如:'parallel-decode-num=4,parallel-queue-size=128,exclude-users=userA'。其中空字符串表示采用程序硬编码的默认值。 默认值:空字符串 该参数SIGHUP生效并不会影响已经启动的逻辑解码流程;后续逻辑解码启动将使用该参数设置的选项作为其默认配置,并优先使用启动命令中指定选项的设置。 这里exclude-users选项和逻辑解码启动选项存在差异,不允许指定多个黑名单用户。
  • enable_wal_shipping_compression 参数说明:在流式容灾模式下设置启动跨数据库实例日志压缩功能。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 该参数仅作用于流式容灾中跨数据库实例传输的一对walsender与walreceiver中,在主数据库实例上配置。 取值范围:布尔型 true表示打开流式容灾跨数据库实例日志压缩 false表示关闭流式容灾跨数据库实例日志压缩 默认值:false
  • repl_uuid 参数说明:设置用于主备UUID验证的UUID码。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 如果主机上开启了UUID验证功能、且配置了非空字符串的repl_uuid验证码,那么备机也需要开启UUID验证功能、且配置相同的repl_uuid验证码,否则主备日志复制和备机重建请求将被主机拒绝。 该参数支持SIGHUP动态加载新值。修改之后,不影响已建连的主备连接,对后续主备复制请求和主备重建请求生效。 支持Quorum、DCF协议下的备机重建验证;支持Quorum协议下的主备复制验证;不支持DCF协议下的主备复制验证。 不支持跨数据库实例主、备之间的认证,包括Dorado主备实例和容灾主备实例。 UUID验证功能主要为了防止主、备误连导致的数据串扰和污染,不是用于安全目的。 该参数不支持主、备间自动同步。 取值范围:字符串类型。长度0 – 63个字符,字母和数字的组合,大小写不敏感,内部统一转换为小写存储。空字符串表示不启用UUID验证功能。 默认值:空字符串
  • wal_sender_timeout 参数说明:设置本端等待事务日志接收端接收日志的最大等待时间。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 如果主机数据较大,重建备机数据库时需要增大此参数的值,主机数据在500G时,此参数的参考值为600s。 此值不能大于wal_receiver_timeout或数据库重建时的超时参数。 取值范围:整型,0 ~ INT_MAX,单位为毫秒(ms)。 默认值:6s
  • max_wal_senders 参数说明:指定事务日志发送进程的并发连接最大数量。不可大于等于max_connections。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 wal_level必须设置为archive、hot_standby或者logical以允许备机的连接。 取值范围:整型,0 ~ 1024(建议取值范围:8 ~ 100) 只有当使用单DN实例无主备场景下才可以设置0。 默认值:20
共100000条