oracle11goracle-fdw

installing oracle_fdw without installing oracle - possible?


I want to transfer data from remote oracle database (version 11.2) to localhost postgres (version 13) database (later to remote Postgres db, too). So, I have installed PostgreSQL 13 on my own Ubuntu 20.04.3 LTS focal and try to install oracle_fdw with this instruction. So, when trying to install Instant Client Installation for Linux x86-64 (ZIP pack; as far as I know, rpm is not available for my os configuration - no yum lib in 20.04 ubuntu focal) I follow all steps (except the last - Start your application - what does it mean?)) and when trying to execute 'make' inside oracle_fdw directory get an error

fatal error: oci.h: No such file or directory

(I download the latest development version of oracle_fdw). I found an answer of developer the oracle_fdw extension that

"If you don't have oci.h, you didn't install oracle-instantclient12.2-devel-12.2.0.1.0-1.x86_64.rpm."

but I have unzipped both instantclient-basic-linux.x64-11.2.0.4.0.zip and instantclient-sdk-linux.x64-11.2.0.4.0.zip... (for compatible with remote oracle db version 11.2)

when trying to find -name oci.h I get ./sdk/include/oci.h

My question is - Am I really have to install ORACLE on my machine? or what oracle dependencies I have to install in order to use oracle_fdw extension? Maybe my installation of oracle-instantclient is not correct (how I can test the installation of oracle-instantclient? or maybe the location for installing oracle-instantclient must be specific). P.S.: I am completely new to oracle.

Thank you!


Solution

  • All you need is Oracle Instant Client.

    If your Instant Client installation is not in one of the standard paths from the RPM distributions, just set the environment variable ORACLE_HOME to the Instant Client directory (the directory that contains sdk/include), then make should succeed.