如何改变Postgres寻找扩展的路径?

时间:2017-03-15 10:17:36

标签: postgis postgres-9.6

我在Windows机器上安装了Postgres,下载了PostGIS的二进制安装程序并安装了它。我只有一个版本的Postgres,所以没有可能搞乱。

使用二进制安装程序安装PostGIS很简单,也不会弄乱安装目录。它必须进入Postgres目录。

现在,当我想创建PostGIS扩展时,我收到以下错误:

ERROR:  could not open extension control file "C:/APPS/POSTGR~1/pg96/../pg96/share/postgresql/extension/postgis.control": No such file or directory
********** Error **********

ERROR: could not open extension control file "C:/APPS/POSTGR~1/pg96/../pg96/share/postgresql/extension/postgis.control": No such file or directory
SQL state: 58P01

虽然当我进入目录C:\APPS\PostgreSQL\pg96\share\extension时,我确实有postgis.control个文件。

如何让扩展程序正常工作?我检查了压缩的PostGIS二进制文件的内容,看起来好像结构保存完好,并且在安装过程中通过二进制安装程序将所有文件复制到相应的目录中。

1 个答案:

答案 0 :(得分:24)

对于最新版本的postgres(PostgreSQL-9.6.3-1-win64-bigsql.exe)和postgis(postgis-bundle-pg96x64-setup-2.3.2-1.exe),情况似乎仍然相同。我复制了文件,直到所有路径都可以解决:

  1. C:\PostgreSQL\pg96\share\extensionC:\PostgreSQL\pg96\share\postgresql\extension
  2. 的所有内容
  3. postgis_topology-2.3.dllpostgis-2.3.dllrtpostgis-2.3.dlladdress_standardizer-2.3.dllogr_fdw.dllC:\PostgreSQL\pg96\libC:\PostgreSQL\pg96\lib\postgresql