Cómo instalar PostgreSQL y pgAdmin en CentOS 8


PostgreSQL es un sistema de base de datos relacional de objetos avanzado, de código abierto, multiplataforma y potente, ampliamente utilizado, conocido por su arquitectura probada, confiabilidad, integridad de datos, robusto conjunto de características y extensibilidad.

pgAdmin es una herramienta de administración y gestión avanzada, de código abierto, con todas las funciones y basada en la web para el servidor de base de datos PostgreSQL.

En este artículo, aprenderá cómo instalar el servidor de base de datos PostgreSQL 12 y pgAdmin 4 en la distribución de Linux CentOS 8.

Paso 1: Instalar PostgreSQL en CentOS 8

1. Primero, desactive el módulo PostgreSQL incorporado ejecutando el siguiente comando dnf.

# dnf -qy module disable postgresql

2. A continuación, habilite el repositorio oficial de PostgreSQL Yum como se muestra.

# dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

3. A continuación, instale los paquetes de cliente y servidor de PostgreSQL 12.

# dnf install postgresql12 postgresql12-server

4. Una vez que se complete la instalación, inicialice la base de datos PostgreSQL, luego inicie el servicio PostgreSQL-12 y habilítelo para que se inicie automáticamente al arrancar el sistema. Luego, verifique si el servicio está funcionando y habilitado como se muestra.

# /usr/pgsql-12/bin/postgresql-12-setup initdb 
# systemctl start postgresql-12
# systemctl enable postgresql-12
# systemctl status postgresql-12
# systemctl is-enabled postgresql-12

Paso 2: proteger y configurar la base de datos PostgreSQL

5. A continuación, proteja la cuenta de usuario de Postgres y la cuenta de usuario administrativo de la base de datos. Comience creando una contraseña para una cuenta de usuario del sistema Postgres usando la utilidad passwd como se muestra.

# passwd postgres

6. Luego cambie a la cuenta del sistema de Postgres y cree una contraseña segura para el usuario/rol de la base de datos administrativa de PostgreSQL de la siguiente manera.

# su - postgres
$ psql -c "ALTER USER postgres WITH PASSWORD '[email protected]';"
$ exit

7. Ahora configure cómo el servidor de Postgres autenticará a los clientes como pgAdmin. Los métodos de autenticación admitidos incluyen la autenticación basada en contraseña que utiliza uno de estos métodos: md5, crypt o contraseña.

Para esta guía, configuraremos el método de autenticación md5 en el archivo /var/lib/pgsql/12/data/pg_hba.conf.

# vi /var/lib/pgsql/12/data/pg_hba.conf

Busque las siguientes líneas y cambie el método de autenticación a md5 como se resalta en la captura de pantalla.

host    all             all             127.0.0.1/32            md5
host    all             all             ::1/128                 md5

8. Después de guardar el archivo, para aplicar los cambios recientes en la configuración de Postgres, reinicie el servicio Postgres.

# systemctl restart postgresql-12

Paso 3: Instalar pgAdmin4 en CentOS 8

9. Ahora instalaremos pgAdmin 4 para administrar la base de datos PostgreSQL desde la web. Primero, debe habilitar los repositorios EPEL y pgAdmin Yum que contienen algunas de las dependencias.

# dnf install epel-release
# dnf install -y https://ftp.postgresql.org/pub/pgadmin/pgadmin4/yum/pgadmin4-redhat-repo-1-1.noarch.rpm

en Fedora Linux, ejecute:

# dnf install -y https://ftp.postgresql.org/pub/pgadmin/pgadmin4/yum/pgadmin4-fedora-repo-1-1.noarch.rpm

10. A continuación, debe eliminar los repositorios oficiales de yum de PostgreSQL para instalar la última versión estable de pgAdmin desde el repositorio oficial de yum de pgAdmin.

# dnf remove -y pgdg-redhat-repo

11. Ahora cree la caché para los repositorios pgAdmin y EPEL recién instalados e instale pgAdmin usando los siguientes comandos.

# dnf makecache
# yum install pgadmin4

12. A continuación, inicie el servicio httpd y habilítelo para que se inicie automáticamente al arrancar el sistema, luego verifique si está funcionando como se muestra.

# systemctl start httpd
# systemctl enable httpd
# systemctl status httpd

Paso 4: Configurar pgAdmin 4 en CentOS 8

13. El paquete pgadmin4 viene con un script configurable para configurar el servicio web pgAdmin, que creará una cuenta de usuario utilizada para autenticarse en la interfaz web, configurar las políticas de SELinux y el servidor web Apache para implementar el servicio web pgAdmin.

# /usr/pgadmin4/bin/setup-web.sh
Setting up pgAdmin 4 in web mode on a Redhat-based platform...
Creating configuration database...
NOTE: Configuring authentication for SERVER mode.

Enter the email address and password to use for the initial pgAdmin user account:

Email address: [email protected]
Password: 
Retype password:
pgAdmin 4 - Application Initialisation
======================================

Creating storage and log directories...
Configuring SELinux...
The Apache web server is running and must be restarted for the pgAdmin 4 installation to complete. Continue (y/n)? y
Apache successfully restarted. You can now start using pgAdmin 4 in web mode at http://127.0.0.1/pgadmin4

14. Si tiene el servicio firewalld habilitado y en ejecución, abra los puertos 80 y 443 en el firewall para permitir el tráfico al servidor web HTTPD como se muestra.

# firewall-cmd --permanent --zone public --add-port 80/tcp
# firewall-cmd --permanent --zone public --add-port 443/tcp
# firewall-cmd --reload

Paso 5: Acceso a la interfaz web de pgAdmin

15. Para acceder a la interfaz web de pgAdmin, abra un navegador y navegue utilizando la siguiente URL.

http://SERVER_IP/pgadmin4
OR
http://localhost/pgadmin4

Una vez que se cargue la interfaz de inicio de sesión, use la dirección de correo electrónico y la contraseña que creó en el paso 15 anterior para iniciar sesión.

16. A continuación, agregue una nueva conexión de servidor haciendo clic en "Agregar nuevo servidor".

17. Luego, en la pestaña "General", ingrese la siguiente configuración Nombre del servidor y, opcionalmente, deje un comentario para describir la conexión.

18. Luego defina el perfil de conexión completando lo siguiente:

  • Host: host/dirección IP del servidor PostgreSQL.
  • Puerto: el valor predeterminado es 5432.
  • Base de datos de mantenimiento: los valores predeterminados deben ser Postgres.
  • Nombre de usuario: el nombre de usuario de la base de datos. Puede utilizar Postgres.
  • Contraseña: contraseña del usuario anterior.

Luego haga clic en Guardar.

19. El nuevo servidor debería aparecer ahora en la lista de servidores como se resalta en la siguiente captura de pantalla.

20. Cuando hace clic en el nombre del servidor, sus atributos deben cargarse debajo del Panel de control como se muestra en la siguiente captura de pantalla.

¡Ahí tienes! Ha instalado correctamente Postgresql 12 y pgAdmin 4 en CentOS 8. Comuníquese con nosotros a través del formulario de comentarios a continuación para cualquier comentario o pregunta. Puede encontrar más información en la documentación de pgAdmin.