Como conectar a sua instância PostgreSQL
Como conectar através de uma Máquina Virtual (Jumphost)
Para conectar-se ao banco de dados PostgreSQL, é necessário uma Máquina Virtual provisionada na mesma região do banco de dados a que deseja-se conectar.
Vamos assumir que você já tenha uma instância de VM com sistema Ubuntu rodando e acessível via SSH. Caso não tenha, crie uma nova Máquina Virtual.
-
Conecte na sua VM utilizando SSH.
-
Uma vez dentro do jumphost (VM Ubuntu), você precisa instalar o cliente de linha de comando
psql, caso ainda não o tenha instalado:a. Atualizar a sua VM com o comando:
sudo apt updateb. Instalar o cliente do PostgreSQL, caso ainda não tenha feito:
sudo apt install postgresql-client -
Utilize o
psqldentro VM para realizar a conexão com o banco de dados:psql -h "ip_privado_do_banco" -U "usuario" -d "postgres"- Substitua
ip_privado_do_bancopelo IP privado do banco na mesma região da VM. - Substitua
usuariopelo nome de usuário do banco de dados PostgreSQL que você informou ao criar a instância do banco. - Você pode substituir
postgrespelo nome de algum outro banco de dados PostgreSQL que você já tenha criado. Inicialmente uma nova instância PostgreSQL na Magalu Cloud não conterá outros bancos de dados além dopostgrespadrão.
Após executar este comando com sucesso, será solicitado que você informe a senha que forneceu ao criar a instância do banco de dados.
- Substitua
Como conectar diretamente da sua máquina local
Para conectar-se ao banco de dados PostgreSQL diretamente da sua máquina local, você precisa garantir que sua máquina tenha acesso à rede onde o banco de dados está hospedado. Para isso você pode utilizar o tunelamento SSH através de uma Máquina Virtual (Jumphost) na mesma região do banco de dados.
-
Primeiro, você precisa criar um túnel SSH da sua máquina local para a Máquina Virtual (Jumphost) que está na mesma região do banco de dados PostgreSQL. Execute o seguinte comando no terminal da sua máquina local:
ssh -L 5432:ip_privado_do_banco:5432 usuario_da_vm@endereco_ip_da_vm- Substitua
ip_privado_do_bancopelo IP privado do banco na mesma região da VM. - Substitua
usuario_da_vmpelo nome de usuário da Máquina Virtual. Caso sua VM tenha o sistema Ubuntu, o usuário padrão geralmente éubuntu. - Substitua
endereco_ip_da_vmpelo endereço IP público da Máquina Virtual.
Este comando cria um túnel que redireciona o tráfego da porta 5432 (porta padrão do PostgreSQL) da sua máquina local para a porta 5432 do banco de dados através da Máquina Virtual.
- Substitua
-
Mantenha o terminal aberto para que o túnel SSH permaneça ativo.
-
Agora, em outro terminal na sua máquina local, você pode usar o cliente
psqlpara conectar-se ao banco de dados PostgreSQL através do túnel SSH:psql -h localhost -U "usuario" -d "postgres"- Substitua
usuariopelo nome de usuário do banco de dados PostgreSQL que você informou ao criar a instância do banco. - Você pode substituir
postgrespelo nome de algum outro banco de dados PostgreSQL que você já tenha criado.
Após executar este comando com sucesso, será solicitado que você informe a senha que forneceu ao criar a instância do banco de dados.
- Substitua
Como conectar utilizando uma ferramenta gráfica (GUI)
Para conectar-se ao banco de dados PostgreSQL utilizando DBeaver ou Beekeeper Studio, você pode seguir os passos abaixo:
- Abra a ferramenta gráfica de sua preferência (DBeaver ou Beekeeper Studio).
- Crie uma nova conexão de banco de dados e selecione PostgreSQL como o tipo de banco de dados.
- Preencha os campos de conexão com as seguintes informações:
- Host: IP privado do banco de dados (na mesma região da VM).
- Porta: 5432 (porta padrão do PostgreSQL).
- Database: postgres (ou outro banco de dados que você tenha criado).
- Username: nome de usuário do banco de dados PostgreSQL que você informou ao criar a instância do banco.
- Password: senha que você forneceu ao criar a instância do banco.
- SSH Tunnel: Ative a opção de túnel SSH e preencha os campos com as informações da Máquina Virtual (Jumphost):
- Host: Endereço IP público da Máquina Virtual.
- Porta: 22 (porta padrão do SSH).
- Username: nome de usuário da Máquina Virtual (geralmente
ubuntupara VMs com sistema Ubuntu). - Authentication Method: Escolha o método chave privada e forneça o caminho para a chave privada SSH que você utiliza para acessar a Máquina Virtual.
- Port Forwarding: Configure o encaminhamento de porta local para redirecionar a porta 5432 da sua máquina local para a porta 5432 do banco de dados através da Máquina Virtual:
- Local Port: 5432
- Remote Host: IP privado do banco de dados
- Remote Port: 5432
- Salve as configurações e teste a conexão.
Referências: