oracle_fdw的使用:从PostgreSQL中访问Oracle数据库,实现数据库数据的同步

建议在sql shell命令窗口操作,因为这样可以知道语句执行报错情况

在这篇详解PostgreSQL成功安装oracle_fdw安装好oracle_fdw后

我们开始学习oracle_fdw的使用,以实现oracle的数据同步到postgresql。

假设我们把oracle的dept表同步到PostgreSQL中,表数据及表结构如下两图


过程分为5步,代码如下:


①
/*oradb为外部服务器名(可自定义名称);
oradatabase为需要访问的oracle数据库名,或为在tnsnames.org配置的数据库实例名 */
create server oradb foreign data wrapper oracle_fdw 
    options(dbserver 'oradatabase');
② 
/*postgres为Postgre数据库用户*/ 
grant usage on foreign server oradb to postgres;
③
/*postgres为Postgre数据库用户orauser为被访问的oracle数据库用户名,orapwd为密码*/
create user mapping for postgres server oradb 
    options(user orauser', password 'orapwd');
④
 /*oratab为在Postgres数据库显示的外部表名(可自定义)
ORAUSER为oracle数据库用户名,DEPT为需要访问的Oracle数据库的表,两者均要大写*/ 
create foreign table oratab ( deptno integer, 
    dname character varying(20), 
    loc character varying(20)) server oradb options(schema 'ORAUSER', table 'DEPT');
⑤ select * from oratab;


经过后,就可在pgadmin左侧的Foreign Data Wrappers结点看到创建的用户映射

最后,在SQL Shell(psql)就能查到



有任何问题欢迎讨论交流~

  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值