Android

Como instalar o postgresql no ubuntu 18.04

Instalando Postgresql no Linux - INICIANTE PASSO A PASSO

Instalando Postgresql no Linux - INICIANTE PASSO A PASSO

Índice:

Anonim

O PostgreSQL ou Postgres é um sistema de gerenciamento de banco de dados objeto-relacional de uso geral de código aberto. O PostgreSQL possui muitos recursos avançados que permitem criar aplicativos da web complexos.

Neste tutorial, mostraremos como instalar o PostgreSQL no Ubuntu 18.04 e explorar os fundamentos da administração básica de banco de dados.

Pré-requisitos

Antes de continuar com este tutorial, verifique se você está conectado como um usuário com privilégios sudo.

Instale o PostgreSQL no Ubuntu

No momento da redação deste artigo, a versão mais recente do PostgreSQL disponível nos repositórios oficiais do Ubuntu é o PostgreSQL versão 10.4.

Para instalar o PostgreSQL no seu servidor Ubuntu, siga os passos abaixo:

  1. Instalando o PostgreSQL

    Atualize o índice do pacote local e instale o servidor PostgreSQL junto com o pacote contrib do PostgreSQL, que fornece vários recursos adicionais para o banco de dados PostgreSQL:

    sudo apt update sudo apt install postgresql postgresql-contrib

    Verificando a instalação do PostgreSQL

    Quando a instalação estiver concluída, o serviço PostgreSQL será iniciado automaticamente.

    Para verificar a instalação, tentaremos conectar ao servidor de banco de dados PostgreSQL usando o psql e imprimir a versão do servidor:

    sudo -u postgres psql -c "SELECT version();"

O psql é um utilitário de linha de comando interativo que permite interagir com o servidor PostgreSQL.

Funções do PostgreSQL e métodos de autenticação

As permissões de acesso ao banco de dados no PostgreSQL são tratadas com o conceito de funções. Uma função pode representar um usuário de banco de dados ou um grupo de usuários de banco de dados.

O PostgreSQL suporta múltiplos métodos de autenticação. Os mais usados ​​são:

  • Confiança - com esse método, a função pode se conectar sem uma senha, desde que os critérios definidos no pg_hba.conf sejam atendidos. Senha - Uma função pode ser conectada fornecendo uma senha. As senhas podem ser armazenadas como scram-sha-256 md5 e password (texto não criptografado) Ident - Esse método é suportado apenas em 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 . Por padrão para conexões locais, o PostgreSQL está configurado para usar o método de autenticação de mesmo nível.

O usuário do postgres é criado automaticamente quando você instala o PostgreSQL. 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 usuário do postgres, primeiro você precisa mudar para o usuário postgres e acessar o prompt do PostgreSQL usando o utilitário psql :

sudo su - postgres psql sudo su - postgres

A partir daqui, você pode interagir com sua instância do PostgreSQL. Para sair do shell do PostgreSQL, digite:

\q

Você também pode acessar o prompt do PostgreSQL sem mudar de usuário usando o comando sudo :

sudo -u postgres psql

O usuário do postgres normalmente é usado apenas no host local e é recomendável não definir a senha para esse usuário.

Criando Função e Banco de Dados PostgreSQL

Você pode criar novas funções na linha de comando usando o comando createuser . 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 john um banco de dados chamado johndb e concederemos privilégios no banco de dados.

  1. Crie uma nova função do PostgreSQL

    O comando a seguir criará uma nova função chamada john:

    sudo su - postgres -c "createuser john"

    Crie um novo banco de dados PostgreSQL

    Crie um novo banco de dados chamado johndb usando o comando createdb :

    sudo su - postgres -c "createdb johndb"

    Conceder privilégios

    Para conceder permissões ao usuário john no banco de dados que criamos na etapa anterior, conecte-se ao shell do PostgreSQL:

    sudo -u postgres psql

    e execute a seguinte consulta:

    grant all privileges on database johndb to john;

Habilitar acesso remoto ao servidor PostgreSQL

Por padrão, o servidor PostgreSQL escuta apenas na interface local 127.0.0.1 . Para ativar o acesso remoto ao servidor PostgreSQL, abra o arquivo de configuração postgresql.conf e adicione listen_addresses = '*' na seção CONNECTIONS AND AUTHENTICATION .

sudo vim /etc/postgresql/10/main/postgresql.conf /etc/postgresql/10/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 com:

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:*

Como você pode ver na saída acima, o servidor PostgreSQL está escutando em todas as interfaces (0.0.0.0).

A última etapa é configurar o servidor para aceitar conexões remotas editando o arquivo pg_hba.conf .

Abaixo estão alguns exemplos mostrando diferentes casos de uso:

/etc/postgresql/10/main/pg_hba.conf

# TYPE DATABASE USER ADDRESS METHOD # The user jane will be able to access all databases from all locations using a 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 a 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

Você aprendeu como instalar e configurar o PostgreSQL no servidor Ubuntu 18.04.

Você pode consultar a documentação do PostgreSQL 10.4 para obter mais informações sobre este tópico.

banco de dados ubuntu postgresql