PostgreSQL 15安装使用Oracle_FDW

下载插件

官方地址:http://pgxn.org/dist/oracle_fdw/ ,根据PostgreSQL版本选择

下载oracle客户端

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

需要下载Basic Package,Tools - optional packages,SDK Package,SQL*Plus Package,ODBC Package

共同安装客户端

修改centos用户环境变量

export PATH

export MYSQL_HOME=/app/mysql
export ORACLE_HOME=/app/instantclient_21_8
export ANACONDA_HOME=/app/anaconda3
export PGHOME=/app/postgresql
export PGUSER=postgres
export PGPORT=5432
export PGDATA=/app/postgresql/data
export PGLOG=/app/postgresql/log/postgresql.log
# PGHOST 需要与unix_socket_directories对应
export PGHOST=/app/postgresql/data/tmp
export PATH=$ANACONDA_HOME/bin:$MYSQL_HOME/bin:$PGHOME/bin:$PATH:$HOME/bin:$ORACLE_HOME
export LD_LIBRARY_PATH=$ANACONDA_HOME/lib:$MYSQL_HOME/lib:$PGHOME/lib:$ORACLE_HOME:$LD_LIBRARY_PATH
export TNS_ADMIN=$ORACLE_HOME/network/admin
export OCI_INC_DIR=$ORACLE_HOME/sdk/include

安装插件并重新启动数据库

make USE_PGXS=1
make USE_PGXS=1 install

ln -s /app/instantclient_21_8/libclntsh.so.21.1 /app/postgresql/lib/

/app/postgresql/bin/pg_ctl -D /app/postgresql/data -l /app/postgresql/log/logfile restart

使用

# 哪个库用 哪个库执行
create extension oracle_fdw;

CREATE SERVER dams_server FOREIGN DATA WRAPPER oracle_fdw OPTIONS (dbserver '11.0.9.14:1521/a');
CREATE USER MAPPING FOR PUBLIC SERVER dams_server OPTIONS (username 'a', password 'a');
CREATE USER MAPPING FOR PUBLIC SERVER dams_server OPTIONS (user 'a', password 'a');
create foreign table dataaly.a(a varchar(40),b varchar(40),c varchar(10)) server dams_server options(schema 'a',table 'a');

你可能感兴趣的:(PostgreSQL,postgresql,oracle,数据库)