Postgresql расширение oracle_fdw для работы с базами данных Oracle.

Данная инстркуция рассматривает установку на ОС Astra Linux SE 1.7.3

Для установки потребуется Postgres-like СУБД. Мы рассмотрим установку расширения в СУБД Tantor SE 14 (установка доступна по инструкции).

1. Устанавливаем СУБД.

2. Прописываем в sources.list

# Базовый репозиторий
deb https://dl.astralinux.ru/astra/stable/1.7_x86-64/repository-base/     1.7_x86-64 main
BASH

3. Устанавливаем инструмент компиляции

apt update

apt install build-essential
BASH

5. Создаем папку и переходим в нее

mkdir /opt/git

cd /opt/git
BASH

6. Скачиваем исходники oracle_fdw

git clone https://github.com/laurenz/oracle_fdw.git
BASH

7. Создадим еще одну папку и перейдем в нее:

mkdir /opt/oracle

cd /opt/oracle
BASH

8. Заходим на страницу "Oracle Instant Client Downloads for Linux x86-64 (64-bit)":

 https://www.oracle.com/cis/database/technologies/instant-client/linux-x86-64-downloads.html

и скачиваем в папку /opt/oracle два файла (basic и sdk):

instantclient-basic-linux.x64-19.18.0.0.0dbru.zip

и

instantclient-sdk-linux.x64-19.18.0.0.0dbru.zip

9. Распаковываем:

unzip instantclient-basic-linux.x64-19.18.0.0.0dbru.zip

unzip instantclient-sdk-linux.x64-19.18.0.0.0dbru.zip
BASH

появится папка /opt/oracle/instantclient_19_18

10. Далее по инструкции от нас требуется установить libaio. Ставим libaio1

apt install libaio1
BASH

11. Выполняем:

sudo sh -c "echo /opt/oracle/instantclient_19_18 > /etc/ld.so.conf.d/oracle-instantclient.conf"

sudo ldconfig

export LD_LIBRARY_PATH=/opt/oracle/instantclient_19_18:$LD_LIBRARY_PATH

export PATH=/opt/oracle/instantclient_19_18:$PATH

export ORACLE_HOME=/opt/oracle/instantclient_19_18
BASH

12. Прописываем путь к pg_config

export PATH=/opt/tantor/db/14/bin:$PATH
BASH

13. Переходим и выполняем:

cd /opt/git/oracle_fdw

make

make install
BASH

14. Заходим в базу и создаем расширение

su - postgres

psql

postgres=# create extension oracle_fdw;
CREATE EXTENSION

\q
BASH


That's all folks!