华为云用户手册

  • log_line_prefix 参数说明:控制每条日志信息的前缀格式。日志前缀类似于printf风格的字符串,在日志的每行开头输出。用以%为开头的“转义字符”代替表1中的状态信息。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 表1 转义字符表 转义字符 效果 %a 应用程序名称。 %u 用户名。 %d 数据库名。 %r 远端主机名或者IP地址以及远端端口,在不启动log_hostname时显示IP地址及远端端口。 %h 远端主机名或者IP地址,在不启动log_hostname时只显示IP地址。 %p 线程ID。 %t 时间戳(没有毫秒,Windows上没有时区)。 %m 带毫秒的时间戳。 %n 表示指定错误从哪个节点上报的。 %i 命令标签:会话当前执行的命令类型。 %e SQLSTATE错误码。 %c 会话ID,详见说明。 %l 每个会话的日志编号,从1开始。 %s 会话启动时间。 %v 虚拟事务ID(backendID/ localXID) %x 事务ID(0表示没有分配事务ID)。 %q 不产生任何输出。如果当前线程是后端线程,忽略这个转义序列,继续处理后面的转义序列;如果当前线程不是后端线程,忽略这个转义序列和它后面的所有转义序列。 %S 会话ID。 %T TraceID。 %% 字符%。 转义字符%c打印一个唯一的会话ID,由两个4字节的十六进制数组成,通过字符“.”分开。这两个十六进制数分别表示进程的启动时间及进程编号,所以%c也可以看作是保存打印这些名目的途径的空间。比如,从pg_stat_activity中产生会话ID,可以用下面的查询: 123 SELECT to_hex(EXTRACT(EPOCH FROM backend_start)::integer) || '.' || to_hex(pid)FROM pg_stat_activity; 当log_line_prefix设置为非空值时,请保证最后一个字符是一个空格,以此来直观地与后续的日志行进行区分,也可以使用一个标点符号。 Syslog生成自己的时间戳及进程ID信息,所以当登录日志时,不需要包含这些转义字符。 取值范围:字符串 默认值:'%m %n %u %d %h %p %S %x %a ' %m %n %u %d %h %p %S %x %a 表示会话开始时间戳、错误上报节点、用户名、数据库名、远程主机名或IP、线程ID、会话ID、事务ID、应用名。
  • logging_module 参数说明:用于设置或者显示模块日志在服务端的可输出性。该参数属于会话级参数,不建议通过gs_guc工具来设置。 该参数属于USERSET类型参数,设置请参考表1中对应设置的方法进行设置。 取值范围:字符串 默认值:LOCK模块日志在服务端输出,其他模块日志在服务端不输出,可由SHOW logging_module查看: ALL,on(LOCK),off(COMMAND,DFS,GUC,GSCLEAN,HDFS,ORC,SLRU,MEM_CTL,AUTOVAC,CACHE,ADIO,SSL,GDS,TBLSPC,WLM,OBS,INDEX,EXECUTOR,OPFUSION,GPC,GSC,VEC_EXECUTOR,STREAM,LLVM,OPT,OPT_REWRITE,OPT_JOIN,OPT_AGG,OPT_CHOICE,OPT_SUBPLAN,OPT_SETOP,OPT_SKEW,OPT_PLANNER,OPT_STAT_EXT,UDF,COOP_ANALYZE,WLMCP,ACCELERATE,MOT,PLANHINT,PARQUET,PGSTAT,CARBONDATA,SNAPSHOT,XACT,HANDLE,CLOG,EC,REMOTE,CN_RETRY,PLSQL,TEXTSEARCH,SEQ,REDO,FUNCTION,PARSER,INSTR,WDR_SNAPSHOT,WDR_REPORT,INCRE_CKPT,INCRE_BG_WRITER,DBL_WRT,RTO_RPO,HEARTBEAT,COMM_IPC,COMM_PARAM,TIMESERIES,SCHEMA,SEGMENT_PAGE,LIGHTPROXY,HOTKEY,THREAD_POOL,OPT_AI,WALRECEIVER,USTORE,UPAGE,UBTREE,UNDO,TIMECAPSULE,GEN_COL,DCF,DB4AI,PLDEBUGGER,ADVISOR,SEC,SEC_FE,SEC_LEGER,SEC_POLICY,SEC_SDD,SEC_TDE,COMM_PROXY,COMM_POOLER,VACUUM,JOB,SPI,NEST_COMPILE,RESOWNER,GSSTACK,LOGICAL_DECODE,GPRC,DISASTER_READ,STANDBY_READ,REPSYNC,SQLPATCH,PARTITION,UBT_NEWPAGE,GPI,GS_DEPENDENCY,LWLOCK,GSI) 当前版本CN_RETRY不生效。 设置方法:首先,可以通过SHOW logging_module来查看哪些模块是支持可控制的。例如,查询输出结果为: 12345 gaussdb=# show logging_module;logging_module--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ALL,on(LOCK),off(COMMAND,DFS,GUC,GSCLEAN,HDFS,ORC,SLRU,MEM_CTL,AUTOVAC,CACHE,ADIO,SSL,GDS,TBLSPC,WLM,OBS,INDEX,EXECUTOR,OPFUSION,GPC,GSC,VEC_EXECUTOR,STREAM,LLVM,OPT,OPT_REWRITE,OPT_JOIN,OPT_AGG,OPT_CHOICE,OPT_SUBPLAN,OPT_SETOP,OPT_SKEW,OPT_PLANNER,OPT_STAT_EXT,UDF,COOP_ANALYZE,WLMCP,ACCELERATE,MOT,PLANHINT,PARQUET,PGSTAT,CARBONDATA,SNAPSHOT,XACT,HANDLE,CLOG,EC,REMOTE,PLSQL,TEXTSEARCH,SEQ,REDO,FUNCTION,PARSER,INSTR,WDR_SNAPSHOT,WDR_REPORT,INCRE_CKPT,INCRE_BG_WRITER,DBL_WRT,RTO_RPO,HEARTBEAT,COMM_IPC,COMM_PARAM,TIMESERIES,SCHEMA,SEGMENT_PAGE,LIGHTPROXY,HOTKEY,THREAD_POOL,OPT_AI,WALRECEIVER,USTORE,UPAGE,UBTREE,UNDO,TIMECAPSULE,GEN_COL,DCF,DB4AI,PLDEBUGGER,ADVISOR,SEC,SEC_FE,SEC_LEGER,SEC_POLICY,SEC_SDD,SEC_TDE,COMM_PROXY,COMM_POOLER,VACUUM,JOB,SPI,NEST_COMPILE,RESOWNER,GSSTACK,LOGICAL_DECODE,GPRC,DISASTER_READ,STANDBY_READ,REPSYNC,SQLPATCH,PARTITION,UBT_NEWPAGE,GPI,GS_DEPENDENCY,LWLOCK,GSI)(1 row) 支持可控制的模块使用大写来标识,特殊标识ALL用于对所有模块日志进行设置。可以使用on/off来控制模块日志的输出。设置SSL模块日志为可输出,使用如下命令: 12345 gaussdb=# set logging_module='on(SSL)';SETgaussdb=# show logging_module; logging_module ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ALL,on(SSL,LOCK),off(COMMAND,DFS,GUC,GSCLEAN,HDFS,ORC,SLRU,MEM_CTL,AUTOVAC,CACHE,ADIO,GDS,TBLSPC,WLM,OBS,INDEX,EXECUTOR,OPFUSION,GPC,GSC,VEC_EXECUTOR,STREAM,LLVM,OPT,OPT_REWRITE,OPT_JOIN,OPT_AGG,OPT_CHOICE,OPT_SUBPLAN,OPT_SETOP,OPT_SKEW,OPT_PLANNER,OPT_STAT_EXT,UDF,COOP_ANALYZE,WLMCP,ACCELERATE,MOT,PLANHINT,PARQUET,PGSTAT,CARBONDATA,SNAPSHOT,XACT,HANDLE,CLOG,EC,REMOTE,PLSQL,TEXTSEARCH,SEQ,REDO,FUNCTION,PARSER,INSTR,WDR_SNAPSHOT,WDR_REPORT,INCRE_CKPT,INCRE_BG_WRITER,DBL_WRT,RTO_RPO,HEARTBEAT,COMM_IPC,COMM_PARAM,TIMESERIES,SCHEMA,SEGMENT_PAGE,LIGHTPROXY,HOTKEY,THREAD_POOL,OPT_AI,WALRECEIVER,USTORE,UPAGE,UBTREE,UNDO,TIMECAPSULE,GEN_COL,DCF,DB4AI,PLDEBUGGER,ADVISOR,SEC,SEC_FE,SEC_LEGER,SEC_POLICY,SEC_SDD,SEC_TDE,COMM_PROXY,COMM_POOLER,VACUUM,JOB,SPI,NEST_COMPILE,RESOWNER,GSSTACK,LOGICAL_DECODE,GPRC,DISASTER_READ,STANDBY_READ,REPSYNC,SQLPATCH,PARTITION,UBT_NEWPAGE,GPI,GS_DEPENDENCY,LWLOCK,GSI)(1 row) 可以看到模块SSL的日志输出被打开。 ALL标识是相当于一个快捷操作,即对所有模块的日志可输出进行开启或关闭。 1 2 3 4 5 6 7 8 91011 gaussdb=# set logging_module='off(ALL)';SETgaussdb=# show logging_module; logging_module -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ALL,on(),off(COMMAND,DFS,GUC,GSCLEAN,HDFS,ORC,SLRU,MEM_CTL,AUTOVAC,CACHE,ADIO,SSL,GDS,TBLSPC,WLM,OBS,INDEX,EXECUTOR,OPFUSION,GPC,GSC,VEC_EXECUTOR,STREAM,LLVM,OPT,OPT_REWRITE,OPT_JOIN,OPT_AGG,OPT_CHOICE,OPT_SUBPLAN,OPT_SETOP,OPT_SKEW,OPT_PLANNER,OPT_STAT_EXT,UDF,COOP_ANALYZE,WLMCP,ACCELERATE,MOT,PLANHINT,PARQUET,PGSTAT,CARBONDATA,SNAPSHOT,XACT,HANDLE,CLOG,EC,REMOTE,PLSQL,TEXTSEARCH,SEQ,REDO,FUNCTION,PARSER,INSTR,WDR_SNAPSHOT,WDR_REPORT,INCRE_CKPT,INCRE_BG_WRITER,DBL_WRT,RTO_RPO,HEARTBEAT,COMM_IPC,COMM_PARAM,TIMESERIES,SCHEMA,SEGMENT_PAGE,LIGHTPROXY,HOTKEY,THREAD_POOL,OPT_AI,WALRECEIVER,USTORE,UPAGE,UBTREE,UNDO,TIMECAPSULE,GEN_COL,DCF,DB4AI,PLDEBUGGER,ADVISOR,SEC,SEC_FE,SEC_LEGER,SEC_POLICY,SEC_SDD,SEC_TDE,COMM_PROXY,COMM_POOLER,VACUUM,JOB,SPI,NEST_COMPILE,RESOWNER,GSSTACK,LOGICAL_DECODE,GPRC,DISASTER_READ,STANDBY_READ,REPSYNC,SQLPATCH,PARTITION,UBT_NEWPAGE,GPI,GS_DEPENDENCY,LWLOCK,LOCK,GSI)(1 row)gaussdb=# set logging_module='on(ALL)';SETgaussdb=# show logging_module; logging_module -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ALL,on(COMMAND,DFS,GUC,GSCLEAN,HDFS,ORC,SLRU,MEM_CTL,AUTOVAC,CACHE,ADIO,SSL,GDS,TBLSPC,WLM,OBS,INDEX,EXECUTOR,OPFUSION,GPC,GSC,VEC_EXECUTOR,STREAM,LLVM,OPT,OPT_REWRITE,OPT_JOIN,OPT_AGG,OPT_CHOICE,OPT_SUBPLAN,OPT_SETOP,OPT_SKEW,OPT_PLANNER,OPT_STAT_EXT,UDF,COOP_ANALYZE,WLMCP,ACCELERATE,MOT,PLANHINT,PARQUET,PGSTAT,CARBONDATA,SNAPSHOT,XACT,HANDLE,CLOG,EC,REMOTE,PLSQL,TEXTSEARCH,SEQ,REDO,FUNCTION,PARSER,INSTR,WDR_SNAPSHOT,WDR_REPORT,INCRE_CKPT,INCRE_BG_WRITER,DBL_WRT,RTO_RPO,HEARTBEAT,COMM_IPC,COMM_PARAM,TIMESERIES,SCHEMA,SEGMENT_PAGE,LIGHTPROXY,HOTKEY,THREAD_POOL,OPT_AI,WALRECEIVER,USTORE,UPAGE,UBTREE,UNDO,TIMECAPSULE,GEN_COL,DCF,DB4AI,PLDEBUGGER,ADVISOR,SEC,SEC_FE,SEC_LEGER,SEC_POLICY,SEC_SDD,SEC_TDE,COMM_PROXY,COMM_POOLER,VACUUM,JOB,SPI,NEST_COMPILE,RESOWNER,GSSTACK,LOGICAL_DECODE,GPRC,DISASTER_READ,STANDBY_READ,REPSYNC,SQLPATCH,PARTITION,UBT_NEWPAGE,GPI,GS_DEPENDENCY,LWLOCK,LOCK,GSI),off()(1 row) 依赖关系:该参数依赖于log_min_level参数的设置
  • log_statement 参数说明:控制记录SQL语句。对于使用扩展查询协议的客户端,记录接收到执行消息的事件和绑定参数的值(内置单引号要双写)。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 即使log_statement设置为all,包含简单语法错误的语句也不会被记录,因为仅在完成基本的语法分析并确定了语句类型之后才记录日志。在使用扩展查询协议的情况下,在执行阶段之前(语法分析或规划阶段)同样不会记录。将log_min_error_statement设为ERROR或更低才能记录这些语句。 设置该参数为非none时,可视为开启相关语句审计功能,数据库DBA可以访问服务端日志查看SQL执行记录。 取值范围:枚举类型 none表示不记录语句。 ddl表示记录所有的数据定义语句,比如CREATE、ALTER和DROP语句。 mod表示记录所有DDL语句,还包括数据修改语句INSERT、UPDATE、DELETE、TRUNCATE和COPY FROM 。 all表示记录所有语句,PREPARE、EXECUTE和EXPLAIN ANALYZE语句也同样被记录。 默认值:none
  • log_checkpoints 参数说明:控制在服务器日志中记录检查点和重启点的信息。打开此参数时,服务器日志消息包含涉及检查点和重启点的统计量,其中包含需要写的缓存区的数量及写入所花费的时间等。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示打开此参数时,服务器日志消息包含涉及检查点和重启点的统计量。 off表示关闭此参数时,服务器日志消息包含不涉及检查点和重启点的统计量。 默认值:off
  • log_error_verbosity 参数说明:控制服务器日志中每条记录的消息写入的详细度。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:枚举类型 terse输出不包括DETAIL、HINT、QUERY及CONTEXT错误信息的记录。 verbose输出包括SQLSTATE错误代码 、源代码文件名、函数名及产生错误所在的行号。 default输出包括DETAIL、HINT、QUERY及CONTEXT错误信息的记录,不包括SQLSTATE错误代码 、源代码文件名、函数名及产生错误所在的行号。 默认值:default
  • debug_print_plan 参数说明:用于设置是否将查询的执行计划打印到日志中。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示开启打印结果的功能。 off表示关闭打印结果的功能。 默认值:off 只有当日志的级别为log及以上时,debug_print_parse、debug_print_rewritten和debug_print_plan的调试信息才会输出。当这些选项打开时,调试信息只会记录在服务器的日志中,而不会输出到客户端的日志中。通过设置client_min_messages和log_min_messages参数可以改变日志级别。 在打开debug_print_plan开关的情况下需尽量避免调用gs_encrypt_aes128及gs_decrypt_aes128函数,避免敏感参数信息在日志中泄露的风险。同时建议用户在打开debug_print_plan开关生成的日志中对gs_encrypt_aes128及gs_decrypt_aes128函数的参数信息进行过滤后再提供给外部维护人员定位,日志使用完成后请及时删除。
  • log_duration 参数说明:控制记录每个已完成SQL语句的执行时间。对使用扩展查询协议的客户端、会记录语法分析、绑定和执行每一步所花费的时间。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 设置为off,该选项与log_min_duration_statement的不同之处在于log_min_duration_statement强制记录查询文本。 设置为on并且log_min_duration_statement大于零,记录所有持续时间,但是仅记录超过阈值的语句。这可用于在高负载情况下搜集统计信息。 默认值:off
  • local_preload_libraries 参数说明:指定一个或多个共享库,它们在开始连接前预先加载。多个加载库之间用逗号分隔,除了双引号,所有的库名都转换为小写。 并非只有系统管理员才能更改此选项,因此只能加载安装的标准库目录下plugins子目录中的库文件,数据库管理员有责任确保该目录中的库都是安全的。local_preload_libraries中指定的项可以明确含有该目录,例如$libdir/plugins/mylib;也可以仅指定库的名称,例如mylib(等价于$libdir/plugins/mylib)。 与shared_preload_libraries不同,在会话开始之前加载模块与在会话中使用到该模块的时候临时加载相比并不具有性能优势。相反,这个特性的目的是为了调试或者测量在特定会话中不明确使用LOAD加载的库。例如针对某个用户将该参数设为ALTER USER SET来进行调试。 当指定的库未找到时,连接会失败。 每一个支持GaussDB的库都有一个“magic block”用于确保兼容性,因此不支持GaussDB的库不能通过这个方法加载。 该参数属于BACKEND类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 默认值:空
  • dynamic_library_path 参数说明:设置数据查找动态加载的共享库文件的路径。当需要打开一个可以动态装载的模块并且在CREATE FUNCTION或LOAD命令里面声明的名称没有目录部分时,系统将搜索这个目录以查找声明的文件,仅sysadmin用户可以访问。 用于dynamic_library_path的数值必须是一个冒号分隔(Windows下是分号分隔)的绝对路径列表。当一个路径名称以特殊变量$libdir为开头时,会替换为GaussDB发布提供的模块安装路径。例如: 1 dynamic_library_path = '/usr/local/lib/postgresql:/opt/testgs/lib:$libdir' 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 设置为空字符串,表示关闭自动路径搜索。 默认值:$libdir
  • 背景信息 GaussDB提供了多种修改GUC参数的方法,用户可以方便的针对数据库、用户、会话进行设置。 参数名称不区分大小写。 参数取值有整型、浮点型、字符串、布尔型和枚举型五类。 布尔值可以是(on,off)、(true,false)、(yes,no)或者(1,0),且不区分大小写。 枚举类型的取值是在系统表pg_settings的enumvals字段取值定义的。 对于有单位的参数,在设置时请指定单位,否则将使用默认的单位。 参数的默认单位在系统表pg_settings的unit字段定义的。 内存单位有:KB(千字节)、MB(兆字节)和GB(吉字节)。 时间单位:ms(毫秒)、s(秒)、min(分钟)、h(小时)和d(天)。 CN和DN参数可以同时进行设置,其他类型的参数不能同时进行设置。 具体参数说明请参见GUC参数说明。
  • GUC参数设置 GaussDB提供了六类GUC参数,具体分类和设置方式请参考表1: 表1 GUC参数分类 参数类型 说明 设置方式 INTERNAL 固定参数,在创建数据库的时候确定,用户无法修改,只能通过show语法或者pg_settings视图进行查看。 无 POSTMASTER 数据库服务端参数,在数据库启动时确定,可以通过配置文件指定。 支持表2中的方式一。 SIGHUP 数据库全局参数,可在数据库启动时设置或者在数据库启动后,发送指令重新加载。 支持表2中的方式一、方式二。 BACKEND 会话连接参数。在创建会话连接时指定,连接建立后无法修改。连接断掉后参数失效。内部使用参数,不推荐用户设置。 支持表2中的方式一、方式二。 说明: 设置该参数后,下一次建立会话连接时生效。 SUSET 数据库管理员参数。可在数据库启动时、数据库启动后或者数据库管理员通过SQL进行设置。 支持表2中的方式一、方式二或由数据库管理员通过方式三设置。 USERSET 普通用户参数。可被任何用户在任何时刻设置。 支持表2中的方式一、方式二或方式三设置。 说明: 设置USERSET类型的参数时,ALTER DATABASE设置的参数值优先级高于gs_guc设置。如果想要gs_guc设置的参数值生效,则需要执行“alter database xxx reset xxx”进行重置。 GaussDB提供了三种方式来修改GUC参数,具体操作请参考表2: 表2 GUC参数设置方式 序号 设置方法 方式一 登录管理控制台。 在“实例管理”页面,选择指定的实例,单击实例名称,进入实例基本信息页面。 在左侧导航栏单击“参数修改”,进入参数修改页面,在该页面修改参数。 如果需要修改的参数在管理该控制台无法修改,请提前评估风险后再联系客服进行修改。 重启数据库使参数生效。 说明: 重启数据库集群操作会导致用户执行操作中断,请在操作之前规划好合适的执行窗口。 方式二 登录管理控制台。 在“实例管理”页面,选择指定的实例,单击实例名称,进入实例基本信息页面。 在左侧导航栏单击“参数修改”,进入参数修改页面,在该页面修改参数。 如果需要修改的参数在管理该控制台无法修改,请提前评估风险后再联系客服进行修改。 方式三 修改会话级别的参数。 设置会话级别的参数 1 openGauss=# SET paraname TO value; 修改本次会话中的取值。退出会话后,设置将失效。 使用方式一和方式二设置参数时,若所设参数不属于当前环境,数据库会提示参数不在支持范围内的相关信息。
  • vacuum_freeze_table_age 参数说明:指定VACUUM对全表的扫描冻结元组的时间。如果当前事务号与表pg_class.relfrozenxid64字段的差值已经大于参数指定的时间时,VACUUM对全表进行扫描。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0~576 460 752 303 423 487 尽管随时可以将此参数设为上述取值范围之间的值,但是,VACUUM将默认其有效值范围限制在autovacuum_freeze_max_age的95%以内。定期的手动VACUUM可以在对该表的反重叠自动清理启动之前运行。 默认值:4000000000
  • vacuum_freeze_min_age 参数说明:指定VACUUM在扫描一个表时用于判断是否用FrozenXID替换记录的xmin字段(在同一个事务中)。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0~576 460 752 303 423 487 尽管随时可以将此参数设为上述取值范围之间的任意值,但是,VACUUM将默认其有效值范围限制在autovacuum_freeze_max_age的50%以内。 默认值:2000000000
  • gin_pending_list_limit 参数说明:设置当GIN索引启用fastupdate时,pending list容量的最大值。当pending list的容量大于设置值时,会把pending list中数据批量移动到GIN索引数据结构中以进行清理。单个GIN索引可通过更改索引存储参数覆盖此设置值。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,最小值为64,最大值为2147483647‬,单位为kB。 默认值:4MB
  • session_replication_role 参数说明:控制当前会话与复制相关的触发器和规则的行为。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 设置此参数会丢弃之前任何缓存的执行计划。 取值范围:枚举类型 origin表示从当前会话中复制插入、删除、更新等操作。 replica表示从其他地方复制插入、删除、更新等操作到当前会话。 local表示函数执行复制时会检测当前登录数据库的角色并采取相应的操作。 默认值:origin
  • default_transaction_isolation 参数说明:设置默认的事务隔离级别。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 当前版本暂不支持设置默认的事务隔离级别,默认为read committed,请勿自行修改。 取值范围:枚举类型 read uncommitted表示隔离级别是读未提交。 read committed表示事务读已提交。 repeatable read表示事务可重复读。 serializable,GaussDB目前功能上不支持此隔离级别,等价于repeatable read。 默认值:read committed
  • temp_tablespaces 参数说明:当一个CREATE命令没有明确指定一个表空间时,temp_tablespaces指定了创建临时对象(临时表和临时表的索引)所在的表空间。在这些表空间中创建临时文件用来做大型数据的排序工作。 其值是一系列表空间名的列表。如果列表中有多个表空间时,每次临时对象的创建,GaussDB会在列表中随机选择一个表空间;如果在事务中,连续创建的临时对象被放置在列表里连续的表空间中。如果选择的列表中的元素是一个空串,GaussDB将自动将当前的数据库设为默认的表空间。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串。空字符串表示所有的临时对象仅在当前数据库默认的表空间中创建,请参见default_tablespace。 默认值:空
  • check_function_bodies 参数说明:设置是否在CREATE FUNCTION执行过程中进行函数体字符串的合法性验证。为了避免产生问题(比如避免从转储中恢复函数定义时向前引用的问题),偶尔会禁用验证。开启后主要验证存储过程中PLSQL的词语法问题,包括数据类型、语句和表达式等,对于其中出现的SQL则在Create阶段不做检查而采用了运行时检查的方式。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示在CREATE FUNCTION执行过程中进行函数体字符串的合法性验证。 off表示在CREATE FUNCTION执行过程中不进行函数体字符串的合法性验证。 默认值:on
  • search_path 参数说明:当一个被引用对象没有指定模式时,此参数设置模式搜索顺序。它的值由一个或多个模式名构成,不同的模式名用逗号隔开。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 当前会话如果存放临时表的模式时,可以使用别名pg_temp将它列在搜索路径中,如'pg_temp,public' 。 存放临时表的模式始终会作为第一个被搜索的对象,排在pg_catalog和search_path中所有模式的前面,即具有第一搜索优先级。建议用户不要在search_path中显示设置pg_temp。如果在search_path中指定了pg_temp,但不是在最前面,系统会提示设置无效,pg_temp仍被优先搜索。通过使用别名pg_temp,系统只会在存放临时表的模式中搜索表、视图和数据类型这样的数据库对象,不会在里面搜索函数或运算符这样的数据库对象。 系统表所在的模式pg_catalog,总是排在search_path中指定的所有模式前面被搜索,即具有第二搜索优先级(pg_temp具有第一搜索优先级)。建议用户不要在search_path中显式设置pg_catalog。如果在search_path中指定了pg_catalog,但不是在最前面,系统会提示设置无效,pg_catalog仍被第二优先搜索。 当没有指定一个特定模式而创建一个对象时,它们被放置到以search_path为命名的第一个有效模式中。当搜索路径为空时,会报错误。 通过SQL函数current_schema可以检测当前搜索路径的有效值。这和检测search_path的值不尽相同,因为current_schema显示search_path中首位有效的模式名称。 取值范围:字符串 设置为"$user",public时,支持共享数据库(没有用户具有私有模式和所有共享使用public),用户私有模式和这些功能的组合使用。可以通过改变默认搜索路径来获得其他效果,无论是全局化的还是私有化的。 设置为空串('')的时候,系统会自动转换成一对双引号。 设置的内容中包含双引号,系统会认为是不安全字符,会将每个双引号转换成一对双引号。 默认值:"$user",public $user表示与当前会话用户名同名的模式名,如果这样的模式不存在,$user将被忽略。
  • default_tablespace 参数说明:当CREATE命令没有明确声明表空间时,所创建对象(表和索引等)的缺省表空间。 值是一个表空间的名称或者一个表示使用当前数据库缺省表空间的空字符串。若指定的是一个非默认表空间,用户必须具有它的CREATE权限,否则尝试创建会失败。 临时表不使用此参数,可以用temp_tablespaces代替。 创建数据库时不使用此参数。默认情况下,一个新的数据库从模板数据库继承表空间配置。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串,其中空表示使用默认表空间。 默认值:空
  • default_storage_nodegroup 参数说明:此参数设置当前的默认建表所在的Node Group,目前只适用普通表。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 值为“installation”表示建表会默认建在安装的Node Group上。 值为其他字符串表示建表会默认建在设置的Node Group上。 取值范围:字符串 默认值:installation
  • default_text_search_config 参数说明:设置全文检索的配置信息。 如果设置为不存在的文本搜索配置时将会报错。如果default_text_search_config对应的文本搜索配置被删除,需要重新设置default_text_search_config,否则会报设置错误。 其被文本搜索函数使用,这些函数并没有一个明确指定的配置。 当与环境相匹配的配置文件确定时,gs_initdb会选择一个与环境相对应的设置来初始化配置文件。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 GaussDB支持pg_catalog.english,pg_catalog.simple两种配置。 默认值:pg_catalog.english
  • lc_time 参数说明:设置时间和区域的显示格式,影响to_char之类的函数的输出。可接受的值是系统相关的。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 使用命令locale -a查看当前系统支持的区域和相应的编码格式,并可以选择进行设置。 默认情况下,gs_initdb会根据当前的系统环境初始化此参数,通过locale命令可以查看当前的配置环境。 若该参数通过执行gs_guc reload修改时,如果当前节点上的某个session的连接不是来自于客户端,而是来自于该节点所属集群上的其他节点,那么执行gs_guc reload后该参数在该session上不会立即生效,需与连接节点断开连接后重新连接才会生效。 默认值:C
  • extra_float_digits 参数说明:这个参数为浮点数值调整显示的数据位数,浮点类型包括float4、float8 以及几何数据类型。参数值加在标准的数据位数上(FLT_DIG或DBL_DIG中合适的)。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,-15~3 设置为3,表示包括部分关键的数据位。这个功能对转储那些需要精确恢复的浮点数据特别有用。 设置为负数,表示消除不需要的数据位。 默认值:0
  • client_encoding 参数说明:设置客户端的字符编码类型。 请根据前端业务的情况确定。尽量客户端编码和服务器端编码一致,提高效率。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:兼容PostgreSQL所有的字符编码类型。其中UTF8表示使用数据库的字符编码类型。 使用命令locale -a查看当前系统支持的区域和相应的编码格式,并可以选择进行设置。 默认情况下,gs_initdb会根据当前的系统环境初始化此参数,通过locale命令可以查看当前的配置环境。 参数建议保持默认值,不建议通过gs_guc工具或其他方式直接在postgresql.conf文件中设置client_encoding参数,即使设置也不会生效,以保证集群内部通信编码格式一致。 默认值:UTF8 推荐值:SQL_ASCII/UTF8
  • lc_messages 参数说明:设置信息显示的语言。 可接受的值是与系统相关的。 在一些系统上,这个区域范畴并不存在,不过仍然允许设置这个变量,只是不会有任何效果。同样,也有可能是所期望的语言的翻译信息不存在。在这种情况下,用户仍然能看到英文信息。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 使用命令locale -a查看当前系统支持的区域和相应的编码格式,并可以选择进行设置。 默认情况下,gs_initdb会根据当前的系统环境初始化此参数,通过locale命令可以查看当前的配置环境。 默认值:C
  • lc_monetary 参数说明:设置货币值的显示格式,影响to_char之类的函数的输出。可接受的值是系统相关的。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 使用命令locale -a查看当前系统支持的区域和相应的编码格式,并可以选择进行设置。 默认情况下,gs_initdb会根据当前的系统环境初始化此参数,通过locale命令可以查看当前的配置环境。 若该参数通过执行gs_guc reload修改时,如果当前节点上的某个session的连接不是来自于客户端,而是来自于该节点所属集群上的其他节点,那么执行gs_guc reload后该参数在该session上不会立即生效,需与连接节点断开连接后重新连接才会生效。 默认值:C
  • DateStyle 参数说明:设置日期和时间值的显示格式,以及有歧义的输入值的解析规则。 这个变量包含两个独立的加载部分:输出格式声明(ISO、Postgres、SQL、German)和输入输出的年/月/日顺序(DMY、MDY、YMD)。这两个可以独立设置或者一起设置。关键字Euro和European等价于DMY;关键字US、NonEuro、NonEuropean等价于MDY 。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 默认值:'ISO, MDY' gs_initdb会将这个参数初始化成与lc_time一致的值。 若该参数通过执行gs_guc reload修改时,如果当前节点上的某个session的连接不是来自于客户端,而是来自于该节点所属集群上的其他节点,那么执行gs_guc reload后该参数在该session上不会立即生效,需与连接节点断开连接后重新连接才会生效。 设置建议:优先推荐使用ISO格式。Postgres、SQL和German均采用字母缩写的形式来表示时区,例如“EST、WST、CST”等。这些缩写可同时指代不同的时区,比如CST可同时代表美国中部时间(Central Standard Time (USA) UT-6:00)、澳大利亚中部时间(Central Standard Time (Australia) UT+9:30)、中国标准时间(China Standard Time UT+8:00)。这种情况下在时区转化时可能会得不到正确的结果,从而引发其他问题。
  • lc_numeric 参数说明:设置数值的显示格式,影响to_char之类的函数的输出。可接受的值是系统相关的。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 使用命令locale -a查看当前系统支持的区域和相应的编码格式,并可以选择进行设置。 默认情况下,gs_initdb会根据当前的系统环境初始化此参数,通过locale命令可以查看当前的配置环境。 若该参数通过执行gs_guc reload修改时,如果当前节点上的某个session的连接不是来自于客户端,而是来自于该节点所属集群上的其他节点,那么执行gs_guc reload后该参数在该session上不会立即生效,需与连接节点断开连接后重新连接才会生效。 默认值:C
  • num_internal_lock_partitions 参数说明:控制内部轻量级锁分区的个数。主要用于各类场景的性能调优。内容以关键字和数字的KV方式组织,各个不同类型锁之间以逗号隔开。先后顺序对设置结果不影响,例如“CLOG_PART=256,CSNLOG_PART=512”等同于“CSNLOG_PART=512,CLOG_PART=256”。重复设置同一关键字时,以最后一次设置为准,例如“CLOG_PART=256,CLOG_PART=2”,设置的结果为CLOG_PART=2。当没有设置关键字时,则为默认值,各类锁的使用描述和最大、最小、默认值如下。 CLOG_PART:CLOG文件控制器的个数,增大该值可以提高CLOG日志写入效率,提升事务提交性能,但是会增大内存使用;减小该值会减少相应内存使用,但可能使得CLOG日志写入冲突变大,影响性能。最小值为1,最大值为256。 CSNLOG_PART:CSNLOG文件控制器的个数,增大该值可以提高CSNLOG日志写入效率,提升事务提交性能,但是会增大内存使用;减小该值会减少相应内存使用,但可能使得CSNLOG日志写入冲突变大,影响性能。最小值为1,最大值为512。 LOG2_LOCKTABLE_PART:常规锁表锁分区个数的2对数,增大该值可以提升正常流程常规锁获取锁的并行度,但是可能增加锁转移和锁消除时的耗时,对于等待事件在LockMgrLock时,可以调大该锁增加性能。最小值4,即锁分区数为16;最大值为16,即锁分区数为65536。 TWOPHASE_PART:两阶段事务锁的分区数,调大该值可以提高两阶段事务提交的并发数。最小值为1,最大值为64。 FASTPATH_PART:每个线程可以不通过主锁表拿锁的最大锁个数,对于分区表读取、更新、插入、删除操作且等待事件在LockMgrLock时,可以通过调大该值避免获取LockMgrLock提升性能,建议调整数量大于等于分区数*(1+本地索引数量)+全局索引数量+10,调大该值会额外增加内存。最小值为20,最大值为10000。 该参数属于POSTMASTER类型参数,参考表1中对应设置方法进行设置。 取值范围:字符串 默认值: CLOG_PART:256 CSNLOG_PART:512 LOG2_LOCKTABLE_PART:4 TWOPHASE_PART:1 FASTPATH_PART:20
共100000条