为了方便您配置数据库参数,GaussDB(DWS) 提供了参数模板的功能,参数模板中包 含了一些常用的数据库参数。您可以直接在GaussDB(DWS) 管理控制台上管理参数模 板,将参数模板应用到集群后,可以直接在集群的“参数修改”页面中修改参数。
本章节将为您介绍参数模板的如下内容:
● 参数模板概述
● 参数说明
● 创建参数模板
● 修改参数模板
● 应用参数模板到集群
● 删除参数模板
参数模板概述
参数模板是一组适用于数据仓库的参数,模板中的参数都设置了默认值,这些参数包 括会话超时时间、日期和时间格式等,详情参见参数说明。通过调整参数值,可以使 数据库更好地适配实际业务。在创建集群时,您可以为集群指定一个参数模板,模板 中的参数将被应用于该GaussDB(DWS) 集群中的所有数据库,如果您未指定参数模 板,系统将为集群应用默认的参数模板。当集群创建成功后,您可以在集群“参数修 改”页面修改参数,也可以在参数模板管理页面,选择其他参数模板或者创建新的参 数模板重新应用到对应的集群。
GaussDB(DWS) 为每个版本的数据仓库预置了一个默认参数模板,默认参数模板不支
session_timeout Session闲置超时时间,单位为秒,0表示关闭
超时限制。取值范围:0 ~ 86400。 600 datestyle 设置日期和时间值的显示格式。 ISO,MDY failed_login_atte
timezone 设置显示和解释时间类型数值时使用的时区。 UTC log_timezone 设置服务器写日志文件时使用的时区。 UTC enable_resource_r
● 归档:监控信息保存在history视图,归档在info 表。归档时间为三分钟,归档后history视图中的 记录会被清除。
● history视图GS_WLM_SESSION_HISTORY,对应 存入info表GS_WLM_SESSION_INFO。
● history视图GS_WLM_OPERATOR_HISTORY,对 应存入info表GS_WLM_OPERATOR_INFO。
off
query_dop 用户自定义的查询并行度。
● 配置为0表示查询并行度自适应。
● 配置为1表示查询不并行。
● 配置为2表示查询并行度为2。
0
参数名称 参数描述 默认值
ration 设置当前会话资源监控实时视图中记录的语句 执行结束后进行归档的最小执行时间,单位为
imeout 该参数控制并发更新同一行时单个锁的最长等 待时间。当申请的锁等待时间超过设定值时,
password_policy 使用CREATE ROLE/USER命令创建或ALTER ROLE/USER命令修改GaussDB(DWS)帐户时,
该参数决定是否进行密码复杂度检查。
● 0表示不采用任何密码复杂度策略。
● 1表示采用默认密码复杂度校验策略。
1
参数名称 参数描述 默认值 password_reuse_ti
me 在使用ALTER USER或ALTER ROLE修改用户密 码时,该参数指定是否对新密码进行可重用天 数检查。取值范围:0~3650,单位为天。
● 0表示不检查密码可重用天数。
● 正数表示新密码不能为该值指定的天数内使 用过的密码。
说明修改密码时会检查配置参数password_reuse_time和 password_reuse_max。
● password_reuse_time和password_reuse_max只 要满足其中任一个为正数时,即认为密码可重 用。
● password_reuse_time为0时,表示不限制密码重 用天数,仅限制密码重用次数。
● password_reuse_time和password_reuse_max都 为0时,表示不对密码重用进行限制。
60
password_reuse_
max 在使用ALTER USER或ALTER ROLE修改用户密 码时,该参数指定是否对新密码进行可重用次 数检查。
● 0表示不检查密码可重用次数。
● 正整数表示新密码不能为该值指定的次数内 使用过的密码。
说明修改密码时会检查配置参数password_reuse_time和 password_reuse_max。
● password_reuse_time和password_reuse_max只 要满足其中任一个为正数时,即认为密码可重 用。
● password_reuse_max为0时,表示不限制密码重 用次数,仅限制密码重用天数。
● password_reuse_time和password_reuse_max都 为0时,表示不对密码重用进行限制。
ion_type 该字段决定采用何种加密方式对用户密码进行 加密存储。
● 0表示采用md5方式对密码加密。
● 1表示采用sha256方式对密码加密,兼容 postgres客户端的md5用户认证方式。
● 2表示采用sha256方式对密码加密。md5为 不安全的加密算法,不建议用户使用。
2
参数名称 参数描述 默认值
pooler_reuse pooler复用切换开关,重启集群生效。
● on表示使用pooler复用模式。
● off表示关闭pooler复用模式。
说明CN和DN需要同步设置。如果CN设置为off,DN设置 为on时会导致集群不能正常通信,因此必须对该参数 做CN和DN全局相同的配置,重启集群才会生效。
off
work_mem 设置内部排序操作和Hash表在开始写入临时磁 盘文件之前使用的内存大小,单位为KB。
ORDER BY,DISTINCT和merge joins都要用到 排序操作。
k_mem 设置在维护性操作(比如VACUUM、CREATE INDEX、ALTER TABLE ADD FOREIGN KEY等中 可使用的最大的内存,单位为KB。
说明该参数的设置会影响VACUUM、VACUUMFULL、
CLUSTER、CREATE INDEX的执行效率。
128MB
enable_orc_cache 设置是否允许在初始化cstore_buffers时,将 1/4的cstore_buffers空间预留,用于缓存orc元 数据。
● on表示开启缓存orc元数据,可提升hdfs表 的查询性能,但是会占用列存buffer资源,
导致列存性能下降。
● off表示关闭缓存orc元数据。
on
sql_use_spacelimit 限制单个SQL在单个DN上,触发落盘操作时,
落盘文件的空间大小,管控的空间包括普通
参数名称 参数描述 默认值 enable_hashagg 控制优化器对Hash聚集规划类型的使用。
● on表示使用。
● off表示不使用。
on
enable_hashjoin 控制优化器对Hash连接规划类型的使用。
● on表示使用。
● off表示不使用。
on
enable_indexscan 控制优化器对索引扫描规划类型的使用。
● on表示使用。
enable_mergejoin 控制优化器对融合连接规划类型的使用。
● on表示使用。
● off表示不使用。
off
enable_nestloop 控制优化器对内表全表扫描嵌套循环连接规划 类型的使用。虽然不能完全消除嵌套循环连
enable_seqscan 控制优化器对顺序扫描规划类型的使用。虽然 不能完全消除顺序扫描,但关闭该参数会让优
enable_tidscan 控制优化器对TID扫描规划类型的使用。
● on表示使用。
● off表示不使用。
on
enable_kill_query CASCADE模式删除用户时,会删除此用户拥有 的所有对象。此参数标识是否允许在删除用户 的时候,取消锁定此用户所属对象的query。
● on表示允许取消锁定。
● off表示不允许取消锁定。
off
参数名称 参数描述 默认值
enable_broadcast 控制优化器对stream代价估算时对broadcast分 布方式的使用。
● on表示使用。
● off表示不使用。
on
skew_option 控制是否使用优化策略。
● off:关闭策略。
● normal:采用激进策略。对于不确定是否出 现倾斜的场景,认为存在倾斜,并进行相应
target 为没有用ALTER TABLE SET STATISTICS设置字 段目标的表设置缺省统计目标。此参数设置为 正数是代表统计信息的样本数量,为负数时,
代表使用百分比的形式设置统计目标,负数转 换为对应的百分比,即-5代表5%。
100
enable_codegen 标识是否允许开启代码生成优化,目前代码生 成使用的是LLVM优化。
● on表示允许开启代码生成优化。
● off表示不允许开启代码生成优化。
on
autoanalyze 标识是否允许在生成计划的时候,对于没有统 计信息的表进行统计信息自动收集。
● on表示允许自动进行统计信息收集。
● off表示不允许自动进行统计信息收集。
说明
● 当前不支持对外表触发autoanalyze,如需收集,
需用户手动执行analyze操作。
● 不支持对带有ON COMMIT [DELETE ROWS|
DROP]选项的临时表触发autoanalyze,如需收 集,需用户手动执行analyze操作。
● 如果在autoanalyze某个表的过程中数据库发生异 常,当数据库正常运行之后再执行语句有可能仍 提示需要收集此表的统计信息。此时需要用户对 该表手动执行一次analyze操作,以同步统计信息 数据。
off
参数名称 参数描述 默认值 enable_sonic_has
hagg 标识是否依据规则约束使用基于面向列的hash 表设计的Hash Agg算子。
● on表示在满足约束条件时使用基于面向列的 hash表设计的Hash Agg算子。
● off表示不使用面向列的hash表设计的Hash Agg算子。
on
log_hostname 默认状态下,连接消息日志只显示正在连接主 机的IP地址。打开此选项同时可以记录主机
● query,开启query级别资源监控功能,开启 此功能会把SQL语句的计划信息(类似 explain输出信息)记录到top SQL中。
● perf,开启perf级别资源监控功能,开启此 功能会把包含实际执行时间和执行行数的计 划信息(类似explain analyze输出信息)记 录到top SQL中。
● operator,开启operator级别资源监控功 能,开启此功能不仅会把包含实际执行时间 和执行行数的信息记录到top SQL中,还会 把算子级别执行信息刷新到top SQL中。
query
enable_dynamic_
workload 是否开启动态负载管理功能。
● on表示打开动态负载管理功能。
● off表示关闭动态负载管理功能。
on
topsql_retention_t
ime 设置历史TopSQL中gs_wlm_session_info和 gs_wlm_operator_info表中数据的保存时间。
参数名称 参数描述 默认值 track_counts 控制收集数据库活动的统计数据。
● on表示开启收集功能。
● off表示关闭收集功能。
off
autovacuum 控制数据库自动清理进程(autovacuum)的启 动。自动清理进程运行的前提是将track_counts
e 该参数仅在autovacuum设置为on的场景下生 效,它控制autoanalyze或autovacuum的打开 情况。
● analyze表示只做autoanalyze。
● vacuum表示只做autovacuum。
● mix表示autoanalyze和autovacuum都做。
● none表示二者都不做。
mix
autoanalyze_time
out 设置autoanalyze的超时时间。在对某张表做 autoanalyze时,如果该表的analyze时长超过 了autoanalyze_timeout,则自动取消该表此次 analyze,单位为秒。
5min
autovacuum_io_li
mits 控制autovacuum进程每秒触发IO的上限。其 中-1表示不控制,而是使用系统默认控制组。 -1 autovacuum_max
_workers 设置能同时运行的自动清理线程的最大数量。
其中0表示不会自动进行autovacuum。 3 autovacuum_napt
ime 设置两次自动清理操作的时间间隔,单位为
秒。 10min
autovacuum_vacu
um_threshold 设置触发VACUUM的阈值。当表上被删除或更 新的记录数超过设定的阈值时才会对这个表执 行VACUUM操作。
50
autovacuum_anal
yze_threshold 设置触发ANALYZE操作的阈值。当表上被删 除、插入或更新的记录数超过设定的阈值时才 会对这个表执行ANALYZE操作。
yze_threshold 设置触发ANALYZE操作的阈值。当表上被删 除、插入或更新的记录数超过设定的阈值时才 会对这个表执行ANALYZE操作。