华为云用户手册

  • synchronous_commit 参数说明:设置当前事务的同步方式。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 通常情况下,一个事务产生的日志的同步顺序如下: 主机将日志内容写入本地内存。 主机将本地内存中的日志写入本地文件系统。 主机将本地文件系统中的日志内容刷盘。 主机将日志内容发送给备机。 备机接收到日志内容,存入备机内存。 备机将备机内存中的日志写入备机文件系统。 备机将备机文件系统中的日志内容刷盘。 备机回放日志,完成对数据文件的增量更新。 取值范围:枚举类型 on:表示主机事务提交需要等待备机将对应日志刷新到磁盘。 off:表示主机事务提交无需等待主机自身将对应日志刷新到磁盘,通常也称为异步提交。 local:表示主机事务提交需要等待主机自身将对应日志刷新到磁盘,通常也称为本地提交。 remote_write:表示主机事务提交需要等待备机将对应日志写到文件系统(无需刷新到磁盘)。 remote_receive:表示主机事务提交需要等待备机接收到对应日志数据(无需写入文件系统)。 remote_apply:表示主机事务提交需要等待备机完成对应日志的回放操作。 true:同on。 false:同off。 yes:同on。 no:同off。 1:同on。 0:同off。 2:同remote_apply。 默认值:on
  • raise_errors_if_no_files 参数说明:导入时是否区分“导入文件记录数为空”和“导入文件不存在”。raise_errors_if_no_files=TRUE,则“导入文件不存在”的时候, GaussDB 将抛出“文件不存在的”错误。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示导入时区分“导入文件记录数为空”和“导入文件不存在”。 off表示导入时不区分“导入文件记录数为空”和“导入文件不存在”。 默认值:off
  • enable_copy_server_files 参数说明:是否开启copy服务器端文件的权限。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示开启copy服务端文件的权限。 off表示不开启copy服务端文件的权限。 默认值:off 当参数enable_copy_server_files关闭时,只允许初始用户执行COPY FROM FILENAME或COPY TO FILENAME命令,当参数enable_copy_server_files打开,允许具有SYSADMIN权限的用户或继承了内置角色gs_role_copy_files权限的用户执行。
  • backend_flush_after 参数说明:设置backend线程刷页个数超过设定的阈值时,告知操作系统开始将操作系统缓存中的页面异步刷盘。GaussDB中,磁盘页大小为8KB。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0~256(0表示关闭异步刷盘功能),单位页面(8KB)。例如,取值64,表示backend线程连续写64个磁盘页,即64*8=512KB磁盘空间后会进行异步刷盘。 默认值:0
  • bgwriter_flush_after 参数说明:设置background writer线程刷页个数超过设定的阈值时,告知操作系统开始将操作系统缓存中的页面异步刷盘。GaussDB中,磁盘页大小为8KB。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0~256(0表示关闭异步刷盘功能),单位页面(8KB)。例如,取值64,表示background writer线程连续写64个磁盘页,即64*8=512KB磁盘空间后会进行异步刷盘。 默认值:512KB(即64个页面)
  • checkpoint_flush_after 参数说明:设置checkpointer线程刷页个数超过设定的阈值时,告知操作系统开始将操作系统缓存中的页面异步刷盘。GaussDB中,磁盘页大小为8KB。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0~256(0表示关闭异步刷盘功能)。例如,取值32,表示checkpointer线程连续写32个磁盘页,即32*8=256KB磁盘空间后会进行异步刷盘。 默认值:256KB
  • max_io_capacity 参数说明:设置后端写进程批量刷页每秒的I/O上限,需要根据具体业务场景和机器磁盘I/O能力进行设置。要求RTO很短时间或者数据量比共享内存大多倍的情况,业务访问数据量又是随机访问时,该值不宜过小。该参数设置较小会减小后端写进程刷页个数,如果业务触发页面淘汰多时,该值设置小会影响业务。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,30720~10485760。单位是KB。 默认值:512000KB(500MB)
  • bgwriter_delay 参数说明:设置后端写进程写"脏"共享缓冲区之间的时间间隔。每一次,后端写进程都会为一些脏的缓冲区发出写操作,全量checkpoint模式用bgwriter_lru_maxpages参数控制每次写的量,然后休眠bgwriter_delay毫秒后才再次启动;增量checkpoint模式下,根据设定candidate_buf_percent_target计算目标空闲缓冲页面个数,不足时每隔bgwriter_delay毫秒刷一批页面下盘,刷页个数根据目标差距百分比计算,会根据max_io_capacity限制最大数量。 在许多系统上,休眠延时的有效分辨率是10毫秒。因此,设置一个不是10的倍数的数值与把它设置为下一个10的倍数是一样的效果。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,10~10000,单位为毫秒。 默认值:2s 设置建议:在数据写压力比较大的场景中可以尝试减小该值以降低checkpoint的压力。
  • pagewriter_sleep 参数说明:设置用于增量检查点打开后,pagewriter线程每隔pagewriter_sleep的时间刷一批脏页下盘。当脏页占据shared_buffers的比例达到dirty_page_percent_max时,每批页面数量以设定的max_io_capacity计算出的值刷页,其余情况每批页面数量按比例相对减少。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0~3600000(毫秒) 默认值:2000ms(2s)
  • bgwriter_lru_multiplier 参数说明:通过与已使用缓存区数目的乘积评估下次服务器需要的缓存区数目。 写“脏”缓存区到磁盘的数目取决于服务器最近几次使用的缓存区数目。最近的buffers数目的平均值乘以bgwriter_lru_multiplier是为了评估下次服务器进程需要的buffers数目。在有足够多的干净的、可用的缓存区之前,后端写进程会一直写“脏”缓存区的(每次写的缓存区数目不会超过bgwriter_lru_maxpages的值)。 设置bgwriter_lru_multiplier的值为1.0表示一种“实时”策略,其作用是精准预测下次写“脏”缓冲区的数目。设置为较大的值可以应对突然的需求高峰,而较小的值则可以让服务器进程执行更多的写操作。 设置较小的bgwriter_lru_maxpages和bgwriter_lru_multiplier会减小后端写进程导致的额外I/O开销,但是服务器进程必须自己发出写操作,增加了对查询的响应时间。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:浮点型,0~10。 默认值:2
  • 背景信息 在ANALYZE | ANALYSE和VACUUM语句执行过程中,系统维护一个内部的记数器,跟踪所执行的各种I/O操作的近似开销。如果积累的开销达到了vacuum_cost_limit声明的限制,则执行这个操作的进程将睡眠vacuum_cost_delay指定的时间。然后它会重置记数器然后继续执行。 这个特性是缺省关闭的。如需开启,需要把vacuum_cost_delay变量设置为一个非零值。
  • vacuum_cost_delay 参数说明:指定开销超过vacuum_cost_limit的值时,进程睡眠的时间。 要注意在许多系统上,睡眠的有效分辨率是10毫秒。因此把vacuum_cost_delay设置为一个不是10的整数倍的数值与将它设置为下一个10的整数倍作用相同。 此参数一般设置较小,常见的设置是10或20毫秒。调整此特性资源占用率时,建议调整其他参数,而不是此参数。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0~100,正数值表示打开基于开销的清理延迟特性;0表示关闭基于开销的清理延迟特性。 默认值:1
  • shared_preload_libraries 参数说明:此参数用于声明一个或者多个在服务器启动的时候预先装载的共享库,多个库名称之间用逗号分隔,仅sysadmin用户可以访问。比如'$libdir/mylib'会在加载标准库目录中的库文件之前预先加载mylib.so(某些平台上可能是mylib.sl)库文件。 可以用这个方法预先装载GaussDB的存储过程库,通常是使用'$libdir/plXXX'语法。XXX只能是pgsql,perl,tcl,python之一。 通过预先装载一个共享库并在需要的时候初始化它,可以避免第一次使用这个库的加载时间。但是启动每个服务器进程的时间可能会增加,即使进程从来没有使用过这些库。因此建议对那些将被大多数会话使用的库才使用这个选项。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 如果被声明的库不存在,GaussDB服务将会启动失败。 每一个支持GaussDB的库都有一个特殊的标记用于保证兼容性。因此,不支持GaussDB的库不能用这种方法加载。 取值范围:字符串 默认值:security_plugin
  • temp_file_limit 参数说明:限制一个会话中,触发下盘操作时,下盘文件占用的空间大小。例如一次会话中,排序和哈希表使用的临时文件,或者游标占用的临时文件。 此设置为会话级别的下盘文件控制。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 SQL查询执行时使用的临时表空间不在此限制。 取值范围:整型,-1~2147483647,单位为KB。其中-1表示没有限制。 默认值:-1
  • max_stack_depth 参数说明:设置GaussDB执行堆栈的最大安全深度。需要这个安全界限是因为在服务器里,并非所有程序都检查了堆栈深度,只是在可能递规的过程,比如表达式计算这样的过程里面才进行检查。 该参数属于SUSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,100~INT_MAX,单位为KB。 默认值: (ulimit -s的设置)- 640 KB的值大于等于2MB时,此参数的默认值为2MB。 (ulimit -s的设置)- 640 KB的值小于2MB时,此参数的默认值为(ulimit -s的设置)- 640 KB。 设置原则: 数据库需要预留640KB堆栈深度,因此,此参数的最佳设置是等于操作系统内核允许的最大值(就是ulimit -s的设置)- 640KB。 数据库未运行前设置的该参数值大于(ulimit -s的设置)- 640 KB时会导致数据库启动失败;数据库运行阶段设置该参数值大于(ulimit -s的设置)- 640 KB时该值不生效。 若(ulimit -s的设置)-640KB小于此参数取值范围的最小值时会导致数据库启动失败。 如果设置此参数的值大于实际的内核限制,则一个正在运行的递归函数可能会导致一个独立的服务器进程崩溃。 因为并非所有的操作都能够检测,所以建议用户在此设置一个明确的值。 默认值最大为2MB,这个值相对比较小,不容易导致系统崩溃。
  • memory_trace_level 参数说明:动态内存使用超过最大动态内存的90%后,记录内存申请信息的管控等级。该参数仅在use_workload_manager和enable_memory_limit打开时生效。该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:枚举型 none:表示不记录内存申请信息。 level1:动态内存使用超过最大动态内存的90%后,会记录以下信息,并将记录的内存信息保存在$GAUSS LOG /mem_log目录下。 全局内存概况。 instance,session,thread三种类型的所有内存上下文中内存占用前20的内存上下文的内存使用情况。 每个内存上下文的totalsize、freesize字段。 level2:动态内存使用超过最大动态内存的90%后,会记录以下信息,并将记录的内存信息保存在$GAUSSLOG/mem_log目录下。 全局内存概况。 instance,session,thread三种类型的所有内存上下文中内存占用前20的内存上下文的内存使用情况。 每个内存上下文的totalsize,freesize字段。 每个内存上下文上所有内存申请的详细信息,包含申请内存所在的文件,行号和大小。 默认值:level1 该参数设置为level2后,会记录每个内存上下文的内存申请详情(file,line,size字段),会对性能影响较大,需慎重设置。 记录的内存快照信息可以通过系统函数gs_get_history_memory_detail(cstring).查询。 记录的内存上下文是经过将同一类型所有重名的内存上下文进行汇总之后得到的。
  • resilience_memory_reject_percent 参数说明:用于控制内存过载逃生的动态内存占用百分比。该参数仅在GUC参数use_workload_manager和enable_memory_limit打开时生效。该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串,长度大于0 该参数分为recover_memory_percent,、overload_memory_percent 2部分,这2个部分的具体含义如下: recover_memory_percent:内存从过载状态恢复正常状态的动态内存使用占最大动态内存的百分比,当动态内存使用小于最大动态内存乘以该值对应的百分比后,停止过载逃生并放开新连接接入,取值为0~100,设置为多少表示百分之多少。 overload_memory_percent:内存过载时动态内存使用占最大动态内存的百分比,当动态内存使用大于最大动态内存乘以该值对应的百分比后,表示当前内存已经过载,触发过载逃生kill会话并禁止新连接接入,取值为0~100,设置为多少表示百分之多少。 默认值:'0,0',表示关闭内存过载逃生功能。 示例: resilience_memory_reject_percent = '70,90' 表示内存使用超过最大内存上限的90%后禁止新连接接入并kill堆积的会话,kill会话过程中内存恢复到最大内存的70%以下时停止kill会话并允许新连接接入。 最大动态内存和已使用的动态内存可以通过gs_total_memory_detail视图查询获得,最大动态内存:max_dynamic_memory,已使用的动态内存:dynamic_used_memory。 该参数如果设置的百分比过小,则会频繁触发内存过载逃生流程,会使正在执行的会话被强制退出,新连接短时间接入失败,需要根据实际内存使用情况慎重设置。 recover_memory_percent和overload_memory_percent的值可以同时为0,除此之外,recover_memory_percent的值必须要小于overload_memory_percent,否则会设置不生效。
  • max_prepared_transactions 参数说明:设置可以同时处于"预备"状态的事务的最大数目。增加此参数的值会使GaussDB比系统默认设置需要更多的System V共享内存。 当GaussDB部署为主备双机时,在备机上此参数的设置必须要高于或等于主机上的,否则无法在备机上进行查询操作。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,0~262143。 默认值:200 一般不需要对事务显式进行PREPARE操作,如果业务有对事务进行显式PREPARE操作,为避免在准备步骤失败,需调大该值,大于需要进行PREPARE业务的并发数。
  • work_mem 参数说明:设置内部排序操作和Hash表在开始写入临时磁盘文件之前使用的内存大小。ORDER BY,DISTINCT和merge joins都要用到排序操作。Hash表在散列连接、散列为基础的聚集、散列为基础的IN子查询处理中都要用到。 对于复杂的查询,可能会同时并发运行好几个排序或者散列操作,每个都可以使用此参数所声明的内存量,不足时会使用临时文件。同样,好几个正在运行的会话可能会同时进行排序操作。因此使用的总内存可能是work_mem的好几倍。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,64~2147483647,单位为KB。 默认值: 256MB(128核CPU/1024G内存,104核CPU/1024G内存,96核CPU/1024G内存,96核CPU/768G内存);128MB(64核CPU/512G内存,60核CPU/480G内存,32核CPU/256G内存,16核CPU/128G内存);64MB(8核CPU/64G内存);32MB(4核CPU/32G内存);16MB(4核CPU/16G内存) 设置建议: 依据查询特点和并发来确定,一旦work_mem限定的物理内存不够,算子运算数据将写入临时表空间,带来5-10倍的性能下降,查询响应时间从秒级下降到分钟级。 对于串行无并发的复杂查询场景,平均每个查询有5-10关联操作,建议work_mem=50%内存/10。 对于串行无并发的简单查询场景,平均每个查询有2-5个关联操作,建议work_mem=50%内存/5。 对于并发场景,建议work_mem=串行下的work_mem/物理并发数。 对于BitmapScan的哈希表也会受到work_mem的限制,但不会被严格管控下盘。完全Lossify的情况下,哈希表每占用1MB的内存,对应一次BitmapHeapScan的16GB的页面(Ustore为32GB),达到work_mem上限后,会按此比例随数据访问量线性增长。
  • maintenance_work_mem 参数说明:设置在维护性操作(比如VACUUM、CREATE INDEX、ALTER TABLE ADD FOREIGN KEY等)中可使用的最大的内存。该参数的设置会影响VACUUM、VACUUM FULL、CLUSTER、CREATE INDEX的执行效率。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,1024~INT_MAX,单位为KB。 默认值: 2GB(128核CPU/1024G内存,104核CPU/1024G内存,96核CPU/1024G内存,96核CPU/768G内存,64核CPU/512G内存,60核CPU/480G内存);1GB(32核CPU/256G内存);512MB(16核CPU/128G内存);256MB(8核CPU/64G内存);128MB(4核CPU/32G内存);64MB(4核CPU/16G内存) 设置建议: 建议设置此参数的值大于work_mem,可以改进清理和恢复数据库转储的速度。因为在一个数据库会话里,任意时刻只有一个维护性操作可以执行,并且在执行维护性操作时不会有太多的会话。 当自动清理线程运行时,autovacuum_max_workers倍数的内存将会被分配,所以此时设置maintenance_work_mem的值应该不小于work_mem。 如果进行大数据量的cluster等,可以在session中调大该值。
  • max_process_memory 参数说明:设置一个数据库节点可用的最大物理内存。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:整型,2*1024*1024~INT_MAX,单位为KB。 默认值: 900GB(128核CPU/1024G内存,104核CPU/1024G内存,96核CPU/1024G内存);680GB(96核CPU/768G内存);450GB(64核CPU/512G内存);420GB(60核CPU/480G内存);200GB(32核CPU/256G内存);90GB(16核CPU/128G内存);40GB(8核CPU/64G内存);20GB(4核CPU/32G内存);10GB(4核CPU/16G内存) 设置建议: 数据库节点上该数值需要根据系统物理内存及单节点部署主数据库节点个数决定。建议计算公式如下:(物理内存大小 - vm.min_free_kbytes) \* 0.7 / (1 + 主节点个数)。该系数的目的是尽可能保证系统的可靠性,不会因数据库内存膨胀导致节点OOM。这个公式中提到vm.min_free_kbytes,其含义是预留操作系统内存供内核使用,通常用作操作系统内核中通信收发内存分配,至少为5%内存。即,max_process_memory = 物理内存 * 0.665 / (1 + 主节点个数)。 当该值设置不合理,即大于服务器物理内存,可能导致操作系统OOM问题。
  • segment_buffers 参数说明:设置GaussDB段页式元数据页的内存大小。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值说明:整型,16 ~ 1073741823,单位为8KB。 segment_buffers需要设置为BLCKSZ的整数倍,BLCKSZ目前设置为8KB,即segment_buffers需要设置为8KB整数倍。改变BLCKSZ的值会改变最小值。 默认值:8MB 设置建议: segment_buffers 用来缓存段页式段头的内容,属于关键元数据信息,为了提高性能建议常用的表的段头都能缓存在buffer中,不被置换出去。建议按照表的个数(包括索引和toast表)* 分区数 * 3 + 128 来设置。乘以3是因为每个表(分区)会有一些额外的元数据段,一般一个表有3个段。最后+128因为段页式表空间管理需要一定数量的buffer。 该参数设置过小会导致首次创建段页式表时耗时较久,因此请按照建议进行设置。
  • enable_memory_limit 参数说明:启用逻辑内存管理模块。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:布尔型 on表示启用逻辑内存管理模块。 off表示不启用逻辑内存管理模块。 默认值:on 若max_process_memory-shared_buffers-cstore_buffers-元数据少于2G,GaussDB强制把enable_memory_limit设置为off。其中元数据是GaussDB内部使用的内存,和部分并发参数,如max_connections,thread_pool_attr,max_prepared_transactions等参数相关。 当该值为off时,不对数据库使用的内存做限制,在大并发或者复杂查询时,使用内存过多,可能导致操作系统OOM问题。
  • temp_buffers 参数说明:设置每个数据库会话使用的LOCAL临时缓冲区的大小。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 在每个会话的第一次使用临时表之前可以改变temp_buffers的值,之后的设置将是无效的。 一个会话将按照temp_buffers给出的限制,根据需要分配临时缓冲区。如果在一个并不需要大量临时缓冲区的会话里设置一个大的数值,其开销只是一个缓冲区描述符的大小。当缓冲区被使用,就会额外消耗8192字节。 取值范围:整型,100~1073741823,单位为8KB。 默认值:1MB
  • comm_proxy_attr 参数说明:通信代理库相关参数配置。 该参数仅支持欧拉2.9系统下的集中式ARM单机。 本功能在线程池开启状态下生效,即enable_thread_pool为on。 配置该参数时需同步配置GUC参数local_bind_address为libos_kni的网卡IP。 参数模板:comm_proxy_attr = '{enable_libnet:true, enable_dfx:false, numa_num:4, numa_bind:[[30,31],[62,63],[94,95],[126,127]]}' 可配置参数说明。 enable_libnet:是否开启用户态协议,取值范围:true、false。 enable_dfx:是否开启通信代理库视图,取值范围:true、false。 numa_num:机器环境中numa的数量,支持2P、4P服务器,取值范围:4、8。 numa_bind:代理线程绑核参数,每个numa两个CPU绑核,共numa_num组,取值范围:[0,cpu数-1]。 该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 取值范围:字符串,长度大于0。 默认值:'none'
  • tcp_user_timeout 参数说明:在支持TCP_USER_TIMEOUT套接字选项的操作系统上,设置GaussDB在发送数据时,指定传输的数据在TCP连接被强制关闭之前可以保持未确认状态的最大时长。 该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 如果操作系统不支持TCP_USER_TIMEOUT选项,这个参数的值将不生效,默认为0。 在通过UNIX域套接字进行连接的操作系统上,这个参数将被忽略。 取值范围:0-3600000,单位为ms。其中0表示跟随操作系统设置。 默认值:0 注意,不同操作系统内核下,这个参数生效结果将不同: aarch64 EulerOS(Linux内核版本:4.19),超时时间即为该参数设置值。 x86 Euler2.5(Linux内核版本:3.10),超时时间不是该参数设置值,而是不同区间的最大值,即超时时间取值为:tcp_user_timeout设置值所处“Linux TCP重传总耗时”区间的上限最大值。例如:tcp_user_timeout=40000时,重传总耗时为51秒。 表1 x86 Euler2.5(Linux内核版本:3.10)tcp_user_timeout参数取值示意 Linux TCP重传次数 Linux TCP重传总耗时区间(秒) tcp_user_timeout设置举例(毫秒) 实际Linux TCP重传总耗时(秒) 1 (0.2,0.6] 400 0.6 2 (0.6,1.4] 1000 1.4 3 (1.4,3] 2000 3 4 (3,6.2] 4000 6.2 5 (6.2,12.6] 10000 12.6 6 (12.6,25.4] 20000 25.4 7 (25.4,51] 40000 51 8 (51,102.2] 80000 102.2 9 (102.2,204.6] 150000 204.6 10 (204.6,324.6] 260000 324.6 11 (324.6,444.6] 400000 444.6 注:TCP每次重传耗时随重传次数指数增加,当TCP一次重传到达120秒后,后续每次重传都将耗时120秒不再变化。
  • tcp_keepalives_count 参数说明:在支持TCP_KEEPCNT套接字选项的操作系统上,设置GaussDB服务端在断开与客户端连接之前可以等待的保持活跃信号个数。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 如果操作系统不支持TCP_KEEPCNT选项,这个参数的值必须为0。 在通过UNIX域套接字进行连接的操作系统上,这个参数将被忽略。 将该值设置为0时,将使用系统的值。 该参数在不同的会话之间不共享,也就是说不同的会话连接可能有不同的值。 查看该参数时查出来的是当前会话连接内的参数值,而不是GUC副本的值。 取值范围:0-100,其中0表示GaussDB未收到客户端反馈的保持活跃信号则立即断开连接。 默认值:20
  • tcp_keepalives_interval 参数说明:在支持TCP_KEEPINTVL套接字选项的操作系统上,以秒数声明在重新传输之间等待响应的时间。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 取值范围:0-180,单位为s。 默认值: 如果操作系统不支持TCP_KEEPINTVL选项,这个参数的值必须为0。 在通过UNIX域套接字进行的连接的操作系统上,这个参数将被忽略。 将该值设置为0时,将使用系统的值。 该参数在不同的会话之间不共享,也就是说不同的会话连接可能有不同的值。 查看该参数时查出来的是当前会话连接内的参数值,而不是GUC副本的值。
  • tcp_keepalives_idle 参数说明:在支持TCP_KEEPIDLE套接字选项的系统上,设置发送活跃信号的间隔秒数。不设置发送保持活跃信号,连接就会处于闲置状态。 该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 如果操作系统不支持TCP_KEEPIDLE选项 ,这个参数的值必须为0。 在通过UNIX域套接字进行的连接的操作系统上,这个参数将被忽略。 将该值设置为0时,将使用系统的值。 该参数在不同的会话之间不共享,也就是说不同的会话连接可能有不同的值。 查看该参数时查出来的是当前会话连接内的参数值,而不是GUC副本的值。 取值范围:0-3600,单位为s。 默认值:60
  • check_disconnect_query 参数说明:当客户端异常断连(如JDBC触发socketTimeout、libpq触发rwtimeout且关闭连接、运行业务过程中客户端进程终止等)后,该参数控制GaussDB服务端语句是否终止执行。 参数类型:布尔型 参数单位:无 取值范围: on:表示当客户端异常断连后,GaussDB服务端终止运行对应的语句。 off:表示当客户端异常断连后,GaussDB服务端不会终止运行对应的语句。 默认值:on 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 若设置此参数后执行升级,在升级到其他版本前需检查目标版本是否支持该参数。如果不支持,则在升级前需从配置文件中删除该参数。
共100000条