Instalando Postgresql no Linux - INICIANTE PASSO A PASSO
Índice:
- Pré-requisitos
- Instale o PostgreSQL a partir dos repositórios do CentOS
- Instale o PostgreSQL a partir dos repositórios do 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 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:
-
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-contribInicializando banco de dados
Inicialize o banco de dados PostgreSQL com o seguinte comando:
sudo postgresql-setup initdbInitializing database… OKIniciando o PostgreSQL
Para iniciar o serviço PostgreSQL e permitir que ele inicie na inicialização, digite:
sudo systemctl start postgresqlsudo systemctl enable postgresqlVerificando a instalação do PostgreSQL
Para verificar a instalação, tentaremos conectar-se ao servidor de banco de dados PostgreSQL usando a ferramenta
psqle 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)
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:
-
Habilitando o repositório PostgreSQL
Para ativar o repositório PostgreSQL, basta instalar o arquivo
rpmdo repositório:sudo yum installInstalando 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-contribInicializando banco de dados
Para inicializar o tipo de banco de dados PostgreSQL:
sudo /usr/pgsql-10/bin/postgresql-10-setup initdbInitializing database… OKIniciando o PostgreSQL
Para iniciar o serviço PostgreSQL e permitir que ele inicie no tipo de inicialização:
sudo systemctl start postgresql-10sudo systemctl enable postgresql-10Verificando a instalação do PostgreSQL
Para verificar a instalação, tentaremos conectar-se ao servidor de banco de dados PostgreSQL usando a ferramenta
psqle 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.confsejam atendidos. Senha - Uma função pode ser conectada fornecendo uma senha. As senhas podem ser armazenadas comoscram-sha-256md5epassword(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.
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.
-
Conecte-se ao shell do PostgreSQL
sudo -u postgres psqlCrie 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
johnno 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 postgresqlComo 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 10
Este tutorial mostra as etapas de instalação do servidor de banco de dados PostgreSQL no Debian 10. O PostgreSQL, geralmente conhecido simplesmente como Postgres, é um sistema de gerenciamento de banco de dados relacional para objetos de uso geral de código aberto.
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.







