解决DBeaver对PostgresSQL备份数据库时报错

DBeaver对PostgresSQL备份数据库时报错:

复制代码
2025-12-16 17:53:51.931 - IO error: Process failed (exit code = 1). See error log.
2025-12-16 17:53:51.931 - java.io.IOException: Process failed (exit code = 1). See error log.
        at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.validateErrorCode(AbstractNativeToolHandler.java:263)
        at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.executeProcess(AbstractNativeToolHandler.java:241)
        at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.doExecute(AbstractNativeToolHandler.java:283)
        at org.jkiss.dbeaver.tasks.nativetool.AbstractNativeToolHandler.lambda$0(AbstractNativeToolHandler.java:87)
        at org.jkiss.dbeaver.runtime.RunnableContextDelegate.lambda$0(RunnableContextDelegate.java:39)
        at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122)

错误原因:

DBeaver 调用的 pg_dump 是 15.3,但服务器是 Postgres 16.11,pg_dump 版本低于 server 大版本时就会直接拒绝执行(version mismatch)。

解决方案:

安装 PostgreSQL 16 for Windows

下载网址:https://www.enterprisedb.com/downloads/postgres-postgresql-downloads

安装后会有类似路径:

C:\Program Files\PostgreSQL\16\bin\pg_dump.exe

打开 DBeaver

  • 数据库→ 驱动管理器

  • 找到 PostgreSQL 驱动 → 右键 → 编辑

  • 在"编辑驱动 PostgreSQL"窗口顶部,找到"本地客户端"

  • 点击"添加数据库地址",选择 PostgreSQL 16 的目录(指向 C:\Program Files\PostgreSQL\16\ )

修改数据库驱动

  • 在左侧连接树

  • 右键数据库连接

  • 编辑连接

  • 把"本地客户端"改成PostgresSQL 16

重新执行备份

确认 DBeaver 实际执行的命令变成 ...\PostgreSQL\16\bin\pg_dump.exe

相关推荐
Super 含4 小时前
Android 启动优化(五):线程、GC 与 IO 为什么会拖慢启动?
java·服务器·数据库
ltl5 小时前
向量检索引擎选型:决策树、RAG 回链与开放问题
数据库
坚持学习前端日记5 小时前
Python SQLAlchemy ORM 从0到1精通实战手册(基础到复杂高阶)
数据库·python·oracle
灯澜忆梦5 小时前
【MySQL17】进阶篇 | InnoDB引擎
数据库·mysql
anxiao_m5 小时前
2026制造业云桌面选型攻略,不同生产场景适配方案汇总
大数据·网络·数据库
许彰午6 小时前
# 数据库配拦截器,不用改BPMN
数据库
lv__pf6 小时前
redis【msb 2026金三银四redis上】
数据库·redis·缓存
布莱克6057 小时前
理解数据库聚簇索引:原理、优势与适用场景
数据库·mysql
Nturmoils8 小时前
只面对一张表:KingbaseES 超表如何简化海量时序数据管理
数据库