PostgreSQL之oracle_fdw安装与使用
目的介绍
现在项目开发遇到一个问题,就是需要从PostgreSQL中访问Oracle数据库
身为渣渣猿一脸懵逼。于是乎请教了公司的数据库方面的大牛韩工。告诉我用oracle_fdw 可以实现,但是在实现安装的过程中,还是各种问题,又麻烦韩工帮我看了好久。很不好意思,现在 针对这次安装的过程进行记录下,因为部署的时候还要用到
安装oracle_fdw
1.下载oracle_fdw
点击github下载。注意,你要下载和你postgresql版本项目的安装包。我就是下载的不一样的导致这里找了好久。
注意:我这里用的是oracle_fdw-2.0.0.这个版本,之前下了个2.1.0结果不可以

2.将文件移动到pg安装路径下
下载完成将zip包解压,把【lib】文件夹的oracle_fdw.dll和【share/extension】目录下的三个文件分别复制到PostgreSQL安装目录下的【lib】文件夹和【share/extension】目录里去。
-- 创建oracle_fdw
create extension oracle_fdw;
-- 语句能查询到oracle_fdw extension,如下图
 select * from pg_available_extensions;

3.通过oracle_fdw访问oracle
--创建访问oracle的连接
create server oracle foreign data wrapper oracle_fdw options(dbserver '127.0.0.1:1521/orcl');
--授予zhazha用户访问权限
grant usage on foreign server oracle to zhazha;
--创建到oracle的映射
create user mapping for zhazha server oracle options(user 'SCOTT',password 'tiger');
--创建需要访问的oracle中对应表的结构
create foreign table emptest(
EMPNO NUMBER(4),
ENAME VARCHAR(10),
JOB VARCHAR(9),
MGR NUMBER(4),
HIREDATE DATE,
SAL NUMBER(7,2),
COMM NUMBER(7,2),
DEPTNO NUMBER(2)
) server oracle options(schema 'SCOTT',table 'EMP');
--在pg中访问oracle的表
select * from emptest;
下面粘贴我查询出的

4.其他操作
-- 查询已创建的到oracle的连接
SELECT * from pg_user_mappings;
-- 删除创建的对象
drop foreign table emptest;
drop user mapping for highgo server oracle;
drop server oracle;
参考:
[1]:https://blog.csdn.net/ljinxin/article/details/77772587
[2]:https://blog.csdn.net/pg_hgdb/article/details/81700898
PostgreSQL之oracle_fdw安装与使用的更多相关文章
- 与你相遇好幸运,Postgresql和postgis安装
		
笔者开发环境: windows 7 x86_64 一开始安装的是官网最新版 PostgreSQL 9.6 ,安装成功 之后安装PostGIS Bundle 2.2 for PostgreSQL x64 ...
 - postgresql pgagent 的安装及使用
		
pgagent 作为postgresql的一个任务调度代理,在postgresql 9.0 以前 是附带在pgadmin 包下面的,只是默认不安装,9.0之后作为了一个单独是的安装包.所以要使用pga ...
 - PostgreSQL(一) 编译安装运行
		
原创,如转发需注明出处. 多年没写博客,一直用的个人笔记软件,最近准备阅读PostgreSQL源码,故记录.(这两年PostgreSQL数据库在某些环境下是比较火的,原因想必大家都清楚.) Postg ...
 - oracle_fdw安装及使用(无法访问oracle存储过程等对象)
		
通过oracle_fdw可以访问oracle中的一些表和视图,也可以进行修改,尤其是给比较复杂的系统使用非常方便. (但不能使用oracle_fdw来访问oracle的存储过程.包.函数.序列等对象) ...
 - PostgreSQL系列一:PostgreSQL简介与安装
		
一.PostgreSQL简介 1.1 PostgreSQL概述 PostgreSQL数据库是目前功能最强大的开源数据库,支持丰富的数据类型(如JSON和JSONB类型. ...
 - PostGreSQL最简安装
		
A.先用yum安装服务器和客户端 yum install postgresql yum install postgresql-server B.初始化数据库并启动服务 service postgres ...
 - PostgreSQL&PostGIS完全安装
		
检查PostGIS.PostgreSQL.GEOS.GDAL.PROJ等各软件的版本依赖关系 http://trac.osgeo.org/postgis/wiki/UsersWikiPostgreSQ ...
 - PostgreSQL的下载安装
		
下载地址:http://www.postgres.cn/download 下载地址:http://www.filehorse.com/download-postgresql-64/ 下载地址2:htt ...
 - PostgreSQL 之 yum安装 postgis 插件
		
版本说明: CentOS7.5 + PostgreSQL 10.5 参考资源: https://www.postgresql.org/download/linux/redhat/ http://dow ...
 
随机推荐
- Jquery简单的placeholder效果
			
Jquery简单的placeholder效果 由于IE6-IE9不支持HTML5中的placeholder,所以自己依赖于Jquery简单的写了一个,供参考! 先看看效果吧!如下JSFiddle地址 ...
 - Python2.7-bisect
			
bisect 模块,对已经排好序的序列进行筛选,添加新元素,效率高,不用在插入新元素后重新排序,可以快速找到小于指定值的位置 个人想法:与 heapq 的堆可以较好的结合使用 模块方法:bisect_ ...
 - OpenGL笔记(五) 着色器渲染(以Android为例)
			
一.Android平台上下文环境的创建及初始化 1. 首先实例化Android上下文环境,即EGL的初始化. bool EGLCore::init(EGLContext sharedContext) ...
 - 微信小程序开发 [03] 事件、数据绑定和传递
			
1.事件绑定 在微信小程序中,事件的绑定依附于组件,当事件触发时,就会执行事件对应的处理函数. 我们回到前几章中的例子,将index页面调整为首页(app.json中调整pages数组元素的顺序),此 ...
 - java 读取excel内容转为JSONArray
			
需要引入的JAR <!--*.xls--> <dependency> <groupId>net.sourceforge.jexcelapi</grou ...
 - 20155226 《网络对抗》Exp 8 Web基础
			
20155226 <网络对抗>Exp 8 Web基础 实践内容 1.Web前端HTML 配置环境 正常安装.启动Apache 安装:sudo apt-get install apache2 ...
 - VS新建一个模板工程
			
新建一个模板工程的好处: 1.就不用每次都走一边新建向导了,新建工程一步到位. 2.可以往项目中每次都的输入的代码,如一些声明注释-- 效果图: 具体步骤: 1.自己先新建一个属于自己的工程. ...
 - 11.10 (上午)开课二个月零六天(ajax基础,ajax做登录)
			
test.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...
 - 07-django项目
			
1.sql注入,xss攻击,csrf, sql注入 把sql命令插入到web表单,然后提交到所在页面请求,从而达到欺骗服务器执行恶意的sql命令 解决方法:不要使用动态拼接sql,把指令和数据分开,参 ...
 - CS229笔记:生成学习算法
			
在线性回归.逻辑回归.softmax回归中,学习的结果是\(p(y|x;\theta)\),也就是给定\(x\)的条件下,\(y\)的条件概率分布,给定一个新的输入\(x\),我们求出不同输出的概率, ...