Introducción

PostgreSQL es probablemente una de las bases de datos de código abierto más avanzadas en este momento. También está siendo desarrollado activamente por desarrolladores de código abierto en todo el mundo. Algunas de las funciones principales proporcionadas por PostgreSQL incluyen las siguientes:

  • Alta extensibilidad ya que los usuarios pueden definir sus propias funciones y métodos de acceso.
  • Soporte para SQL como las declaraciones de unión.
  • Comprobación de la validez de la base de datos mediante integridad referencial.
  • API flexible para soporte de desarrollo en diferentes lenguajes como PHP, Python y C ++.
  • El soporte de paralelismo de múltiples versiones resuelve el problema del bloqueo de lectura causado por otros usuarios que escriben en la misma base de datos, lo que resulta en un retraso en el acceso a los datos.
  • El registro de escritura anticipada permite crear puntos de recuperación en caso de que la base de datos falle antes de que se escriban los datos.

Con eso explicado, profundicemos en lo básico.

Antes de que empieces

Para realizar esta tarea, debe configurar lo siguiente:

  • Un VPS o servidor dedicado que ejecute CentOS 7.
  • Un usuario no root con permisos sudo.

pasos

Actualice los paquetes de su sistema VPS e instale las dependencias:

$ sudo yum update && sudo yum upgrade

Instale el paquete PostgreSQL en su VPS y su paquete de funciones adicional, que es necesario para funciones como criptografía, manipulación de protocolos, cifrado automático de tipos de datos de contraseña, etc.

$ sudo yum -y install postgresql && sudo yum -y install postgresql-contrib

Una vez completada la instalación, inicialice la base de datos y habilítela para que se inicie automáticamente al arrancar.

$ postgresql-setup initdb
$ sudo systemctl start postgresql
$ sudo systemctl enable postgresql

Verifique la versión para verificar la instalación ejecutando el siguiente comando

$ postgres --version

El resultado esperado debería ser el siguiente.

postgres (PostgreSQL) 9.2.24

Nota especial: la salida de la versión puede variar. Es posible que se hayan realizado actualizaciones, por lo tanto, una versión diferente.

Cambie la contraseña de usuario predeterminada de Postgres Linux.

$ sudo passwd postgres

Ingrese su contraseña segura y confírmela.

Cambie la contraseña de usuario de la base de datos de Postgres que realiza tareas administrativas de la base de datos. Asegúrese de reemplazar la contraseña con su propia contraseña segura.

$ sudo su - postgres -c "psql"
postgres=# ALTERUSER postgres WITHPASSWORD'password';

Acceso local seguro

Nota especial: la contraseña establecida anteriormente se utiliza para conectarse a través de una red. Cuando se conecta localmente, la autenticación se realiza mediante el método de autenticación de pares. Entonces necesitas asegurar esto.

Edite el archivo pg_hba para asegurar la conexión de la base de datos de PostgreSQL local. Usando su editor de terminal preferido, abra el archivo:

$ sudo vim /var/lib/pgsql/data/pg_hba.conf

Si usted tiene ajustar Los números en el editor de VIM en la línea 80 cambian el método de autenticación de pares en los métodos local, IPv4 e IPv6 (opcional) en md5 para habilitar la autenticación con el algoritmo hash md5. Debería verse similar al que se muestra a continuación.

# TYPE  DATABASE        USER            ADDRESS                 METHOD
#"local" is for Unix domain socket connections only
local   all             all                                     md5
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Salga mientras guarda los cambios y vuelva a cargar el servicio postgresql para reflejar los cambios

$ sudo systemctl reload postgresql

Crea una nueva base de datos

Puede cambiar el nombre de la base de datos como desee.

$ sudo su - postgres -c "psql"
postgres=# CREATEDATABASEtestdb;

Crea un nuevo rol.

$ sudo su - postgres -c "psql"
postgres=# CREATEROLE testuser WITHPASSWORD'your_password' NOLOGIN

Nota especial: las siguientes cláusulas son opcionales. Puede crear un nuevo rol usando el siguiente comando en el símbolo del sistema de postgres:

$ createuser --interactive

Conclusión

Hemos instalado con éxito PostgreSQL en CentOS 7 VPS y hemos creado una nueva función. Cuando haya terminado, puede jugar con la base de datos para explorar las funciones que ha creado. Agregue nuevas tablas con columnas, agregue, edite y elimine filas, etc. También puede consultar la administración de la base de datos PostgreSQL en CentOS 7.