pad*_*man 7 postgresql homebrew postgis
我在OS X Mountain Lion上升级并随后重新安装了PostGIS和PostgreSQL.尝试使用PostGIS扩展时,收到以下错误:
ERROR: could not open extension control file "/usr/local/Cellar/postgresql/
9.2.3/share/postgresql/extension/postgis.control": No such file or directory
Run Code Online (Sandbox Code Playgroud)
似乎PostGIS(和PostgreSQL以及??)仍然在/postgresql/9.2.3/目录中而不是在/postgresql/9.2.4/目录中查找所需的文件.我使用Homebrew通过以下命令删除所有以前版本的PostgreSQL:
brew remove --force postgresql
Run Code Online (Sandbox Code Playgroud)
有人可以指出我正确的方向为什么会出现这个问题?(某处或某处必须有一个挥之不去的配置文件?)
任何帮助都感激不尽.
Emp*_*act 12
问题是您在代码库的9.2.3版上运行了psql服务器.要测试这个,请加载一个psql控制台,你应该在顶部看到这个:
psql (9.2.4, server 9.2.3)
Type "help" for help.
Run Code Online (Sandbox Code Playgroud)
请注意上面的"服务器9.2.3"注释.如果您运行的是正确版本的服务器,则会看到以下内容:
psql (9.2.4)
Type "help" for help.
Run Code Online (Sandbox Code Playgroud)
要解决此问题,只需按照brew info postgresql卸载和加载LaunchAgent 的说明进行操作- 这将使用新代码重新启动服务器:
To reload postgresql after an upgrade:
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.postgresql.plist
Run Code Online (Sandbox Code Playgroud)
removeHomebrew 的设计通常是在或期间保留用户可编辑的配置文件和生成的数据文件upgrade,因此它们在版本之间得以保留。听起来你是对的,它是一个留在某处的配置文件。
. 中没有 postgres 的全局配置文件/usr/local/etc。所以它可能是用户数据文件。您是否使用以前版本的 postgres 创建了任何数据库并在其中使用了 postgis 扩展?这些数据库中的配置文件可能引用旧的 postgres 版本。这些数据库通常位于/usr/local/var/postgres. 查看下面的 .conf 文件,看看是否可以编辑它们来修复扩展路径或重新创建数据库。
| 归档时间: |
|
| 查看次数: |
4317 次 |
| 最近记录: |