0

我在创建 oracle_fdw 时遇到问题。

我已将 oracle_fdw.dll 复制到 postgres lib 文件夹 * .sql 文件和控制文件都复制到 shrared/extension

现在,当我使用超级管理员用户连接到 psql 并进行查询时

 create extension oracle_fdw;

我得到回应

ERROR:  could not load library "D:/postgresdb/lib/oracle_fdw.dll": The specified procedure could not be found.
4

2 回答 2

1

从错误来看,postGreSQL 安装目录的 lib 文件夹中似乎没有 oracle_fdw 库。

您可以从https://github.com/laurenz/oracle_fdw/releases/下载 Oracle fdw 扩展/或库文件 - 请下载适合您系统环境的文件(例如:32 位 windows/64 位)。

解压下载的 .zip 文件。

  1. 将 oracle_fdw.dll 从 \oracle_fdw-1.4.0-pg95-win64\lib 文件夹复制到 \Program Files\PostgreSQL\9.5\lib 目录 & 2.从 oracle_fdw-1.4.0-pg95-win64\share\ 复制所有文件扩展至 \Program Files\PostgreSQL\9.5\share\extension

现在重新启动 postGreSQL 服务器并尝试。

注意:始终下载并使用兼容版本的库;例如:PostgreSQL 9.5 版本你应该下载相同版本的 oracle_fdw zip。

于 2016-10-07T09:41:27.070 回答
0

刚刚遇到同样的问题,所以这就是我为解决它所做的。不确定是否需要所有步骤,因为我一直在尝试直到它起作用。

下载:

即时客户端包

即时客户端包 - SQL*Plus

即时客户端包 - ODBC

来自甲骨文(http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

将所有内容解压缩到一个文件夹 (c:\oracle)

在该文件夹中运行 odbc_install

将文件夹添加到 PATH 变量(系统属性 - 环境变量)

重新启动 postgresql 服务器

之后它起作用了。另请注意,您需要与服务器相同的版本(x86、x64)。

希望这可以帮助。

于 2016-08-31T07:54:01.090 回答