如何使用 DBeaver 从 Docker 容器备份 PostgreSQL 数据库?

如何使用 DBeaver 从 Docker 容器备份 PostgreSQL 数据库?

我的机器(运行 Ubuntu 20.04 Beta)中的 docker 容器中运行着一个 Postgres 数据库,我需要对它进行备份。

我在用着DBeaver7.0.2 来管理数据库,但当我尝试使用备份工具时,它要求我设置本机客户端。单击下拉列表时我唯一的选项是浏览,但随后它会提示我这个窗口:

窗户的照片

我不知道我需要在这里放什么;在文档中找不到任何有用的东西;而且在我在网上找到的每个教程中,本机客户端下拉列表都有其他选项,而我的情况不是这样。有人能帮忙吗?

答案1

我尝试用你的方法完成此操作,但遇到了同样的问题。不幸的是,我没有找到解决 DBeaver 问题的方法,所以这可能不是你想要的,但是这个答案得到了我所需要的:https://stackoverflow.com/a/29913462/9843399。以下是经过轻微编辑的内容:

备份数据库

docker exec -t <your-db-container> pg_dumpall -c -U postgres > dump_`date +%d-%m-%Y"_"%H_%M_%S`.sql

恢复数据库

cat your_dump.sql | docker exec -i <your-db-container> psql -U postgres

(注意:我必须重新创建我的架构,然后才能正常进行恢复。在我的版本中,您可以在 DBeaver 中执行以下操作:单击您的数据库 > 右键单击​​“架构”> 单击“创建新架构”)

相关内容