更新时间:2026-10-21 GMT+08:00
分享

全局临时表

max_active_global_temporary_table

参数说明:全局临时表功能开关,控制是否可以创建全局临时表。该参数的取值决定了共享缓存中预留给全局临时表所需的哈希表的内存使用,并不会强制限制所有会话中的活跃全局临时表总数。

参数类型:整型

参数单位:无

取值范围:0 ~ 1000000

  • 0:全局临时表功能关闭。
  • > 0:全局临时表功能打开。

默认值:1000

设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。

设置建议:推荐使用默认值。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

vacuum_gtt_defer_check_age

参数说明:VACUUM执行后检查当前数据库所有全局临时表的relfrozenxid最小值与所有普通表的relfrozenxid最小值的差异。如果全局临时表的relfrozenxid最小值落后超过指定参数值,就会产生告警“global temp table oldest relfrozenxid %lu is the oldest in the entire db”,提醒用户手动执行VACUUM,否则可能导致clog日志不回收。

参数类型:整型

参数单位:无

取值范围:0 ~ 1000000

默认值:10000。

设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。

设置建议:建议设置为默认值,不做调整。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

enable_gtt_concurrent_truncate

参数说明:是否支持全局临时表truncate table和DML的并发执行,以及全局临时表truncate table和truncate table的并发执行。

参数类型:布尔型

参数单位:无

取值范围:

  • on:表示支持上述操作并发。
  • off:表示不支持上述操作并发。

默认值:on

设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。

设置建议:建议设置为默认值,不做调整。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。

global_gtt_cn_session_key

参数说明:表示当前会话的会话ID,即分布式全局临时表的全局唯一性会话标识。

参数类型:字符串

参数单位:无

取值范围:字符串

默认值:无

设置方式:该参数为内部参数,不支持用户设置,用户查询返回结果为空。

设置建议:不支持设置。

设置不当的风险与影响:无

gtt_reuse_wait_timeout

参数说明:分布式全局临时表REUSE操作中,当前会话复用GTT session mapping entry时,等待上一个会话释放相关资源的最大超时时间。

参数类型:整型

参数单位:ms(毫秒)

取值范围:0~1200000

默认值:5000(即5s)

设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。

设置建议:推荐使用默认值。在网络延迟较高或业务中存在长事务频繁使用全局临时表的语句报错场景,可适当增大该值,避免因等待超时导致REUSE失败。

设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改。设置过小可能导致在正常清理周期内REUSE超时报错,影响业务连续性;设置过大可能导致DN线程长时间阻塞在REUSE等待中,影响该线程对其他请求的响应。

相关文档