Como listar e conectar nos bancos Postgres usando o psql?
Comandos básicos do Postgres PSQL para conectar em um servidor, listar os bancos, tabelas e índices.
Pré-requisitos: Conhecimentos básicos de banco de dados e Postgres
TL;DR ↪ Se você precisar apenas dos comandos, clique aqui para rolar a página direto para o resumo TL;DR!
📖 Índice
Assim como temos um artigo básico sobre listar e conectar usando o MySQL, esse é um artigo bem básico sobre os primeiros comandos do Postgres no psql
.
Antes de começar, precisamos entender que, o psql
é a console do Postgres cli (command-line interface). Com ele, além de executar queries, você também pode rodar uma série de comandos do próprio Postgres para realizar diversos tipos de operações.
Então vamos para os primeiros passos com o Postgres e o psql
!
Como instalar o psql?
A instalação do psql vai depender de qual sistema operacional você está utilizando.
Como instalar o psql no Windows?
Se você está no Windows e já tem o Postgres instalado, provavelmente já tem o psql também. Se por um acaso não tiver, baixe o instalador no site oficial 🔗, instale e pronto, tudo certo!
Como instalar o psql no Linux Ubuntu?
Se você está no Linux Ubuntu, é só usar o apt.
Como instalar o psql no Mac?
Se você está no Mac, você pode utilizar o Brew, que é excelente gerenciador de pacotes, tipo o apt do Linux, so que para o Mac.
Como conectar no psql?
Se você precisar se conectar em um server local, utilize o comando abaixo:
psql -U postgres
Agora, se você precisa se conectar em um server remoto, você precisará informar o hostname. Para isso, utilize o comando:
O parâmetro -U é o usuário e -h o endereço do servidor (ip ou hostname).
Lembre-se que, para que um servidor remoto aceite conexões externas, você precisa que a porta 5432 esteja liberada no firewall e que o parâmetro listen_addresses
do postgresql.conf esteja aceitando o ip do host remoto ou * para qualquer endereço.
Como listar os bancos de dados Postgres no psql?
Para listar todas as bases de dados de um servidor Postgres via psql, execute o seguinte comando \l
Como trocar de banco de dados Postgres via psql?
Para trocar de banco de dados Postgres via psql em um servidor, execute o seguinte comando \c nome_do_banco;
Como listar as tabelas de um banco de dados Postgres via psql?
Para listar todas as tabelas de um banco de dados Postgres via psq, execute o seguinte comando \dt
ou \dt+
. O comando com o '+' exibe também o tamanho da tabela.
Como listar as os campos de uma tabela Postgres via psql?
Para listar todos os campos e detalhes de uma tabela de um banco de dados Postgres via psql, execute o seguinte comando \d nome_tabela
Observe que com esse comando, além dos campos, os índices e triggers da tabela também são exibidos.
TL;DR | Resumo
# Conectar em um servidor Postgres local
psql -U nome_usuario
# Conectar em um servidor Postgres remoto
psql -U nome_usuario -h ip_ou_hostname
# Dentro do psql
# Listar todos os bancos
\l
# Conectar em um banco de dados
\c nome_banco
# Listar tabelas de do banco corrente
\dt
# Listar campos e detalhes de uma tabela
\d nome_tabela;