PostgreSQL es un sistema de administración de base de datos relacional de objetos (ORDBMS) gratuito y de código abierto disponible para varias plataformas, incluidas Linux, Microsoft Windows y Mac OS X.
PostgreSQL es desarrollado por PGDG (Grupo de desarrollo global de PostgreSQL) y se publica bajo la licencia de PostgreSQL, un software gratuito y de código abierto.
En esta publicación, veremos cómo instalar PostgreSQL en CentOS 8 / Rocky Linux 8 / RHEL 8.
Instalar PostgreSQL en CentOS 8/Rocky Linux 8/RHEL 8
Puede obtener paquetes de PostgreSQL para CentOS 8/Rocky Linux 8/RHEL 8 de dos formas.
- Repositorio oficial de PostgreSQL (v14, 13, 12, 11, 10)
- Repositorio de AppStream (v13,12,10, 9.6)
Instalar PostgreSQL desde el repositorio oficial de PostgreSQL
La comunidad de PostgreSQL ofrece paquetes de PostgreSQL para CentOS 8/Rocky Linux 8/RHEL 8. Los paquetes proporcionados por PostgreSQL siempre están actualizados y son compatibles con la comunidad de PostgreSQL.
Agregar repositorio de PostgreSQL
Primero, instale la configuración del repositorio de PostgreSQL en su sistema, como se muestra a continuación.
dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
Instalar PostgreSQL
Luego, instale el servidor PostgreSQL usando el dnf
comando mencionando su versión postgresql<VERSION>-server
. Para esta demostración, estoy instalando PostgreSQL 14.
dnf -qy module disable postgresql dnf install -y postgresql14-server
Después de instalar PostgreSQL, inicialice la base de datos antes de usarla por primera vez.
/usr/pgsql-14/bin/postgresql-14-setup initdb
Salida:
Initializing database ... OK
Los datos de PostgreSQL normalmente se encuentran en el directorio /var/lib/pgsql/14/data/.
Administrar el servicio de PostgreSQL
Para iniciar el servicio PostgreSQL, ejecute:
systemctl start postgresql-14
Para habilitar PostgreSQL al iniciar el sistema, ejecute:
systemctl enable postgresql-14
Para verificar el estado del servicio PostgreSQL, ejecute:
systemctl status postgresql-14
Configurar servidor PostgreSQL
De forma predeterminada, PostgreSQL escucha en el servidor local. Por lo tanto, solo las aplicaciones que se ejecutan en el servidor pueden conectarse al servidor de la base de datos de forma predeterminada y restringir la conexión de las aplicaciones externas a la base de datos.
Edite el archivo de configuración para habilitar el acceso al servicio de la base de datos para máquinas externas.
vi /var/lib/pgsql/14/data/postgresql.conf
Establezca las direcciones de escucha en *.
listen_addresses = '*'
Reinicie el servicio PostgreSQL.
systemctl restart postgresql-14
Confirme la escucha de PostgreSQL en el puerto 5432 en todas las interfaces de red mediante el comando netstat.
netstat -antup | grep 5432
Salida:
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 4156/postmaster tcp6 0 0 :::5432 :::* LISTEN 4156/postmaster
Instalar PostgreSQL desde el repositorio de AppStream
PostgreSQL ahora está disponible para RHEL 8 desde Application Stream de Red Hat (rhel-8-for-x86_64-appstream-rpms) y CentOS 8 desde el repositorio de AppStream. PostgreSQL 13, 12, 10 y 9.6 están disponibles desde el repositorio de AppStream.dnf module list postgresql
Salida:
Name Stream Profiles Summary postgresql 9.6 client, server [d] PostgreSQL server and client module postgresql 10 [d] client, server [d] PostgreSQL server and client module postgresql 12 client, server [d] PostgreSQL server and client module postgresql 13 client, server [d] PostgreSQL server and client module Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
Instalar PostgreSQL
Instale PostgreSQL usando el dnf
dominio. Puede instalar otra versión con postgresql:stream
en el comando dnf.
# PostgreSQL 10 dnf install -y @postgresql # PostgreSQL 13 dnf install -y @postgresql:13
Después de instalar PostgreSQL, inicialice la base de datos antes de usarla por primera vez.
/usr/bin/postgresql-setup --initdb
Salida:
* Initializing database in '/var/lib/pgsql/data' * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
Los datos de PostgreSQL normalmente se encuentran en el directorio /var/lib/pgsql/data.
Administrar el servicio de PostgreSQL
Para iniciar el servicio PostgreSQL, ejecute:
systemctl start postgresql
Para habilitar PostgreSQL al iniciar el sistema, ejecute:
systemctl enable postgresql
Para verificar el estado del servicio PostgreSQL, ejecute:
systemctl status postgresql
Configurar servidor PostgreSQL
De forma predeterminada, PostgreSQL escucha en el host local. Por lo tanto, solo las aplicaciones que se ejecutan en el servidor pueden conectarse al servidor de la base de datos de forma predeterminada y restringir la conexión de las aplicaciones externas a la base de datos.
Edite el archivo de configuración para habilitar el acceso al servicio de la base de datos para máquinas externas.
vi /var/lib/pgsql/data/postgresql.conf
Establezca las direcciones de escucha en *.
listen_addresses = '*'
Reinicie el servicio PostgreSQL.
systemctl restart postgresql
Confirme la escucha de PostgreSQL en el puerto 5432 en todas las interfaces de red mediante el comando netstat.
netstat -antup | grep 5432
Salida:
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 4156/postmaster tcp6 0 0 :::5432 :::* LISTEN 4156/postmaster
Acceder al servidor PostgreSQL
Para acceder o trabajar con la base de datos, inicie sesión como usuario de postgres (usuario de Linux) y ejecute psql
comando.
su -l postgres
Acceda a la base de datos usando el comando psql.
$ psql
Salida:
psql (13.5) Type "help" for help. postgres=#
Establezca la contraseña para el usuario de postgres (administrador de la base de datos).
postgres=# \password
Conclusión
Eso es todo. Espero que haya aprendido a instalar PostgreSQL en CentOS 8/Rocky Linux 8/RHEL 8.