十月 6, 2023
摘要:DBeaver 的调试器可用于调试 PostgreSQL 中的 PL/pgSQL 存储过程。调试器可作为 PostgreSQL 安装的扩展。您必须具有超级用户权限才能使用调试器。
目录
调试前的准备
要在 PostgreSQL 服务器上进行 PL/pgSQL 过程的交互式调试,您需要使用 debugger 插件。debugger 插件是作为扩展提供的典型的交互式调试器。它需要在 PostgreSQL 中修改配置文件中的shared_preload_libraries
参数,以预加载一个共享库。调试器插件由 EDB 开发和维护。其源代码可供查看和改进。
调试器提供了调试 PL/pgSQL 过程所需的服务器 API:
- 断点管理;
- 逐步追踪;
- 变量获取和管理。
安装
基于 Ubuntu 发行版的 PostgreSQL pldebugger
如果您碰巧通过 apt 安装了 PostgreSQL 12 ,那么该过程非常简单:
sudo apt install postgresql-12-pldebugger
sudo service postgresql restart
之后,在您想要调试存储过程的数据库中运行以下命令:
CREATE EXTENSION pldbgapi;
从源代码安装 PostgreSQL pldebugger
您可以在该代码仓库中找到源代码。安装说明位于 README 文件中。
安装 DBeaver 调试器扩展
调试器扩展支持调试 PostgreSQL 中的 PL/pgSQL 存储过程。
P2 仓库 URL:https://dbeaver.io/update/debug/latest/
您可以按照以下步骤安装扩展:
- 主菜单
Help
->Install New Software
。 - 将扩展的 P2 仓库 URL 粘贴到
Work with
字段中,然后按 Enter 键。 - 检查您要安装的项目。
- 单击 下一步 -> 完成。重新启动 DBeaver。
重要:如果 DBeaver 安装在写保护的文件夹中(如
Program Files
、/Applications
、/usr/
),则安装将无法进行。要继续,您需要从某个非写保护的文件夹运行 DBeaver,或者以管理员或 root 身份运行它。
在 DBeaver 窗口中运行调试器
打开要调试的函数的源代码。要切换断点,请将插入符号放在您希望函数停止的行上,并使用快捷键Shift + Control + B
。或者,您可以通过单击行号旁边的灰色边距,来用鼠标切换断点,如下面的屏幕截图所示:
注意:您必须仅在 Show header 选项未打开时切换断点。
然后您需要设置调试配置。找到错误图标右侧的向下箭头,单击它,然后选择
Debug As -> Database Debug:
将打开 Edit Configuration 对话框。在 Function parameters 表中设置输入值。
单击 确定 按钮,您就可以开始了!
调试所必需的常用按钮(例如 跳过 和 继续)位于此处: