ubuntu22.04.1 安装pg12的插件oracle_fdw,用于pg连接oracle

一、前期准备:
1.安装pg数据库(此步骤略)
2.执行如下指令,安装pg数据库需要用到的开发库,否则后期编译会报找不到 “postgres.h”文件
sudo apt-get install postgresql-server-dev-12
二、开始安装oracle_fdw插件
1.下载两个依赖包
下载地址:oracle 依赖包下载地址:https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html
instantclient-sdk-linux.x64-21.8.0.0.0dbru.zip
instantclient-basic-linux.x64-21.8.0.0.0dbru.zip
2.解压压缩包
$sudo unzip -d  /usr/lib/postgresql/12 instantclient-sdk-linux.x64-21.8.0.0.0dbru.zip
$sudo unzip -d  /usr/lib/postgresql/12 instantclient-basic-linux.x64-21.8.0.0.0dbru.zip
3.配置环境变量
$sudo  vim ~/.bashrc 在末尾输入
$export ORACLE_HOME=/usr/lib/postgresql/12/instantclient_21_8
$export PG_HOME=/usr/lib/postgresql/12
$export LD_LIBRARY_PATH=$PG_HOME/lib:$ORACLE_HOME:$LD_LIBRARY_PATH
$export PATH=$PG_HOME/bin:$PATH
4.环境变量生效设置
$source ~/.bashrc
5.查看环境变量设置是否存在
$  export
6.下载ORACLE_FDW插件
下载地址:https://github.com/laurenz/oracle_fdw/tags
解压文件:sudo unzip -d  /usr/lib/postgresql/12 oracle_fdw-ORACLE_FDW_2_4_0.zip
7.开始编译和安装
$/usr/lib/postgresql/12/oracle_fdw-ORACLE_FDW_2_4_0$ make && make install
(1)编译过程遇到可能遇到错误,例如/bin/sh: 1: gcc: not found
执行该语句:sudo apt install build-essential
8.在pgadmin中执行创建插件命令 create extension oracle_fdw;
出现类似问题 ERROR:  could not load library "/usr/lib/postgresql/12/lib/oracle_fdw.so": libclntsh.so.21.1: cannot
解决方法:sudo vim/etc/ld.so.conf.d/oracle-x86_64.conf ,添加完成后,执行sudo ldconfig,使之动态库链接生效。否则创建插件环节失败
9.再次在pgadmin中执行创建插件命令 create extension oracle_fdw;
提示:Connection to the server has been lost.CREATE EXTENSION 在Extensions中出现了oracle_fdw,证明成功安装了该插件

10.注意连接oracle数据库的时候可能包no listener,此时要注意listener.ora文件中host为计算机名,否则有问题
参考文章:https://www.modb.pro/db/431499
         https://my.oschina.net/postgresqlchina/blog/5346526

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值