DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da SQL Magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!


Artigo da SQL Magazine 34 - Consultas remotas no PostgreSQL

Artigo da SQL Magazine - edição 34.

Capa SQl 33

Clique aqui para ler todos os artigos desta edição

Consultas remotas no PostgreSQL

 

     Como em outros artigos, sempre comento do crescimento de funcionalidades do PostgreSQL e como podemos usá-lo tranqüilamente em médias e grandes empresas. O

grande atrativo é a redução de custo, não digo somente no valor do banco de dados por ser gratuito, mas também pelo custo computacional, já que é um banco desenvolvido para rodar em máquinas realmente simples (obviamente a questão de hardware dependerá sempre da demanda por movimentação de dados). Mas sempre

existem pontos no qual temos dificuldades de nos adaptar quando falamos de DBAs ou Database Developers que vieram de bases Oracle para PostgreSQL. Estas pequenas

diferenças fazem com que haja receio na migração; um ponto é a questão de sinônimos, ou seja, eu ter a condição de acessar uma tabela que está em uma outra base dentro de sua base de dados.

     O PostgreSQL não possui até o presente momento este recurso. No entanto, conseguimos fazer adaptações que possibilitam simular o recurso de sinônimo disponível no Oracle, além de outras adaptações, como a aplicação apresentada

no final do artigo no qual foi construído um “mini replicador”. Este recurso alternativo que podemos utilizar no PostgreSQL é formado por um conjunto de funções

chamado DBLink que iremos explorar neste artigo.

 

O que é o DBLink

 

     Antes de aprendermos a utilizar o DBLink, precisamos saber o que é e qual a sua finalidade. Bem, o DBLink corresponde a um conjunto de funções que possibilita a conexão entre bancos de dados PostgreSQL a fim de acessar dados externos. Quando falamos em dados externos, estamos considerando tanto tabelas de um banco  fisicamente distante (em outro servidor) como um banco de dados local. O que queremos dizer é que o DBLink permite que acessemos remotamente uma tabela de uma determinada base de dados e realizemos a execução de queries. Sendo assim, o desempenho do DBLink vai depender principalmente da infra-estrutura da rede, já que o acesso é realizado através do protocolo TCP/IP.

     É preciso ressaltar que o DBLink serve apenas para conexão entre bancos de dados PostgreSQL. Existe uma outra solução, que é o projeto dblink-ldap, que permite executar queries entre bases de dados PostgreSQL e LDAP a partir do PostgreSQL (veja mais em http://pgfoundry.org/projects/dblink-ldap/), mas isso não é o foco deste artigo. O nosso objetivo é a comunicação entre bancos de dados no PostgreSQL.

     Uma outra característica importante é que o conjunto de funções que compõem o DBLink não é instalado por padrão juntamente com o PostgreSQL. Aqueles que desejam utilizá-lo têm que instalá-lo após o PostgreSQL. Isso é necessário porque o PostgreSQL não possui nativamente a possibilidade de acesso a tabelas de um banco de dados externo. No máximo, poderia acessar uma tabela de um outro schema, mas neste caso, a tabela ainda estaria no mesmo banco de dados. É em situações como esta que entra o DBLink.

     O processo de instalação do DBLink e o conjunto de funções que o compõem será explorado com mais detalhes na continuidade deste artigo.

 

Como instalar o DBLink

 

     Neste momento iremos descrever como realizar a instalação do DBLink nos dois principais sistemas operacionais utilizados atualmente: Linux e Windows. Vamos a cada um deles agora.

 

Instalando o DBLink no Linux

     Sempre comentei sobre a importância de instalar o PostgreSQL a partir do código fonte. Eis alguns motivos:

código otimizado para o hardware;

pode-se alterar o código fonte para personalizar o banco;

certeza de que o release que está sendo instalado é 100% estável.

     A simplicidade para a instalação do DBLink seria mais um motivo. Vamos ao procedimento para instalar esse conjunto de funções.

     Dentro da pasta do código fonte, existe a pasta “contrib”, como vemos na Figura 1. Esta pasta contém inúmeras ferramentas adicionais para o PostgreSQL cuja instalação e utilização são opcionais. Entre as principais ferramentas, encontramos o próprio DBLink e conversores de banco de dados, como o oracle2pgsql, que converte Oracle para PostgreSQL.

 

Figura 1. Listagem da estrutura de diretórios do source do PostgreSQL. 

 

     Neste artigo, estamos partindo do princípio de que o PostgreSQL foi instalado de forma compilada a partir do código fonte e que durante a instalação o leitor quer instalar o DBLink. Para isso, acesse o diretório contrib/dblink. Após isso, é só executar a compilação com o comando “make” e em seguida instalar com o comando “make install”. Esses passos estão descritos na "



ATENÇÃO! A exibição deste artigo foi interrompida.


  Este é um post disponível para assinantes MVP
Este post também está disponível para assinantes da SQL Magazine DIGITAL ou para quem possui Créditos DevMedia.  Clique aqui para saber mais!






    3 COMENTÁRIOS

[Fechar]

Este post é fechado - você precisa ter acesso ao post para incluir um comentário.



Juan Torres
Tenho as assinaturas das revistas: 1)SQL Magazine, 2)Delphi, 3)Java Magazine, 4).NET Magazine, 5)WEB Mobile e 6) Kamehá E com tudo isto que pago realmente com prazer pelas matérias e conteúdo. Mas sei lá que faz o pós venda de vocês. Gostaria de ter o privilegio, de ler o Artigo, se possivel. Obrigado Info Master Controll Juan


em 24/3/2008 11:23 - Responder

 

  Raquel Lima Guimarães
Muito bom. Também dá pra instalar o dblink executando o conteúdo do arquivo dblink.sql (para quem não marcou a opção na instalação do PostgreSql).


em 26/11/2010 14:58 - Responder
 

  Devmedia - Equipe De Moderação
Juan,
para ler este artigo basta vc se logar no site com o mesmo login e senha q possui a assinatura SQL Magazine.


em 6/12/2010 17:26 - Responder
 



Publicidade
Autor
Equipe Devmedia

Noticias/Dicas/Artigos publicados.




Space do autor
Estatísticas
Favorito:
Comentários:
Feedback:
Utilidade:
0   0
[Fechar]

Você precisa estar logado para dar um feedback.

Clique aqui para efetuar o login
[Fechar]


Este post está fechado. Saiba mais sobre a assinatura MVP!
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2012 - Todos os Direitos Reservados a web-03