如何在Postgresql上为DBLINK设置默认连接参数

How to set default connection parameters for DBLINK on Postgresql

我在 Ubuntu 上安装了 Postgresql 9.5,需要使用 dblink。但是,我使用的是端口 5433(在 postgresql.conf 中设置),但 dblink 始终默认为端口 5432。我知道您可以在 dblink 参数中指定端口,但是当我想使用我的默认端口时,这是巨大的冗余实例.

有一种方法可以让 dblink 默认使用特定端口。我知道这一点是因为我过去曾成功地改变过它——但我一辈子都记不起我是怎么做到的。我试过设置 PGPORT 环境变量并重新启动。我试过重新创建扩展。我试过重新安装 postgresql-contrib。 None 这其中有所作为。我有一种感觉,我编辑了一些晦涩的文件,但不记得是什么、在哪里或如何编辑的。

关于如何更改 dblink 的默认连接参数有什么建议吗?

知道了!

它是通过更改环境变量来完成的,但这不是 Windows 用户会理解的环境变量(因此更改 /etc/environment 不起作用,也没有任何全局环境变量的其他正常 nix 样式设置)。

要更改 dblink 的默认连接参数,您需要将 PGPORT=5433(在我的例子中)添加到 /etc/postgresql/9.5/main/environment。 Ubuntu 安装 Postgres 的烦人之处在于我至少有所有这些文件的三个版本(包括 pg_HBA.conf 等等)。 /etc/... 中的那些在这种情况下大多不会分开阅读。它是我的数据目录中的那些(由于 space 原因,它位于非默认位置)。因此,对于遇到相同问题的其他人,请检查 /etc、/var、/your-data-directory。