Cómo instalar y usar PostgreSQL 13 en Rocky Linux

Agregar y verificar el repositorio de PostgreSQL

PostgreSQL es un sistema de gestión de bases de datos gratuito y de código abierto que se centra en la extensibilidad y el cumplimiento de SQL. PostgreSQL es un RDBMS (Sistema de administración de bases de datos relacionales) avanzado y de clase empresarial que admite consultas SQL (relacionales) y JSON (no relacionales).

Es un sistema de administraci√≥n de bases de datos altamente estable respaldado por m√°s de 20 a√Īos de desarrollo por parte de la comunidad de c√≥digo abierto y tiene una s√≥lida reputaci√≥n entre los desarrolladores y administradores de sistemas por su confiabilidad, flexibilidad, robustez de funciones y rendimiento.

PostgreSQL se utiliza como base de datos principal para aplicaciones web, aplicaciones móviles y aplicaciones analíticas. Algunos usuarios notables de PostgreSQL en todo el mundo son Reddit, Skype, Instagram, Disqus, The Guardian, Yandex, Bloomberg, Nokia, BMW, etc.

En esta guía, aprenderá cómo instalar la base de datos PostgreSQL en Rocky Linux, asegurar la implementación de la base de datos PostgreSQL y el uso básico de las consultas de PostgreSQL para administrar usuarios y bases de datos.

requisitos previos

  • Un sistema Rocky Linux.
  • Un usuario con privilegios de root o sudo. Este usuario se utilizar√° para instalar nuevos paquetes y realizar cambios en todo el sistema.

Agregar repositorio de PostgreSQL

Para esta gu√≠a, instalar√° la √ļltima versi√≥n estable de PostgreSQL v13.4. Esta versi√≥n est√° disponible en el repositorio oficial de PostgreSQL, por lo que debe agregar el repositorio de PostgreSQL a su sistema Rocky Linux.

1. Agregue el repositorio oficial de PostgreSQL para el sistema Rocky Linux ejecutando el siguiente comando.

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

2. A continuación, ejecute el siguiente comando a continuación para verificar que el repositorio de PostgreSQL esté disponible en su sistema.

sudo dnf -qy repolist

Si el repositorio de PostgreSQL est√° disponible en su sistema, ver√° varias versiones de los repositorios de PostgreSQL como se muestra en la siguiente captura de pantalla.

Agregar y verificar el repositorio de PostgreSQL

Instalación de PostgreSQL 13 en Rocky Linux

Para poder instalar PostgreSQL desde el repositorio oficial de PostgreSQL (no desde el repositorio de Rocky Linux), debe deshabilitar el módulo de repositorio de PostgreSQL integrado.

1. Ejecute el siguiente comando a continuación para deshabilitar el repositorio del módulo PostgreSQL incorporado.

sudo dnf module -qy disable postgresql

El comando ejecutará el comando DNF en modo silencioso y aceptará todas las claves gpg (opción -qy) para repositorios de PostgreSQL.

Deshabilitar el repositorio incorporado de PostgreSQL rocky linux

2. Despu√©s de eso, instale la √ļltima versi√≥n de PostgreSQL 13.4 desde el repositorio de PostgreSQL usando el comando dnf a continuaci√≥n.

sudo dnf install postgresql13-server

Escribe ‘y‘ y presione ‘Ingresar‘ para instalar PostgreSQL 13.x.

Instale PostgreSQL 13 en Rocky Linux

Luego espere la instalación de PostgreSQL.

Inicialización de la base de datos PostgreSQL

A continuación, una vez completada la instalación de PostgreSQL, debe inicializar la configuración de PostgreSQL y luego iniciar y habilitar el servicio de PostgreSQL.

1. Ejecute el siguiente comando para inicializar la configuración de la base de datos PostgreSQL.

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

Inicializar la configuración de la base de datos PostgreSQL

2. Después de eso, inicie y habilite el servicio PostgreSQL usando el siguiente comando.

sudo systemctl enable postgresql-13
sudo systemctl start postgresql-13

Ahora el servicio PostgreSQL est√° activo y ejecut√°ndose, y se ejecutar√° autom√°ticamente en cada arranque.

3. Ahora ejecute el siguiente comando para verificar el servicio PostgreSQL.

sudo systemctl status postgresql-13

Si su servicio PostgreSQL se est√° ejecutando, ver√° la salida verde como ¬ęactivo (en ejecuci√≥n)¬Ľ como a continuaci√≥n. De lo contrario, ver√° la salida roja como ¬ęha fallado¬Ľ siguiendo los registros de mensajes de error.

Iniciar y habilitar y verificar el estado del servicio PostgreSQL

Asegurar la implementación de PostgreSQL

Durante la instalaci√≥n, PostgreSQL crear√° un nuevo usuario del sistema y un nombre de usuario de la base de datos como ¬ępostgres¬ę. Y para esta etapa, configurar√° una nueva contrase√Īa para el ¬ępostgres¬Ľ usuario, tanto para el usuario del sistema y usuario de la base de datos.

1. Cambie la contrase√Īa del usuario predeterminado del sistema ¬ępostgres¬Ľ con el siguiente comando.

passwd postgres

Ahora escriba la nueva contrase√Īa para el usuario del sistema ¬ępostgres¬Ľ.

2. A continuaci√≥n, para cambiar la contrase√Īa del usuario de la base de datos ¬ępostgres¬Ľ, debe iniciar sesi√≥n en el shell de PostgreSQL.

Primero, inicie sesi√≥n como usuario del sistema ¬ępostgres¬Ľ usando el siguiente comando.

su - postgres

Ahora inicie sesión en el shell de PostgreSQL usando el comando psql a continuación.

psql

Ejecute la siguiente consulta para crear una nueva contrase√Īa para el usuario de base de datos ¬ępostgres¬Ľ predeterminado.

ALTER USER postgres WITH PASSWORD 'strongpostgrespassword';

Ahora escribe exit y presiona ¬ęCtrl+d¬Ľ para salir y desconectarse del shell de usuario ‘postgres’.

Cambie la contrase√Īa de postgres para el usuario del sistema y el usuario de la base de datos

Cambiar método de autenticación

De forma predeterminada, los usuarios locales de PostgreSQL se conectar√°n al shell de PostgreSQL utilizando el m√©todo ‘peer’. El m√©todo de autenticaci√≥n de pares funcionar√° solo para conexiones locales. En el entorno de desarrollo, puede usar este tipo de autenticaci√≥n, pero para producci√≥n, considere usar el m√©todo de autenticaci√≥n basado en contrase√Īa.

Para esta etapa, aprender√° c√≥mo cambiar el m√©todo de autenticaci√≥n de pares predeterminado a la autenticaci√≥n de contrase√Īa usando ‘l√°rgate-sha-256‘.Anuncio publicitario

1. Primero, inicie sesión en el shell de PostgreSQL usando el siguiente comando.

sudo -u postgres psql

Ahora ejecute la siguiente consulta para verificar la ubicaci√≥n de la configuraci√≥n de PostgreSQL ‘pg_hba.conf‘.

SHOW hba_file;
SHOW password_encryption;

Verá la salida como se muestra a continuación.

Mostrar la configuraci√≥n de PostgreSQL y el cifrado de contrase√Īas

Notar√° que la configuraci√≥n de PostgreSQL ¬ępg_hba.conf¬Ľ se encuentra en el ‘/var/lib/pgsql/13/datos‘ y el cifrado de contrase√Īa predeterminado para PostgreSQL en el sistema operativo basado en RHEL es ‘l√°rgate-sha-256‘.

Ahora escriba ‘\q’ para salir y salir del shell de PostgreSQL.

2. A continuaci√≥n, cambie el directorio de trabajo a ‘/var/lib/pgsql/13/datos‘ y editar la configuraci√≥n ‘pg_hba.conf‘ usando el editor nano.

cd /var/lib/pgsql/13/data/
nano pg_hba.conf

Al final de la l√≠nea, cambie el m√©todo de autenticaci√≥n local a ‘l√°rgate-sha-256‘ como a continuaci√≥n.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# ¬ęlocal¬Ľ is for Unix domain socket connections only
local   all             all                                     scram-sha-256
# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256


Ahora presiona ‘Control+x‘, escribe ‘y‘, y presione ¬ęIngresar¬Ľ para guardar y salir.

Con esta configuraci√≥n, se le solicitar√° la contrase√Īa para iniciar sesi√≥n en el shell de PostgreSQL.

3. Luego, aplique la nueva configuración reiniciando el servicio PostgreSQL usando el siguiente comando.

sudo systemctl restart postgresql-13

Ahora, cada vez que desee acceder al shell de PostgreSQL, debe escribir la contrase√Īa para la autenticaci√≥n.

4. Para asegurarse de la configuraci√≥n de autenticaci√≥n de contrase√Īa, inicie sesi√≥n en el shell de PostgreSQL con el siguiente comando.

su - postgres
psql

Ahora se le pedir√° una contrase√Īa para el usuario predeterminado ‘postgres’.

Escriba la contrase√Īa para el usuario de la base de datos ‘postgres’ y presione ‘Ingresar‘. Si su contrase√Īa es correcta, ver√° el shell de PostgreSQL de la siguiente manera. De lo contrario, ver√° el ‘FATAL‘ error porque la contrase√Īa es incorrecta.

Verificar la autenticación de PostgreSQL

Además, puede usar el comando de una línea para iniciar sesión en el shell de PostgreSQL como se muestra a continuación.

# Log in as default "postgres" user
sudo -u postgres psql

# Log in as another user
sudo -u postgres psql -U username


Verifique la autenticación de PostgreSQL con el comando psql

Crear nuevo usuario y base de datos para su aplicación

En esta etapa, aprender√° a crear un nuevo usuario y una base de datos en PostgreSQL.

1. Inicie sesión en el shell de PostgreSQL ejecutando el siguiente comando.

sudo -u postgres psql

Ahora escriba la contrase√Īa para el usuario de PostgreSQL ‘postgres‘.

2. Ejecute la consulta de PostgreSQL a continuaci√≥n para crear un nuevo usuario ‘johndoe’ con la contrase√Īa ‘johndoestrongpassword’ y otorgue al usuario privilegios para crear una nueva base de datos y rol.

CREATE USER johndoe WITH 
CREATEDB
CREATEROLE
PASSWORD 'johndoestrongpassword';

Crear nuevo usuario PostgreSQL

Después de eso, verifique al nuevo usuario usando la siguiente consulta.

\du

Ahora ver√° el nuevo usuario ‘johndoe’ con la lista de roles ‘Crear rol‘ y ‘Crear base de datos‘ como a continuaci√≥n.

Mostrar usuario de PostgreSQL

3. A continuación, para crear una nueva base de datos de usuarios en PostgreSQL, ejecute la siguiente consulta.

CREATE DATABASE johndoe OWNER johndoe;

Ahora verifique la nueva base de datos usando la siguiente consulta.

\l

Y ver√° la nueva base de datos ‘johndoe’ con el propietario ‘johndoe’ como se muestra en la siguiente captura de pantalla.

Cree una nueva base de datos PostgreSQL y muestre las bases de datos disponibles

Crear tabla e insertar datos

Después de crear una nueva base de datos y un nuevo usuario, aprenderá a crear una tabla, ingresar datos y mostrar datos de la base de datos.

1. Ahora inicie sesi√≥n en el shell de PostgreSQL como usuario ‘johndoe’ usando el siguiente comando.

su - postgres
psql -U johndoe

O puede usar el comando de una línea como se muestra a continuación.

sudo -u postgres psql -U johndoe

Ahora escriba la contrase√Īa para el usuario de PostgreSQL ‘johndoe’ y presione ‘Ingresar‘ iniciar sesi√≥n.

Conéctese al shell de PostgreSQL con el usuario johndoe

Como puede ver en la captura de pantalla, ahora ha iniciado sesi√≥n en el shell de PostgreSQL en la base de datos ‘johndoe=>‘.

2. Ahora ejecute la siguiente consulta para crear una nueva tabla ‘usuarios’ con algunas columnas ‘id, nombre, edad, direcci√≥n y salario’.

CREATE TABLE users (
   id INT PRIMARY KEY     NOT NULL,
   name           TEXT    NOT NULL,
   age            INT     NOT NULL,
   address        CHAR(50),
   salary         REAL
);

Para mostrar las tablas disponibles en la base de datos actual, use el ‘\d‘consultar como’describir‘ como a continuaci√≥n.

\d

Para mostrar columnas en la tabla, puede usar la misma consulta siguiendo el nombre de la tabla como se muestra a continuación.

\d users

A continuación se muestra el resultado similar que obtendrá.

Cree usuarios de tabla y muestre las columnas disponibles en la tabla

3. Luego, agregue nuevos datos a la tabla usando el ‘insertar‘ consulta como se muestra a continuaci√≥n.

INSERT INTO users (id,name,age,address,salary) VALUES (1, 'Paul', 32, 'California', 20000.00);
INSERT INTO users (id,name,age,address,salary) VALUES (2, 'Jesse', 35, 'Mexico', 30000.00);
INSERT INTO users (id,name,age,address,salary) VALUES (3, 'Linda', 27, 'Canada', 40000.00);

Insertar datos a la base de datos

4. Despu√©s de eso, puede mostrar todos los datos disponibles usando el ‘Seleccione‘ consulta como se muestra a continuaci√≥n.

SELECT * FROM users;

La opci√≥n ‘*’ volcar√° todas las columnas dentro de la tabla.

Para especificar la columna, puede usar el ‘Seleccione‘ consulta como se muestra a continuaci√≥n.

SELECT name,age,salary FROM users;

Ver√° una salida similar a la siguiente.

Mostrar datos de la base de datos PostgreSQL

Conclusión

¡Felicidades! Ahora ha aprendido a instalar PostgreSQL en Rocky Linux. Además, aprendió cómo implementar PostgreSQL de forma segura (mínima) y el uso básico de las consultas de PostgreSQL para administrar usuarios, bases de datos y tablas.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *