Android

Como instalar o postgresql no centos 7

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 com muitos recursos avançados que permitem criar aplicativos Web complexos.

Neste tutorial, mostraremos dois métodos diferentes para instalar o PostgreSQL na sua máquina CentOS 7. O primeiro método o guiará pelas etapas necessárias para instalar o PostgreSQL v9.2.23 a partir dos repositórios do CentOS, enquanto o segundo mostrará como instalar a versão mais recente do PostgreSQL a partir dos repositórios oficiais do PostgreSQL.

Se seu aplicativo não requer a versão mais recente, recomendamos o uso do primeiro método e instale o PostgreSQL a partir dos repositórios do CentOS.

Também exploraremos os fundamentos da administração de banco de dados PostgreSQL.

Pré-requisitos

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

Instale o PostgreSQL a partir dos repositórios do CentOS

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

Para instalar o PostgreSQL no servidor CentOS, siga as etapas abaixo:

  1. Instalando o PostgreSQL

    Para instalar o servidor PostgreSQL junto com o pacote contrib PostgreSQL, que fornece vários recursos adicionais para o banco de dados PostgreSQL, basta digitar:

    sudo yum install postgresql-server postgresql-contrib

    Inicializando banco de dados

    Inicialize o banco de dados PostgreSQL com o seguinte comando:

    sudo postgresql-setup initdb

    Initializing database… OK

    Iniciando o PostgreSQL

    Para iniciar o serviço PostgreSQL e permitir que ele inicie na inicialização, digite:

    sudo systemctl start postgresql sudo systemctl enable postgresql

    Verificando a instalação do PostgreSQL

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

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

    PostgreSQL 9.2.23 on x86_64-redhat-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-16), 64-bit (1 row)

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

Instale o PostgreSQL a partir dos repositórios do PostgreSQL

No momento da redação deste artigo, a versão mais recente do PostgreSQL disponível nos repositórios oficiais do PostgreSQL é o PostgreSQL versão 10.4. Antes de continuar com a próxima etapa, visite a página Repositório do PostgreSQL Yum e verifique se há uma nova versão disponível.

Siga as etapas abaixo para instalar a versão mais recente do PostgreSQL no seu servidor CentOS:

  1. Habilitando o repositório PostgreSQL

    Para ativar o repositório PostgreSQL, basta instalar o arquivo rpm do repositório:

    sudo yum install

    Instalando o PostgreSQL

    Depois que o repositório estiver ativado, instale o servidor PostgreSQL e os pacotes de contribuição do PostgreSQL com:

    sudo yum install postgresql10-server postgresql10-contrib

    Inicializando banco de dados

    Para inicializar o tipo de banco de dados PostgreSQL:

    sudo /usr/pgsql-10/bin/postgresql-10-setup initdb

    Initializing database… OK

    Iniciando o PostgreSQL

    Para iniciar o serviço PostgreSQL e permitir que ele inicie no tipo de inicialização:

    sudo systemctl start postgresql-10 sudo systemctl enable postgresql-10

    Verificando a instalação do PostgreSQL

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

    sudo -u postgres /usr/pgsql-10/bin/psql -c "SELECT version();"

    PostgreSQL 10.4 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-28), 64-bit (1 row)

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 métodos 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. Pee - Igual a 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.

Se você instalou o PostgreSQL versão 10 a partir dos repositórios oficiais do PostgreSQL, precisará usar o caminho completo para o binário do psql que é /usr/pgsql-10/bin/psql .

Criando Função e Banco de Dados PostgreSQL

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. Conecte-se ao shell do PostgreSQL

    sudo -u postgres psql

    Crie uma nova função do PostgreSQL

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

    create role john;

    Crie um novo banco de dados PostgreSQL

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

    create database johndb;

    Conceder privilégios

    Para conceder permissões ao usuário john no banco de dados que criamos na etapa anterior, 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 /var/lib/pgsql/data/postgresql.conf Se você estiver executando o PostgreSQL versão 10, o caminho para o arquivo é /var/lib/pgsql/10/data/postgresql.conf ./var/lib/pgsql/data/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 systemctl restart postgresql Se você estiver executando o PostgreSQL versão 10, reinicie o serviço PostgreSQL com systemctl restart postgresql-10 .

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:

/var/lib/pgsql/data/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 Se você estiver executando o PostgreSQL versão 10, o caminho completo para o arquivo é /var/lib/pgsql/10/data/pg_hba.conf .

Conclusão

Você aprendeu como instalar e configurar o PostgreSQL no seu servidor CentOS 7.

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

banco de dados centos postgresql