09.06.2022

Настройка линка к Oracle из PostgreSQL

  1. Устанавливаем инстант клиента Oracle
  2. Устанавливаем враппер oracle_fdw (в PostgresPro EE пакет есть непосредственно в репозитории, в противном случае надо собирать из исходников)
  3. В БД PostgreSQL создаем экстеншен:

    create extension oracle_fdw;

  4. Создаем внешний сервер, например

    create server alcor_dev8i foreign data wrapper oracle_fdw options (dbserver ‘//alcor:1521/dev8i.internal’ );

  5. Делаем маппинг пользователя (в примере пользователь xxi и в Oracle и в PostgreSQL)

    create user mapping for xxi server alcor_dev8i options (user ‘xxi’, password ‘passwd’);

  6. Даем права на использование внешнего сервера пользователь (в примере — xxi)

    grant usage on foreign server alcor_dev8i to xxi;

  7. Уже под пользователем xxi создаем внешнюю таблицу

    create foreign table skp_dev8i (iskpnum int, cskptype char(1), cskpname varchar(1024)) server alcor_dev8i options (schema ‘XXI’, table ‘SKP’);


    Столбцы мапятся по порядку, а не по имени. Непосредственно во внешней таблице на PG их можно назвать как угодно. Если пропустить один столбец, то все равно будет мапится по порядку, вне зависимости от его названия. Опции schema и table — регистрозависимы!

Реклама
Июнь 2022
Пн Вт Ср Чт Пт Сб Вс
 12345
6789101112
13141516171819
20212223242526
27282930  
Рубрики