Como instalar o PostgreSQL no Linux Debian 10
Índice:
- Instalando o PostgreSQL
- Funções do PostgreSQL e métodos de autenticação
- Criando Função e Banco de Dados PostgreSQL
- Habilitar acesso remoto ao servidor PostgreSQL
- Conclusão
O PostgreSQL, geralmente conhecido simplesmente como Postgres, é um sistema de gerenciamento de banco de dados relacional de objeto de uso geral de código aberto. Possui muitos recursos poderosos, como backups on-line, recuperação pontual, transações aninhadas, consultas SQL e JSON, controle de simultaneidade de versão múltipla (MVCC), replicação assíncrona e muito mais.
Este tutorial mostra as etapas de instalação do servidor de banco de dados PostgreSQL no Debian 10. Também exploraremos os fundamentos da administração básica de banco de dados.
Instalando o PostgreSQL
No momento da redação deste artigo, a versão mais recente do PostgreSQL disponível nos repositórios padrão da Debian é o PostgreSQL versão 11.5.
Para instalar o PostgreSQL no servidor Debian, execute as seguintes etapas como root ou usuário com privilégios de sudo:
-
Comece atualizando o índice do pacote APT:
sudo apt updateInstale o servidor PostgreSQL e o pacote contrib, que fornece recursos adicionais para o banco de dados PostgreSQL:
sudo apt install postgresql postgresql-contribQuando a instalação estiver concluída, o serviço PostgreSQL será iniciado. Para verificar a instalação, use a ferramenta
psqlpara imprimir a versão do servidor:sudo -u postgres psql -c "SELECT version();"A saída deve ser algo como o seguinte:
PostgreSQL 11.5 (Debian 11.5-1+deb10u1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
psql
é um programa de terminal interativo que permite interagir com o servidor PostgreSQL.
Funções do PostgreSQL e métodos de autenticação
O PostgreSQL gerencia as permissões de acesso ao banco de dados usando o conceito de funções. Dependendo de como você configura a função, ela pode representar um usuário do banco de dados ou um grupo de usuários do banco de dados.
O PostgreSQL suporta vários métodos de autenticação. Os métodos mais usados são:
- Confiança - Uma função pode se conectar sem uma senha, desde que os critérios definidos no
pg_hba.confsejam atendidos.Password - Uma função pode ser conectada fornecendo uma senha. As senhas podem ser armazenadas comoscram-sha-256md5epassword(texto não criptografado) Ident - suportado apenas para conexões TCP / IP. Funciona obtendo o nome de usuário do sistema operacional do cliente, com um mapeamento de nome de usuário opcional.Peer - O mesmo que Ident, mas é suportado apenas em conexões locais.
A autenticação do cliente PostgreSQL é definida no arquivo de configuração denominado
pg_hba.conf
. Para conexões locais, o PostgreSQL está configurado para usar o método de autenticação de mesmo nível.
O usuário "postgres" é criado automaticamente quando o PostgreSQL é instalado. Este usuário é o superusuário da instância do PostgreSQL e é equivalente ao usuário raiz do MySQL.
Para efetuar login no servidor PostgreSQL como "postgres", alterne para o usuário postgres e acesse um prompt do PostgreSQL usando o utilitário
psql
:
sudo su - postgres
psql
sudo su - postgres
A partir daqui, você pode interagir com o servidor PostgreSQL. Para sair do shell do PostgreSQL, digite:
\q
Você pode usar o comando
sudo
para acessar o prompt do PostgreSQL sem mudar de usuário:
sudo -u postgres psql
O usuário do
postgres
é normalmente usado apenas no host local.
Criando Função e Banco de Dados PostgreSQL
O comando
createuser
permite criar novas funções na linha de comandos. Somente superusuários e funções com privilégio
CREATEROLE
podem criar novas funções.
No exemplo a seguir, criaremos uma nova função chamada
kylo
, um banco de dados chamado
kylodb
e concederemos privilégios no banco de dados à função.
-
Primeiro, crie a função emitindo o seguinte comando:
sudo su - postgres -c "createuser kylo"Em seguida, crie o banco de dados usando o comando
createdb:sudo su - postgres -c "createdb kylodb"Para conceder permissões ao usuário no banco de dados, conecte-se ao shell do PostgreSQL:
sudo -u postgres psqlExecute a seguinte consulta:
grant all privileges on database kylodb to kylo;
Habilitar acesso remoto ao servidor PostgreSQL
Por padrão, o servidor PostgreSQL escuta apenas na interface local
127.0.0.1
.
Abra o arquivo de configuração
postgresql.conf
e adicione
listen_addresses = '*'
na seção
CONNECTIONS AND AUTHENTICATION
. Isso instrui o servidor a ouvir em todas as interfaces de rede.
sudo nano /etc/postgresql/11/main/postgresql.conf
/etc/postgresql/11/main/postgresql.conf
#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on;
Salve o arquivo e reinicie o serviço PostgreSQL para que as alterações entrem em vigor:
sudo service postgresql restart
Verifique as alterações com o utilitário
ss
:
ss -nlt | grep 5432
LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128:5432:*
A saída deve mostrar que o servidor PostgreSQL escuta em todas as interfaces (0.0.0.0).
A última etapa é configurar o servidor para aceitar logins remotos editando o arquivo
pg_hba.conf
.
Abaixo estão alguns exemplos mostrando diferentes casos de uso:
/etc/postgresql/11/main/pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD # The user jane will be able to access all databases from all locations using an md5 password host all jane 0.0.0.0/0 md5 # The user jane will be able to access only the janedb from all locations using an md5 password host janedb jane 0.0.0.0/0 md5 # The user jane will be able to access all databases from a trusted location (192.168.1.134) without a password host all jane 192.168.1.134 trust
Conclusão
Nós mostramos como instalar e configurar o PostgreSQL no Debian 10. Para obter mais informações sobre este tópico, consulte a documentação do PostgreSQL.
banco de dados debian postgresqlComo instalar o postgresql no centos 7
O PostgreSQL ou Postgres é um sistema de gerenciamento de banco de dados objeto-relacional de uso geral de código aberto. Neste tutorial, mostraremos dois métodos diferentes para instalar o PostgreSQL na sua máquina CentOS 7.
Como instalar o postgresql no centos 8
Neste guia, discutiremos como instalar o servidor de banco de dados PostgreSQL no CentOS 8. Também exploraremos o básico da administração de banco de dados PostgreSQL.
Como instalar o postgresql no debian 9
O PostgreSQL, geralmente conhecido simplesmente como Postgres, é um sistema de gerenciamento de banco de dados objeto-relacional de uso geral de código aberto. Neste tutorial, mostraremos como instalar o PostgreSQL no Debian 9 e explorar os fundamentos da administração básica de banco de dados.







