更新时间:2026-07-28 GMT+08:00
分享

特性概述

功能定义

GaussDB提供的应急链路,客户端可以通过接入该链路进行应急命令下发,本功能后简称“应急通道”。

用户场景

  • 极端负载场景下,如CPU过载、内存过载、线程池满,连接池满,CM(集群管理组件)通过网络建连(libpq)连接数据库探活可能失败,进而触发主备倒换,通过应急通道可以避免此场景下的主备倒换。
  • 运维人员通过运维端口连接数据库也可能失败,导致一些关键运维命令无法及时下发,此时可以通过应急通道进行关键命令下发。

规格约束

  • 仅支持CN/DN节点,不支持1主1备1日志组网中的日志节点。
  • 本需求支持场景:
    • GaussDB进程CPU负载峰值达到95%。
    • 最大连接数达到max_connections上限,无法新建连接,GUC参数max_connections的描述请参见《参考》中“数据库运行参数说明 > GUC参数说明 > 连接和认证 > 连接设置”章节。
    • 内存过载,日志中已不断报memory is temporarily unavailable类错误,无法正常分配内存执行SQL。
    • 线程池占满,出现会话堆积,新会话处理缓慢。
  • 通过gsql进行应急通道视图查询或运维,5s内返回结果。mem_log生成为异步执行,保证5s内触发生成,生成完毕的时间受磁盘I/O、内存上下文数量及业务并发影响;会话查杀为异步执行,保证5s内下发查杀信号,查杀的成功性及时间受会话执行的业务、锁资源等因素影响。
  • 应急通道运维仅支持本地连接节点。
  • 通过gsql进行mem_log记录需开启use_workload_manager、enable_memory_limit,请参见操作指导
  • 高CPU场景,需保证enable_control_group参数的开启(默认开启,可进行CPU隔离),才可以保证应急通道100%运维成功,GUC参数enable_control_group具体描述请参见《参考》中“数据库运行参数说明 > GUC参数说明 > 负载管理”章节。

相关文档