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

前端之家收集整理的这篇文章主要介绍了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左侧的ForeignDataWrappers结点看到创建的用户映射

最后,在sqlShell(psql)就能查到



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

原文链接:https://www.f2er.com/oracle/207792.html

猜你在找的Oracle相关文章