Pular para o conteúdo

Integrando PostgreSQL e Oracle com Foreign Data Wrapper – Guia prático de integração

Integrando PostgreSQL e Oracle com Foreign Data Wrapper

Em um mundo crescentemente interconectado, as organizações frequentemente encontram a necessidade de conectar diferentes sistemas de gerenciamento de banco de dados (SGBDs). Este artigo aborda uma técnica eficaz para integrar PostgreSQL e Oracle usando o Foreign Data Wrapper (FDW) do PostgreSQL.

Introdução ao FDW

O Foreign Data Wrapper (FDW) foi introduzido no PostgreSQL 9.1, proporcionando uma maneira de acessar dados em fontes externas diretamente de um banco de dados PostgreSQL. Para o nosso propósito de conectar PostgreSQL e Oracle, usaremos um FDW específico chamado oracle_fdw.

Passo a passo para a Integração

Instalação:
Configuração no PostgreSQL

Ative o oracle_fdw:

CREATE EXTENSION oracle_fdw;

CREATE EXTENSION

Crie um servidor estrangeiro:

CREATE SERVER oracle_server 
FOREIGN DATA WRAPPER oracle_fdw 
OPTIONS (dbserver 'OracleDBHostname:Port/SID');

CREATE SERVER

Defina um mapeamento de usuário

CREATE USER MAPPING FOR postgres 
SERVER oracle_server 
OPTIONS (user 'OracleUsername', password 'OraclePassword');

CREATE USER MAPPING

Importe a tabela estrangeira

CREATE FOREIGN TABLE pg_oracle_table (
  column1 type1,
  column2 type2,
  ...
) SERVER oracle_server 
OPTIONS (schema 'OracleSchema', table 'oracle_table');

CREATE FOREIGN TABLE

Consultando os Dados

Uma vez configurado, você pode tratar a tabela pg_oracle_table quase como qualquer outra tabela no PostgreSQL:

SELECT * FROM pg_oracle_table LIMIT 5;

 column1 | column2
---------+---------
 value1  | valueA
 value2  | valueB
 value3  | valueC
 value4  | valueD
 value5  | valueE

(5 rows)

Exemplo prático

Suponha que no Oracle você tenha uma tabela employees com colunas id, name e salary. Após executar a configuração acima, você pode consultar os cinco empregados com os maiores salários diretamente do PostgreSQL:

SELECT name, salary FROM pg_oracle_table 
ORDER BY salary DESC 
LIMIT 5;

Considerações e Dicas

  • Garanta que as variáveis de ambiente ORACLE_HOME e LD_LIBRARY_PATH estejam corretamente configuradas.
  • A integração utiliza a autenticação e autorização do Oracle. Portanto, assegure-se de que o usuário Oracle tenha as devidas permissões.
  • O oracle_fdw oferece várias opções que podem otimizar a performance.

Conclusão

O Foreign Data Wrapper é uma ferramenta poderosa do PostgreSQL que facilita a integração com outros sistemas de banco de dados, como o Oracle.

Espero que esse artigo o ajude a atender as suas necessidades de conexão entre o Postgre SQL e o Oracle.

Abs

Referências

  1. PostgreSQL Official Documentation. “CREATE FOREIGN DATA WRAPPER”.
  2. Laurenz Albe. “oracle_fdw – Foreign Data Wrapper for Oracle”. GitHub Repository.
Giovano Silva

Giovano Silva

Giovano Silva é um profissional com mais de 10 anos de experiência em tecnologias Oracle, com ênfase em PL/SQL. Ele adora escrever sobre soluções para problemas comuns enfrentados por profissionais Oracle em seu dia a dia. Seu objetivo é compartilhar conhecimento, simplificar conceitos complexos e ajudar a comunidade Oracle a crescer coletivamente.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

plugins premium WordPress