我在创建oracle_fdw时遇到了问题。
我已经复制oracle_fdw.dll到postgres lib文件夹*.sql文件和控制文件共享/扩展名
现在,当我连接到psql与超级管理员用户&执行一个查询
create extension oracle_fdw;
我正在得到响应
ERROR: could not load library "D:/postgresdb/lib/oracle_fdw.dll": The specified procedure could not be found.
从错误来看,postGreSQL安装目录的lib文件夹中没有oracle_fdw库
您可以从https://github.com/laurenz/oracle_fdw/releases/下载Oracle fdw扩展/或库文件-请下载适合您系统环境的文件(例如:32位windows/64位)
解压下载的。zip文件。
- 将oracle_fdw-1.4.0-pg95-win64lib文件夹中的oracle_fdw.dll拷贝到Program FilesPostgreSQL9.5lib dir中,2.将oracle_fdw-1.4.0-pg95-win64shareextension中的所有文件复制到Program files PostgreSQL9.5shareextension
现在重新启动postGreSQL服务器并尝试。
注意:始终下载并使用兼容版本的库;例如:PostgreSQL 9.5版本,你应该下载相同版本的oracle_fdw zip.
只是有同样的问题,所以这是我所做的解决它。不确定是否需要所有的步骤,因为我一直在尝试,直到它工作。
下载:
即时客户端包
即时客户端包- SQL*Plus
即时客户端包- ODBC
From oracle (http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html)解压到一个文件夹(c:oracle)
在该文件夹运行odbc_install
添加文件夹到PATH变量(系统属性-环境变量)
重启postgresql服务器
之后它工作了。还要注意,您需要使用与服务器相同的版本(x86、x64)。