CentOS 8 Server - #8 Install PostgreSQL
Tabla de contenido:
- Prerrequisitos
- Instalación de PostgreSQL en CentOS 8
- Roles PostgreSQL y métodos de autenticación
- Crear rol y base de datos PostgreSQL
- Habilite el acceso remoto al servidor PostgreSQL
- Conclusión
PostgreSQL o PostgreSQL es un sistema de gestión de base de datos relacional de objetos de uso general de código abierto con muchas características avanzadas que le permite construir ambientes tolerantes a fallos o aplicaciones complejas.
En esta guía, vamos a discutir cómo instalar el servidor de base de datos PostgreSQL en CentOS 8. Antes de elegir la versión que desea instalar, asegúrese de que sus aplicaciones son compatibles con ella.
También exploraremos los conceptos básicos de la administración de la base de datos PostgreSQL.
Prerrequisitos
Para poder instalar los paquetes, es necesario estar conectado como root o usuario con privilegios sudo.
Instalación de PostgreSQL en CentOS 8
En el momento de escribir este artículo, hay dos versiones de servidor PostgreSQL disponibles para la instalación de los repositorios de CentOS estándar: versión 9.6 y 10.0.
Para enumerar las secuencias de módulos PostgreSQL disponibles, escriba:
dnf module list postgresql
El resultado muestra que el módulo postgresql está disponible con dos flujos. Cada corriente tiene dos perfiles: el servidor y el cliente. La corriente 10 con el servidor de perfil es el que viene por defecto:
CentOS-8 - AppStream Name Stream Profiles Summary postgresql 10 client, server PostgreSQL server and client module postgresql 9.6 client, server PostgreSQL server and client module
-
Para instalar la secuencia predeterminada, escriba la versión 10.0 del servidor PostgreSQL:
sudo dnf install @postgresql:10
Para instalar el servidor PostgreSQL versión 9.6, escriba:
sudo dnf install @postgresql:9.6
También es posible que desee instalar el paquete de contribución que proporciona varias características adicionales para la base de datos PostgreSQL:
sudo dnf install postgresql-contrib
Una vez completada la instalación, inicializar la base de datos PostgreSQL con el comando siguiente:
sudo postgresql-setup initdb
Initializing database… OK
Inicie el servicio PostgreSQL y permita que se inicie en el arranque:
sudo systemctl enable --now postgresql
Use la herramienta
psql
para verificar la instalación conectándose al servidor de base de datos PostgreSQL e imprima su versión:
sudo -u postgres psql -c "SELECT version();"
PostgreSQL 10.6 on x86_64-redhat-linux-gnu, compiled by gcc (GCC) 8.2.1 20180905 (Red Hat 8.2.1-3), 64-bit
Roles PostgreSQL y métodos de autenticación
PostgreSQL maneja los permisos de acceso a la base de datos utilizando el concepto de roles. Un rol puede representar un usuario de la base de datos o un grupo de usuarios de la base de datos.
PostgreSQL admite múltiples métodos de autenticación. Los métodos más utilizados son:
- Confianza - Una función puede conectarse sin una contraseña, siempre y cuando las condiciones definidas en el
pg_hba.conf
son met.Password - Una función se puede conectar al proporcionar una contraseña. Las contraseñas se pueden almacenar comoscram-sha-256
,md5
, ypassword
(en texto claro).Ident - Sólo disponible en conexiones TCP / IP. Funciona mediante la obtención de nombre de usuario del sistema operativo del cliente, con un mapping.Peer nombre de usuario opcional - Igual que Ident, pero sólo se admite en conexiones locales.
La autenticación del cliente PostgreSQL se define en el archivo de configuración llamado
pg_hba.conf
. De manera predeterminada, para conexiones locales, PostgreSQL está configurado para usar el método de autenticación de pares.
El usuario
postgres
se crea automáticamente cuando instala el servidor PostgreSQL. Este usuario es el superusuario de la instancia de PostgreSQL. Es equivalente al usuario root de MySQL.
Para iniciar sesión en el servidor PostgreSQL como el
postgres
usuario, primer interruptor para el usuario y luego acceder al indicador de PostgreSQL usando el
psql
utilidad:
sudo su - postgres
psql
Desde aquí, puede interactuar con la instancia de PostgreSQL. Para salir del shell PostgreSQL, escriba:
\q
También puede acceder al indicador de PostgreSQL sin cambiar de usuario con el
sudo
comando:
sudo -u postgres psql
Por lo general, el usuario
postgres
se usa solo desde el host local.
Crear rol y base de datos PostgreSQL
Solo los superusuarios y los roles con privilegio
CREATEROLE
pueden crear nuevos roles.
En el siguiente ejemplo, crearemos un nuevo rol llamado
john
, una base de datos llamada
johndb
, y
johndb
privilegios en la base de datos.
-
En primer lugar, conectar a la carcasa PostgreSQL:
sudo -u postgres psql
Cree un nuevo rol de PostgreSQL utilizando el siguiente comando thr:
create role john;
Crea una nueva base de datos:
create database johndb;
Otorgue privilegios al usuario en la base de datos ejecutando la siguiente consulta:
grant all privileges on database johndb to john;
Habilite el acceso remoto al servidor PostgreSQL
Por defecto, el servidor PostgreSQL solo escucha en la interfaz local
127.0.0.1
.
Para habilitar el acceso remoto a su servidor PostgreSQL, abra el archivo de configuración:
sudo nano /var/lib/pgsql/data/postgresql.conf
Desplácese hacia abajo hasta la sección
CONNECTIONS AND AUTHENTICATION
y agregue / edite la siguiente línea:
#------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #------------------------------------------------------------------------------ # - Connection Settings - listen_addresses = '*' # what IP address(es) to listen on;
Guarde el archivo y reinicie el servicio PostgreSQL con:
sudo systemctl restart postgresql
Verifique los cambios con la utilidad
ss
:
ss -nlt | grep 5432
LISTEN 0 128 0.0.0.0:5432 0.0.0.0:* LISTEN 0 128:5432:*
El resultado anterior muestra que el servidor PostgreSQL está escuchando en el puerto predeterminado en todas las interfaces (0.0.0.0).
El último paso es configurar el servidor para aceptar conexiones remotas editando el archivo
pg_hba.conf
.
A continuación hay algunos ejemplos que muestran diferentes casos de uso:
/var/lib/pgsql/data/pg_hba.conf
# TYPE DATABASE USER ADDRESS METHOD # The user jane can access all databases from all locations using an md5 password host all jane 0.0.0.0/0 md5 # The user jane can access only the janedb database from all locations using an md5 password host janedb jane 0.0.0.0/0 md5 # The user jane can access all databases from a trusted location (192.168.1.134) without a password host all jane 192.168.1.134 trust
Conclusión
CentOS 8 proporciona dos versiones de PostgreSQL: 9.6 y 10.0.
Para obtener más información sobre este tema, visite la documentación de PostgreSQL
base de datos centos postgresqlCómo instalar postgresql en centos 7

PostgreSQL o Postgres es un sistema de gestión de base de datos relacional de objetos de propósito general de código abierto. En este tutorial le mostraremos dos métodos diferentes sobre cómo instalar PostgreSQL en su máquina CentOS 7.
Como instalar PostgreSQL en Debian 10

Este tutorial lo guía a través de los pasos para instalar el servidor de base de datos PostgreSQL en Debian 10. PostgreSQL, a menudo conocido simplemente como Postgres, es un sistema de gestión de base de datos relacional de objetos de propósito general de código abierto.
Cómo instalar postgresql en debian 9

PostgreSQL, a menudo conocido simplemente como Postgres, es un sistema de gestión de base de datos relacional de objetos de uso general de código abierto. En este tutorial le mostraremos cómo instalar PostgreSQL en Debian 9 y explorar los fundamentos de la administración básica de bases de datos.