Como configurar o Driver ODBC PostgreSQL e JDBC
Apesar de ser uma rotina comum, muitos usuários ainda possuem dúvidas sobre como configurar o Driver ODBC PostgreSQL e JDBC.
Hoje vamos demonstrar de maneira simples e prática como configurar estes drivers, ODBC em Windows e JDBC em Java, com o Cloud PostgreSQL da SaveinCloud.
Como instalar e configurar o driver JDBC no PostgreSQL
Para conectar o Tomcat com o PostgreSQL, é necessário acessar a biblioteca JDBC do Java. Para isso, faça o download do driver diretamente no site do PostgreSQL ou procure por “PostgreSQL JDBC driver” no Google. Certifique-se de baixar do site oficial do PostgreSQL.
Conexão JDBC (Java) com PostgreSQL
Nós utilizamos a versão mais recente do Tomcat Java e por isso optamos pela versão Java 8. Caso sua versão seja anterior a esta ou uma versão diferente, será preciso selecionar o arquivo de acordo com a sua.
Realize o upload da biblioteca no ambiente SaveinCloud. Lembrando que realizamos esse processo, pois nosso projeto não inclui tal biblioteca. Caso você já tenha e faça o deploy dele com a biblioteca inclusa, não precisa realizar esta etapa de upload.
Para o deploy, acesse o menu configurações no painel, seguido do diretório lib, em Tomcat. Em seguida, selecione o símbolo de engrenagem, seguido de upload.
Antes de iniciar o upload clique em Browser, selecione a biblioteca que foi baixada, e em seguida, abrir. Feito isso, clique em upload novamente.
Após subir a biblioteca, criaremos o arquivo de configuração que vai realizar a conexão. Esse arquivo deve ser criado no diretório temp: opt – tomcat- temp
Acesse novamente o atalho com símbolo de engrenagem, clique em new file, criando um nome para este arquivo. Nesta demonstração, vamos chamar de “mydb.cfg.”
Clique duas vezes no arquivo e ele abrirá em branco.
Adicionamos as seguintes informações:
host=jdbc:postgresql://{host}/{db_name}
username={user}
password={password}
driver=org.postgresql.Driver
Em host, substitua a informação pelo IP ou URL do banco de dados que será utilizado.
No nosso caso, como o banco de dados e o Tomcat estão na plataforma SaveinCloud, podemos usar o IP de rede privada como host.
Em {db_name}, insira o nome do banco de dados a utilizar. Na demonstração, refere-se ao banco teste criado no início do tutorial.
{user} usuário;
{password} senha.
Nós utilizamos o usuário padrão de quando foi criado o ambiente, mas você pode criar novos usuários.
Em driver=org.postgresql.Driver, não é necessário alterar nada, esse é o driver que será utilizado para fazer a conexão.
Copie e cole todas as informações e realize as alterações. Selecione o IP de rede privada no ambiente, no nosso caso 101003538, e substitua o host por esta informação.
O dbname, você deve trocar pelo nome do banco de dados. Neste caso, teste
adicionando usuário e senha.
Salve as informações e reinicie o Tomcat para aplicação das alterações.
Acesse o container do Tomcat e clique no botão Restart nodes, em seguida sim. Espere o Tomcat reiniciar. Após o reinício, clique para abrir a aplicação. Em sua guia deverá abrir uma tela com a seguinte mensagem:
Essa aplicação cria uma tabela de teste no banco de dados. Para saber se está funcionando, confira se foi criado em seu banco de dados a tabela de teste.
Clique em create test table in your database.
Confira abaixo como deve aparecer o nome da tabela criada:
Acesse o banco de dados e atualize a página pelo relowed. Acesse o menu tabelas e confira se a tabela foi criada.
Para não restarem dúvidas, clique em drop, seguido de “apagar a tabela’‘.
Você pode executar o teste mais uma vez.
Agora, abra a aplicação e clique novamente em create test table in your database. Ele abrirá uma nova guia com a mensagem ‘OK’ e o nome da tabela – que muda de acordo com o horário.
Acesse novamente as tabelas no phpPgAdmin e verifique as informações.
Como se nota, o processo é simples quando se trata de realizar este tipo de conexão.
Para conexão via ODBC é necessário gerar uma forma de acesso externo em nosso banco de dados. É possível realizar pelo IP público ou Endpoint. A SaveinCloud te oferece duas opções:
Acesso externo por meio do ‘Endpoint’
Para criar o Endpoint, acesse a opção de configurações no painel da plataforma SaveinCloud. Em seguida, clique em Endpoints e adicione.
A primeira opção é selecionar o Node, qual é o container para onde deseja criar o Endpoint. Nesse caso, a gente quer acessar o PostgreSQL, portanto, selecione o Node de PostgreSQL.
É possível criar Endpoints personalizados e na porta colocar qual desejar. Em alguns casos temos Endpoints pré-definidos. No caso do PostgreSQL tem uma opção com a porta 5432, porta padrão. A partir desta escolha, todas as informações ficarão alinhadas.
Agora, clique em adicionar e ele vai gerar o Endpoint com a URL de acesso a porta alta que redirecionará o acesso para a porta privada.
Temos também a porta pública e a alta por onde o acesso entra. O acesso pela Endpoint vai redirecionar para a porta de execução do PostgreSQL.
O acesso externo, neste tutorial, já está configurado e agora é necessário baixar o driver odbc PostgreSQL no Windows.
Para baixar o driver é bem simples! Você pode baixar também pelo site do PostgreSQL.
Pelo Google também é fácil de baixar, digitando apenas postgresql odbc driver.
Escolha a versão mais recente disponível, como ODBC PostgreSQL 64 bit. Para este tutorial, baixamos a versão x64.
Finalizando o download vai aparecer uma pasta zipada. Abra o arquivo por meio do Winrar ou 7zip e execute o instalador.
Conexão ODBC com PostgreSQL
Na hora de baixar, clique sempre em “próximo” e aceite os termos até chegar na opção de instalar. Após finalizar a instalação, clique na tecla Windows e digite ODBC. Na barra de pesquisa vai mostrar a opção Fontes de Dados ODBC (64 bits).
Clique para abrir a tela de Administrador Fontes de Dados ODBC (64 bits). Selecione a opção DSN de Sistema, para configurar o acesso ao banco de dados.
Na tela do administrador clique em adicionar, selecione a opção PostgreSQL Unicode (x64) e aperte em concluir.
A seguir, teremos o data source que representa o nome que queremos dar para essa configuração. Nós mantemos esta opção como teste. O banco de dados é aquele mesmo que fizemos no início do tutorial. O nome dele também é teste e depois é só adicionar servidor que é a Endpoint que foi criado.
Acesse o ambiente e copie o link da Endpoint. Na hora de colar a informação, apague a porta para colocar essa informação apenas no campo Port.
Preencha o nome do usuário e a senha do banco de dados. Feito isso, clique em teste e a conexão estará conectada com sucesso.
Acesso externo por meio do IP público
Qual é a diferença do IP público para o Endpoint?
Segurança, velocidade de conexão e o valor na plataforma SaveinCloud.
O IP público é pago, mas o Endpoint não vai gerar custo para você implementar no seu ambiente. O IP público, a partir do momento que você adiciona, gera um custo, porém, tende a ser um pouco mais rápido por tratar-se de acesso direto.
Não é uma velocidade que fará muita diferença. A conexão que realizamos via Endpoint foi muita rápida e mudando para o IP público, não trará uma mudança tão perceptível. É mais simples fazer uma conexão externa usando IP público, ao usar uma Endpoint.
Mais uma observação. A partir do momento que o IP público é adicionado no ambiente, a Endpoint não funciona mais.
Adicionamos o IP público para testar a conexão e demonstrar o erro gerado a partir do momento que adicionamos um IP público no ambiente. Toda e qualquer Endpoint que tiver ativa, deixará de funcionar.
Alteramos também a conexão para o IP público, visto que já estará no acesso direto para a porta padrão em nosso banco de dados. Sendo assim, não é necessário citar a porta na tela PostgreSWL Unicode ODBC Driver (psqlODBC) Setup.
O ODBC, geralmente, tenta se conectar automaticamente com a porta padrão do PostgreSQL. Só é preciso citar a porta caso configure o PostgreSQL para rodar em uma porta diferente.
Finalizando, mude o servidor da URL do Endpoint pelo IP público que adicionamos e clique em teste. Deve aparecer a mensagem connection successful.
O processo está finalizado, sem muita dificuldade para configurar tanto para Tomcat quanto PostgreSQL e a conexão do Windows com PostgreSQL via ODBC, seja via endpoint ou IP público.
Ainda não conhece o PostgreSQL da SaveinCloud? Teste GRÁTIS por 14 dias!