Veremos a utilização da extensão "dblink" do PostgreSQL neste artigo. O "dblink" é usado quando precisamos acessar tabelas e visualizações de outros bancos de dados em uma sessão de banco de dados. Portanto, se tivermos dois bancos de dados aos quais queremos ser vinculados, um banco de dados deve ser adicionado à extensão dblink e chamado no outro. Veremos a configuração da extensão do DBLink em nossos bancos de dados e vinculando dois bancos de dados usando essa extensão no ambiente PostgreSQL. Depois disso, testaremos o link executando algumas consultas no banco de dados.
A sintaxe para dblink no PostgreSQL:
A sintaxe para usar o dblink no PostgreSQL é mencionada abaixo:
# dblink ("Nome da conexão", "SQL Query");A consulta dblink leva dois parâmetros; No primeiro parâmetro, temos que declarar o nome da conexão em que o dblink é criado. No segundo parâmetro, temos que escrever qualquer consulta para executar os dados presentes nesse link. A extensão DBLink é frequentemente usada com a consulta "Selecionar", embora outras consultas possam ser usadas para recuperar ou alterar dados na conexão DBlink.
Agora que estamos familiarizados com o funcionamento da extensão DBLink no Postgres, podemos esperar implementar esse conceito no ambiente PostGresql.
Criando conexão "dblink" entre dois bancos de dados no PostgreSQL:
Como sabemos, o PostgreSQL permite que dois bancos de dados sejam conectados remotamente através da extensão "dblink", mas existem vários protocolos que precisam ser seguidos para que isso seja executado com sucesso. Agora discutiremos esses protocolos e forneceremos um guia detalhado para executar este conceito.
Primeiro, devemos estar conectados como superusuário no ambiente PostgreSQL. Para fazer um superusuário, podemos usar a seguinte consulta:
# Crie o usuário “insira o nome do usuário” SuperUser;E se você quiser um superusuário com uma senha, pode usar esta consulta:
# Crie o usuário "Insira o nome do usuário" SuperUser com senha 'senha_string';Em seguida, criaremos dois bancos de dados no ambiente PostGresql que usaremos para acesso pela extensão "dblink".
# Criar banco de dados DB1;A consulta acima criará um banco de dados chamado "DB1" em nosso ambiente.
# Criar banco de dados DB2;A consulta acima criará um segundo banco de dados chamado "DB2" em nosso ambiente.
Também podemos visualizar e acessar esses bancos de dados olhando para o menu lateral esquerdo da janela PGadmin. Quando criamos com sucesso dois bancos de dados, construiremos uma tabela em nosso banco de dados “DB1” e o preenchemos com valores que usaremos no segundo banco de dados.
Crie funcionário da tabelaA sintaxe acima ajudará a criar uma tabela e inserir valores nas tabelas em nosso banco de dados "DB1".
Aplicando extensão "dblink" ao banco de dados:
Criamos uma tabela e inserimos valores nela. Agora vamos nos mudar para o nosso segundo banco de dados, "DB2", no qual chamaremos esta tabela. Aqui podemos esperar a aplicação de uma extensão "dblink" em nosso banco de dados. Usaremos a seguinte consulta para fazer isso:
# Crie dblink de extensão;Isso permitirá que o banco de dados use a extensão PostGresql "dblink" para acessar os recursos do banco de dados. Antes de avançarmos, devemos verificar a conexão entre nossos bancos de dados; Para isso, escreveremos a seguinte consulta:
# Selecione dblink_connect ('host = localhost user = aqsayasin senha = 12345 dbname = db1');Na consulta acima, o nome do usuário e senha mudará de acordo com o nome e a senha do superusor que você configurou anteriormente, juntamente com o nome do banco de dados com o qual você deseja verificar a conexão com a conexão com. Quando isso for classificado, execute a consulta e, se a conexão for bem -sucedida, ela fornecerá esta saída:
Caso falhe ou jogue uma exceção, você deve verificar novamente a consulta para o nome de usuário e a senha corretos.
Dblink com invólucros de dados estranhos:
Os invólucros de dados estrangeiros podem definir distintamente um servidor estrangeiro remoto para acessar outros dados. Depois disso, podemos seguir em direção à criação de um invólucro de dados estrangeiros em nosso banco de dados. Podemos criar um invólucro de dados estrangeiros por dois métodos e acessar o banco de dados com o DBLink usando invólucros de dados estranhos no PostgreSQL:
Crie invólucros de dados estranhos usando a consulta:
O invólucro de dados estrangeiros será criado usando o comando Anexado abaixo dessa maneira.
Crie invólucros de dados estranhos usando a opção de menu do navegador:
No lado esquerdo da janela Pgadmin, podemos encontrar o menu do navegador exibindo todas as entidades, incluindo servidores, bancos de dados e usuários. Neste menu, temos que localizar nosso banco de dados em que temos que criar o invólucro de dados estrangeiros.
Depois de selecionar o banco de dados, temos que localizar a opção rotulada como “Wrappers de dados estranhos” e clique com o botão direito do mouse nele.
Selecione as opções "Criar" e "Wrapper de dados estranhos…", respectivamente.
Isso abrirá uma janela com o título "Crie - Wrapper de dados estrangeiros“.
Preencha o nome do invólucro de dados estrangeiros e escolha o usuário apropriado. Agora você pode armazenar as informações e criar um invólucro de dados estrangeiros.
Depois de criar um invólucro de dados estranho, temos que criar um servidor para ele. Para isso, podemos usar uma consulta "Criar servidor", conforme declarado abaixo:
# Criar servidor servidor1 Opções FD1 de Wrapper FD1 (hostaddr 'ip_address', dbname 'db1');Ou podemos simplesmente localizar nosso invólucro de dados estranhos no menu do navegador no lado esquerdo da janela e clicar com o botão direito do mouse, selecione a opção "Criar" e ir para a opção "Servidor estrangeiro ...".
Isso o levará à janela "Criar - servidor estrangeiro".
Nomeie o servidor, selecione o usuário da lista nos campos de entrada e salve -os para adicionar um servidor estrangeiro ao seu wrapper de dados estrangeiros. Como criamos com sucesso um servidor estrangeiro, precisamos criar um mapa para o super usuário que criamos anteriormente. Para esta tarefa, usaremos a consulta declarada:
# Crie o mapeamento de usuários para as opções do servidor AQSayasin (Aqsayasin 'do usuário, senha' 12345 ');O nome de usuário deve ser preciso para que isso seja executado e o outro usuário que estamos mapeando pode mudar de acordo com a situação. Se isso for tratado corretamente, a saída será a seguinte:
O resultado acima confirma que criamos um mapeamento de usuários.
Acesse bancos de dados com dblink usando o Wrapper de dados estranhos no PostgreSQL:
Como você formou com sucesso um mapeamento de usuário. Agora podemos usar o dblink deste servidor para acessar nosso primeiro banco de dados. Exibiremos o "EMP_ID" e o "EMP_NAME" da tabela que criamos em nosso primeiro banco de dados usando esta consulta:
# Selecione * FROM DBLINK ('Servidor1', 'Selecione EMP_ID, EMP_NAME FROM FUNCIONAMENTO')Esta consulta após a execução exibirá o conteúdo indicado da tabela, como mostrado abaixo:
Como você pode ver, acessamos com sucesso um banco de dados de outro banco de dados e exibimos o conteúdo de uma tabela usando a extensão dblink no PostgreSQL.
Conclusão:
Neste tutorial, deliberamos a sintaxe e o uso da extensão dblink no PostgreSQL. Depois disso, analisamos a implementação da extensão DBLink no ambiente PostgreSQL. Criamos uma conexão entre dois bancos de dados em nosso ambiente e depois usamos essa conexão para exibir dados do outro banco de dados neste artigo.