pldebugger扩展在哪里?CentOS7下pgAdmin调试器无法使用如何解决
关于pgAdmin4调试器无法获取pldebugger源码的问题解答
1. 原仓库无法访问不代表调试功能完全不可用
pldebugger项目并未停止维护,只是官方源码仓库的访问地址做了调整,且目前CentOS7环境下完全可以通过预编译包直接安装,不需要手动拉取源码编译。
CentOS7环境安装pldebugger步骤:
- 首先确认你已经添加了对应PostgreSQL版本的官方yum源,如果你使用系统默认源安装的PostgreSQL,需要先安装PostgreSQL官方的yum仓库配置包
- 安装对应版本的扩展包,将以下命令中的版本号替换为你实际安装的PostgreSQL大版本(比如12、13、14):
yum install -y postgresql<你的版本号>-contrib postgresql<你的版本号>-pldebugger - 编辑PostgreSQL主配置文件
postgresql.conf,修改shared_preload_libraries参数,添加plugin_debugger,如果已经有其他预加载项,用逗号分隔即可:shared_preload_libraries = 'plugin_debugger' - 重启PostgreSQL服务生效:
systemctl restart postgresql-<你的版本号> - 登录到需要使用调试功能的数据库,执行以下SQL开启扩展:
CREATE EXTENSION pldbgapi; - 重启pgAdmin4后即可正常使用PL/pgSQL代码调试功能
2. 替代调试方案
目前pgAdmin4仅原生适配pldebugger作为调试后端,没有其他官方支持的替代扩展。如果确实无法安装pldebugger,可以使用以下临时方案实现调试需求:
- 在PL/pgSQL代码中插入
RAISE NOTICE语句,打印执行过程中的中间变量值和状态标识,做轻量级调试 - 将逻辑复杂的存储过程/函数拆分为多个小粒度的子函数,逐段验证执行结果,排查问题
- 商业数据库客户端工具多自带PL/pgSQL调试能力,可按需选用,但兼容性需要自行验证
内容的提问来源于stack exchange,提问作者mlwacosmos
相关产品推荐
相关产品推荐

