没有终端访问权限的postgresql pod pg_dump,因为它是prod env

问题描述

所以我想获取在pod(openshift)上运行的pg_dump of postgresql。我正在考虑创建一个cron作业,该作业将ssh放入postgresql pod并运行pg_dump命令。但是cronjob实际上创建了它自己的pod并在它自己的pod中执行命令。任何想法我们怎么能创建.bak文件/备份我们无法访问其终端的postgresql

解决方法

感谢@a_horse_with_no_name,它有效。我在dev namespace中创建了一个虚拟的Postgresql Pod,可以在其中访问终端并执行了pg_dump命令,如下所示 pg_dump --username=username --host=host --port=port postgres > pguat.bak

它创建了pguat.bak文件。使用以下命令将其还原到新的pgsql pod。

psql --username=username --host=host --port=port postgres < pguat.bak