{"id":1527,"date":"2016-08-23T14:36:03","date_gmt":"2016-08-23T11:36:03","guid":{"rendered":"http:\/\/www.fatihacar.com\/blog\/?p=1527"},"modified":"2016-10-13T10:28:54","modified_gmt":"2016-10-13T07:28:54","slug":"create-dblink-from-oracle-to-postgresql-database","status":"publish","type":"post","link":"http:\/\/www.fatihacar.com\/blog\/create-dblink-from-oracle-to-postgresql-database\/","title":{"rendered":"Create Dblink From Oracle to PostgreSQL Database"},"content":{"rendered":"<p>Since fetching data from PostgreSQL database to Oracle database, you can create database link between two database systems. For that you can apply below operations.<\/p>\n<p><strong>Test Systems<\/strong><\/p>\n<blockquote><p>PostgreSQL DB<br \/>\nIP : 192.168.10.10<br \/>\nOS : Centos 7 x64<br \/>\nService : postgresql.service<\/p>\n<p>Oracle DB<br \/>\nIP : 192.168.10.20<br \/>\nOS : OEL 6 x64<\/p><\/blockquote>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/www.fatihacar.com\/blog\/resimler\/dblinkoracletopostgresql.jpg\" alt=\"dblinkoracletopostgresql\" width=\"654\" height=\"335\" class=\"aligncenter size-full wp-image-1622\" srcset=\"http:\/\/www.fatihacar.com\/blog\/resimler\/dblinkoracletopostgresql.jpg 654w, http:\/\/www.fatihacar.com\/blog\/resimler\/dblinkoracletopostgresql-300x154.jpg 300w\" sizes=\"auto, (max-width: 654px) 100vw, 654px\" \/><\/p>\n<p><strong>PostgreSQL Side<\/strong><\/p>\n<blockquote><p>psql# create user dblinkuser encrypted password &#8216;dblinkuserpass&#8217;;<\/p>\n<p>psql# grant usage on schema &#8220;testschema&#8221; to dblinkuser;<\/p>\n<p>psql# grant select on &#8220;testschema&#8221;.tbl_test to dblinkuser;<\/p>\n<p>Add new line to pg_hba.conf<\/p>\n<p>vi \/pgdir\/data\/pg_hba.conf<\/p>\n<p>host    testdb    dblinkuser\t192.168.10.20\/32           md5<\/p>\n<p>systemctl reload postgresql.service<\/p><\/blockquote>\n<p><strong>Oracle Side<\/strong><\/p>\n<blockquote><p>yum install postgresql-odbc<\/p>\n<p>vi \/etc\/odbc.ini<\/p>\n<p>[PG]<br \/>\nDescription = PG<br \/>\nDriver = \/usr\/lib64\/psqlodbc.so<br \/>\nServerName = 192.168.10.10<br \/>\nUsername = dblinkuser<br \/>\nPassword = dblinkuserpass<br \/>\nPort = 5432<br \/>\nDatabase = testdb<br \/>\n[Default]<br \/>\nDriver = \/usr\/lib64\/liboplodbcS.so<\/p>\n<p>vi $ORACLE_HOME\/hs\/admin\/initPG.ora<\/p>\n<p># This is a sample agent init file that contains the HS parameters that are<br \/>\n# needed for the Database Gateway for ODBC<\/p>\n<p>#<br \/>\n# HS init parameters<br \/>\n#<br \/>\nHS_FDS_CONNECT_INFO = PG<br \/>\nHS_FDS_TRACE_LEVEL = 0<br \/>\nHS_FDS_SHAREABLE_NAME = \/usr\/lib64\/psqlodbc.so<br \/>\nHS_LANGUAGE = AMERICAN_AMERICA.WE8ISO8859P9<br \/>\n#<br \/>\n# ODBC specific environment variables<br \/>\n#<br \/>\nset ODBCINI=\/etc\/odbc.ini<\/p>\n<p>#<br \/>\n# ODBC specific environment variables<br \/>\n#<\/p>\n<p>#<br \/>\n# Environment variables required for the non-Oracle system<br \/>\n#<br \/>\n#set <envvar>=<value><\/p>\n<p>vi $ORACLE_HOME\/network\/admin\/tnsnames.ora<\/p>\n<p>PG =<br \/>\n  (DESCRIPTION =<br \/>\n    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.20)(PORT = 1521))<br \/>\n    (CONNECT_DATA =<br \/>\n      (SID = PG)<br \/>\n    )<br \/>\n        (HS = OK)<br \/>\n  )<\/p>\n<p>vi $GRID_HOME\/network\/admin\/listener.ora<\/p>\n<p>SID_LIST_LISTENER =<br \/>\n  (SID_LIST =<br \/>\n        (SID_DESC =<br \/>\n         (SID_NAME=PG)<br \/>\n         (ORACLE_HOME=\/oracle\/db\/11.2.0\/db_home)<br \/>\n         (PROGRAM=dg4odbc)<br \/>\n        )<br \/>\n  )<\/p>\n<p>lsnrctl reload<\/p>\n<p>Listener reload can be adacuate to apply changes;but, sometimes not.<\/p>\n<p>lsnrctl stop<br \/>\nlsnrctl start<br \/>\nlsnrctl status<\/p><\/blockquote>\n<p><strong>Create Database Link on Oracle<\/strong><\/p>\n<blockquote><p>CREATE DATABASE LINK PG<br \/>\n CONNECT TO &#8220;dblinkuser&#8221;<br \/>\n IDENTIFIED BY &#8216;dblinkuserpass&#8217;<br \/>\n USING &#8216;PG&#8217;;<\/p><\/blockquote>\n<p><strong>Test <\/strong><\/p>\n<blockquote><p>select * from &#8220;testschema&#8221;.&#8221;tbl_test&#8221;@PG<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Since fetching data from PostgreSQL database to Oracle database, you can create database link between two database systems. For that you can apply below operations. Test Systems PostgreSQL DB IP : 192.168.10.10 OS : Centos 7 x64 Service : postgresql.service Oracle DB IP : 192.168.10.20 OS : OEL 6 x64 PostgreSQL Side psql# create user&#8230;<\/p>\n","protected":false},"author":37,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":true,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[9,10],"tags":[14,32,88],"class_list":["post-1527","post","type-post","status-publish","format-standard","hentry","category-administration","category-administration-postgresql","tag-database-administration","tag-oracle-administration","tag-postgresql-administration"],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p39NFI-oD","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/posts\/1527","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/users\/37"}],"replies":[{"embeddable":true,"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/comments?post=1527"}],"version-history":[{"count":6,"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/posts\/1527\/revisions"}],"predecessor-version":[{"id":1623,"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/posts\/1527\/revisions\/1623"}],"wp:attachment":[{"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/media?parent=1527"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/categories?post=1527"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.fatihacar.com\/blog\/wp-json\/wp\/v2\/tags?post=1527"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}