华为云用户手册

  • persistent_datanode_connections 参数说明:会话是否会释放获得的连接。 该参数属于BACKEND类型参数,请参考表2中对应设置方法进行设置。 取值范围:布尔型 off表示会释放获得连接。 on表示不会释放获得连接。 打开此开关后,会存在会话持有连接但并未运行查询的情况,导致其他查询申请不到连接报错。出现此问题时,需约束会话数量小于等于max_active_statements。 默认值:off
  • max_coordinators 参数说明:集群中CN的最大数目,当集群规模有变化时,如增加节点、减少节点,可能需要调整该参数。扩容时,请确保此参数值大于需要扩容到的集群中CN的个数,否则会导致扩容失败。缩容时,若此参数值偏大,CN启动时会消耗更多的内存资源,但总体来说对CN内存影响不大。 参数类型:整型 参数单位:无 取值范围:2~1024 默认值:128 设置方式:该参数属于POSTMASTER类型参数,不建议修改此参数,若需修改,请参考表2中对应设置方法进行设置。 设置建议:按照集群的实际规格进行设置,当该参数小于集群当前CN个数,会导致节点创建失败。由于CN启动时,会根据参数值提前申请内存,所以当该参数值变大,系统会消耗更多内存资源,但总体来说对CN内存影响不大。
  • max_datanodes 参数说明:集群中DN的最大数目,当集群规模有变化时,如增加节点、减少节点,可能需要调整该参数。扩容时,请确保此参数值大于需要扩容到的集群中DN总分片数,否则会导致扩容失败。缩容时,若此参数值偏大,CN启动时会消耗更多的内存资源,但总体来说对CN内存影响不大。 参数类型:整型 参数单位:无 取值范围:2-65535 默认值:256 设置方式:该参数属于POSTMASTER类型参数,不建议修改此参数,若需修改,请参考表2中对应设置方法进行设置。 设置建议:按照集群的实际规格进行设置,当该参数小于集群当前DN个数,会导致节点创建失败。由于CN启动时,会根据参数值提前申请内存,所以当该参数值变大,系统会消耗更多内存资源,但总体来说对CN内存影响不大。
  • pooler_cancel_timeout 参数说明:CN连接池在错误处理时Cancel某连接的超时时间。如果在子事务或存储过程异常捕获的过程中发生该类超时,那么包含子事务或存储过程的整个事务将发生回滚。在此基础上,在子事务或存储过程异常捕获的过程中,如果错误源自COPY FROM操作中源数据与目标表表结构的不一致,则只要该参数值不为0,就总会触发超时报错。 该参数属于SIGHUP类型参数,请参考表2中对应设置方法进行设置。 取值范围:整型,最小值为0,最大值为7200,最小单位为秒。其中0时(一般不建议)表示关闭此开关,不做超时限制。 默认值:15s
  • pooler_connect_interval_time 参数说明:pooler建链重试功能使用,当参数pooler_connect_max_loops设置大于1时,该参数可以控制不同重试轮数之间执行时间间隔。参数设置方面,建议略大于当前集群主备切换恢复时间即。 该参数属于USERSET类型参数,请参考表2中对应设置方法进行设置。 取值范围:整型,最小值为0,最大值为7200,最小单位为秒。 默认值:15s
  • pooler_port 参数说明:cm_agent、cm_ctl等内部工具运维管理端口,初始化用户或系统管理员通过客户端连接数据库所使用端口。 该参数属于POSTMASTER类型参数,请参考表2中对应设置方法进行设置。 取值范围:CN或DN实例的GUC参数"port"值加1。 默认值:CN或DN实例的GUC参数"port"默认值加1,CN实例该参数默认值为8001,DN实例该参数默认值为40001。
  • max_pool_size 参数说明:CN的连接池与其它某个CN/DN的最大连接数,当集群规模有变化时,如增加节点、减少节点,可能需要调整该参数。 参数类型:整型 参数单位:无 取值范围:1~65535 默认值: 独立部署: 32768(60核CPU/480G内存);16384(32核CPU/256G内存);8192(16核CPU/128G内存);4096(8核CPU/64G内存);2048(4核CPU/32G内存);1000(4核CPU/16G内存) 设置方式:该参数属于POSTMASTER类型参数,请参考表2中对应设置方法进行设置。 设置建议:按照不同实例规格下的默认值进行设置,该参数值需要大于max_connections,调整时需预留内部线程所消耗的连接。当业务并发高时,会消耗连接池中CN至其他CN/DN的连接,如果该参数配置过小,连接数达到上限时会产生报错,导致业务失败。由于CN启动时,会根据参数值提前申请内存,所以当该参数值变大,系统会消耗更多内存资源,但总体来说对CN内存影响不大。
  • remote_read_mode 参数说明:远程读功能开关。读取主机上的页面失败时可以从备机上读取对应的页面。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:枚举类型 off表示关闭远程读功能。 non_authentication表示开启远程读功能,但不进行证书认证。 authentication表示开启远程读功能,但要进行证书认证。 默认值:authentication
  • data_sync_retry 参数说明:控制当fsync到磁盘失败后是否继续运行数据库。由于在某些操作系统的场景下,fsync失败后重试阶段即使再次fsync失败也不会报错,从而导致数据丢失。 该参数属于POSTMASTER类型参数,请参考表2中对应设置方法进行设置。 取值范围:布尔型 on表示当fsync同步到磁盘失败后采取重试机制,数据库继续运行。 off表示当fsync同步到磁盘失败后直接报panic,停止数据库。 默认值:off
  • restart_after_crash 参数说明:设置为on,后端进程崩溃时, GaussDB 将自动重新初始化此后端进程。 该参数属于SIGHUP类型参数,请参考表2中对应设置方法进行设置。 取值范围:布尔型 on表示能够最大限度地提高数据库的可用性。 在某些情况(比如当采用管理工具(例如xCAT)管理GaussDB时),能够最大限度地提高数据库的可用性。 off表示能够使得管理工具在后端进程崩溃时获取控制权并采取适当的措施进行处理。 默认值:on
  • omit_encoding_error 参数说明:设置为on,数据库的客户端字符集编码为UTF-8时,出现的字符编码转换错误将打印在日志中,有转换错误的被转换字符会被忽略,以"?"代替。 该参数属于USERSET类型参数,请参考表2中对应设置方法进行设置。 取值范围:布尔型 on表示有转换错误的字符将被忽略,以"?"代替,打印错误信息到日志中。 off表示有转换错误的字符不能被转换,打印错误信息到终端。 默认值:off 若该参数通过执行gs_guc reload修改时,如果当前节点上的某个session的连接不是来自于客户端,而是来自于该节点所属集群上的其他节点,那么执行gs_guc reload后该参数在该session上不会立即生效,需与连接节点断开连接后重新连接才会生效。
  • default_with_oids 参数说明:在没有声明WITH OIDS和WITHOUT OIDS的情况下,这个选项控制在新创建的表中CREATE TABLE和CREATE TABLE AS是否包含一个OID字段。它还决定SELECT INTO创建的表里面是否包含OID 。 不推荐在用户表中使用OID,故默认设置为off。需要带有OID字段的表应该在创建时声明WITH OIDS 。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示在新创建的表中CREATE TABLE和CREATE TABLE AS可以包含一个OID字段。 off表示在新创建的表中CREATE TABLE和CREATE TABLE AS不可以包含一个OID字段。 默认值:off
  • backslash_quote 参数说明:控制字符串文本中的单引号是否能够用\'表示。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 在字符串文本符合SQL标准的情况下,\没有任何其他含义。这个参数影响的是如何处理不符合标准的字符串文本,包括明确的字符串转义语法是(E'...')。 取值范围:枚举类型 on表示一直允许使用\'表示。 off表示拒绝使用\'表示。 safe_encoding表示仅在客户端字符集编码不会在多字节字符末尾包含\的ASCII值时允许。 默认值:safe_encoding
  • escape_string_warning 参数说明:警告在普通字符串中直接使用反斜杠转义。 如果需要使用反斜杠作为转义,可以调整为使用转义字符串语法(E'...')来做转义,因为在每个SQL标准中,普通字符串的默认行为现在将反斜杠作为一个普通字符。 这个变量可以帮助定位需要改变的代码。 使用E转义会导致部分场景下日志记录不全。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 默认值:on
  • standard_conforming_strings 参数说明:控制普通字符串文本('...')中是否按照SQL标准把反斜扛当普通文本。 应用程序通过检查这个参数可以判断字符串文本的处理方式。 建议明确使用转义字符串语法(E'...')来转义字符。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示打开控制功能。 off表示关闭控制功能。 默认值:on
  • quote_all_identifiers 参数说明:当数据库生成SQL时,此选项强制引用所有的标识符(包括非关键字)。这将影响到EXPLAIN的输出及函数的结果,例如pg_get_viewdef。详细说明请参见gs_dump的--quote-all-identifiers选项。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示打开强制引用。 off表示关闭强制引用。 默认值:off
  • synchronize_seqscans 参数说明:控制启动同步的顺序扫描。在大约相同的时间内并行扫描读取相同的数据块,共享I/O负载。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示扫描可能从表的中间开始,然后选择"环绕"方式来覆盖所有的行,为了与已经在进行中的扫描活动同步。这可能会造成没有用ORDER BY子句的查询得到行排序造成不可预测的后果。 off表示确保顺序扫描是从表头开始的。 默认值:on
  • enable_beta_features 参数说明:控制开启某些非正式发布的特性,仅用于POC验证,例如GDS表关联操作。这些特性属于延伸特性,建议客户谨慎开启,在某些功能场景下可能存在问题。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示开启这些功能受限的特性,保持前向兼容。但某些场景可能存在功能上的问题。 off表示禁止使用这些特性。 默认值:off
  • partition_lock_upgrade_timeout 参数说明:在执行某些查询语句的过程中,会需要将分区表上的锁级别由允许读的ExclusiveLock级别升级到读写阻塞的AccessExclusiveLock级别。如果此时已经存在并发的读事务,那么该锁升级操作将阻塞等待。partition_lock_upgrade_timeout为尝试锁升级的等待超时时间。 在分区表上进行MERGE PARTITION和CLUSTER PARTITION操作时,都利用了临时表进行数据重排和文件交换,为了最大程度提高分区上的操作并发度,在数据重排阶段给相关分区加锁ExclusiveLock,在文件交换阶段加锁AccessExclusiveLock。 常规加锁方式是等待加锁,直到加锁成功,或者等待时间超过lockwait_timeout发生超时失败。 在分区表上进行MERGE PARTITION或CLUSTER PARTITION操作时,进入文件交换阶段需要申请加锁AccessExclusiveLock,加锁方式是尝试性加锁,加锁成功了则立即返回,不成功则等待50ms后继续下次尝试,加锁超时时间使用会话级设置参数partition_lock_upgrade_timeout。 特殊值:若partition_lock_upgrade_timeout取值-1,表示无限等待,即不停的尝试锁升级,直到加锁成功。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,最小值-1,最大值3000,单位为秒(s)。 默认值:1800
  • gs_clean_timeout 参数说明:控制Coordinator周期性调用gs_clean工具的时间,是一个平均值。 GaussDB数据库 中事务处理使用的是两阶段提交的方法,当有两阶段事务残留时,该事务通常会拿着表级锁,导致其它连接无法加锁,此时需要调用gs_clean工具对集群中两阶段事务进行清理,gs_clean_timeout是控制Coordinator周期性调用gs_clean的时间。 增大这个参数可能导致GaussDB周期性调用gs_clean工具的时间延长,导致两阶段事务清理时间延长。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0 ~ 2147483,单位为秒(s)。 默认值:1min
  • deadlock_timeout 参数说明:设置死锁超时检测时间,以毫秒为单位。当申请的锁超过设定值时,系统会检查是否产生了死锁。该参数仅针对常规锁生效。 死锁的检查代价是比较高的,服务器不会在每次等待锁的时候都运行这个过程。在系统运行过程中死锁是不经常出现的,因此在检查死锁前只需等待一个相对较短的时间。增加这个值就减少了无用的死锁检查浪费的时间,但是会减慢真正的死锁错误报告的速度。在一个负载过重的服务器上,用户可能需要增大它。这个值的设置应该超过事务持续时间,这样就可以减少在锁释放之前就开始死锁检查的问题。 如果要通过设置log_lock_waits来将查询执行过程中的锁等待耗时信息写入日志,请确保log_lock_waits的设置值小于deadlock_timeout的设置值(或默认值)。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,1~2147483647,单位为毫秒(ms)。 默认值:1s
  • max_pred_locks_per_transaction 参数说明:控制每个事务允许断定锁的最大数量,是一个平均值。 共享的断定锁表的大小是以假设任意时刻最多只有max_pred_locks_per_transaction*(max_connections+max_prepared_transactions) 个独立的对象需要被锁住为基础进行计算的。不超过设定数量的多个对象可以在任一时刻同时被锁定。当在一个事务里面修改很多不同的表时,可能需要提高这个默认数值。只能在服务器启动的时候设置。 增大这个参数可能导致GaussDB请求更多的System V共享内存,有可能超过操作系统的缺省配置。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,10 ~ 2147483647‬ 默认值:64
  • max_locks_per_transaction 参数说明:控制每个事务能够得到的平均的对象锁的数量。 共享的锁表的大小是以假设任意时刻最多只有max_locks_per_transaction*(max_connections+max_prepared_transactions) 个独立的对象需要被锁住为基础进行计算的。不超过设定数量的多个对象可以在任一时刻同时被锁定。当在一个事务里面修改很多不同的表时,可能需要提高这个默认数值。只能在数据库启动的时候设置。 增大这个参数可能导致GaussDB请求更多的System V共享内存,有可能超过操作系统的缺省配置。 当运行备机时,请将此参数设置不小于主机上的值,否则,在备机上查询操作不会被允许。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,10 ~ 2147483647‬ 默认值:256
  • num_internal_lock_partitions 参数说明:控制内部轻量级锁分区的个数。主要用于各类场景的性能调优。内容以关键字和数字的KV方式组织,各个不同类型锁之间以逗号隔开。先后顺序对设置结果不影响,例如“C LOG _PART=256, CS NLOG_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
  • 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
  • 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
  • lc_numeric 参数说明:设置数值的显示格式,影响to_char之类的函数的输出。可接受的值是系统相关的。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串 使用命令locale -a查看当前系统支持的区域和相应的编码格式,并可以选择进行设置。 默认情况下,gs_initdb会根据当前的系统环境初始化此参数,通过locale命令可以查看当前的配置环境。 若该参数通过执行gs_guc reload修改时,如果当前节点上的某个session的连接不是来自于客户端,而是来自于该节点所属集群上的其他节点,那么执行gs_guc reload后该参数在该session上不会立即生效,需与连接节点断开连接后重新连接才会生效。 默认值:C
共100000条