Cómo instalar PostgreSQL en Debian 9 Stretch

Cómo instalar PostgreSQL en Debian 9 Stretch

En esta entrada mostraremos cómo instalar PostgreSQL en Debian 9 paso a paso, un motor de bases de datos de código abierto que puede resultar complicado de instalar si vienes de utilizar otras bases de datos más populares. Al final de esta guía habrás logrado instalar y poner en funcionamiento PostgreSQL Server en Linux Debian 9 Stretch y podrás conectar desde el cliente de consola con tu usuario.

Antes de instalar PostgreSQL en Debian 9

Para poder instalar PostgreSQL Server en Linux Debian 9 Stretch siguiendo esta guía necesitamos cumplir los siguientes requerimientos mínimos:

  • Un sistema Debian 9 GNU/Linux Stretch actualizado.
  • Un usuario con permisos de sudo o el mismo root (menos recomendable).
  • Conexión a Internet.

Cómo instalar PostgreSQL en Debian 9

Vamos a instalar PostgreSQL usando los paquetes disponibles en el repositorio oficial de Debian 9. Así que la primera acción será actualizar la información de los repositorios:

~$ sudo apt update

Con las listas de paquetes actualizadas ya podemos descargar e instalar PostgreSQL con apt:

~$ sudo apt -y install postgresql

A diferencia de otras versiones de Linux y sistemas Unix, en Debian 9 la instalación deja PostgreSQL Server perfectamente inicializado y funcionando. Mientras que en otros sistemas una vez instalado PostgreSQL es necesario inicializar la base de datos antes de lanzar el servicio por primera vez, en Debian 9 ese trabajo lo hace apt por nosotros. De hecho, puedes comprobar que el servicio está iniciado y disponible:

~$ systemctl status postgresql
● postgresql.service - PostgreSQL RDBMS
   Loaded: loaded (/lib/systemd/system/postgresql.service; enabled; vendor preset: enabled)
   Active: active (exited) since Sat 2019-07-06 15:03:45 CEST; 6min ago
 Main PID: 1281 (code=exited, status=0/SUCCESS)
   CGroup: /system.slice/postgresql.service

Cómo conectar con PostgreSQL desde consola en Debian 9

Durante la instalación de PostgreSQL en Debian se crea un usuario y un grupo postgres con los que funciona el servicio. Pero además este usuario postgres es administrador por lo que inicialmente sólo podemos conectar con el servicio con este usuario.

PostgreSQL trabaja con un sistema de roles, que vienen a ser algo parecido a los usuarios de otros sistemas de bases de datos. Si intentamos conectar con el cliente psql y nuestro usuario recibiremos este mensaje:

~$ psql
psql: FATAL:  no existe el rol «chacho»

Ni siquiera es posible conectar como root a través de sudo:

~$ sudo psql
psql: FATAL:  no existe el rol «root»

La única forma de conectar con el servidor PostgreSQL es usando el usuario postgres con sudo:

~$ sudo -u postgres psql
psql (9.6.13)
Digite «help» para obtener ayuda.

postgres=#

Si has copiado el ejemplo, introduciendo \q se sale del cliente y vuelves a consola.

Cómo crear tu rol de PostgreSQL en Debian 9

Vamos a crear un nuevo rol de PostgreSQL con tu usuario de Debian 9. Para ello usaremos el comando createuser de PostgreSQL como usuario postgres:

~$ sudo -u postgres createuser --interactive
Ingrese el nombre del rol a agregar: chacho
¿Será el nuevo rol un superusuario? (s/n) s
~$

Ya tenemos creado un rol con el mismo nombre que nuestra cuenta de Debian, en este caso además se tratará de un superusuario, para poder administrar otros usuarios y bases de datos sin necesidad de recurrir al usuario postgres con sudo. Sin embargo, aún no podemos conectar con el cliente psql, si lo intentas obtendrás un error:

~$ psql
psql: FATAL:  no existe la base de datos «chacho»

Esto ocurre porque cuando se inicia sesión en PostgreSQL se vincula al rol correspondiente con una base de datos con el mismo nombre que el rol. En este caso intentamos acceder con el rol chacho, pero aún no existe la base de datos chacho. Así que usaremos por última vez el usuario postgres para crear esa base de datos mediante el comando createdb:

~$ sudo -u postgres createdb chacho

Tenemos rol, tenemos base de datos… es hora de iniciar sesión con el cliente psql y nuestra cuenta de Debian:

~$ psql
psql (9.6.13)
Digite «help» para obtener ayuda.

chacho=#

Y ya podemos empezar a usar el lenguaje SQL para crear y modificar tablas, insertar y editar datos, realizar consultas, etc. Por ejemplo para crear una tabla de ejemplo en nuestra base de datos, lo hacemos mediante SQL:

chacho=# create table pruebas ();
CREATE TABLE
chacho=# \d
       Listado de relaciones
 Esquema | Nombre  | Tipo  | Dueño
---------+---------+-------+--------
 public  | pruebas | tabla | chacho
(1 fila)

chacho=#

Con «create table…» creamos la tabla y con el comando \d vemos las tablas de la base de datos. El uso de SQL y los comandos del cliente psql exceden del alcance de esta pequeña guía de instalación. De todas formas, el comando \h o \h comando te proporcionará mucha ayuda sobre los comandos disponibles.

Instalación de aplicaciones que necesitan PostgreSQL en Debian

Con nuestro rol administrador podremos crear otros roles cada vez que queramos instalar en nuestro sistema apliaciones que trabajen sobre una base de datos PostgreSQL y requieran su propia base.

Conclusión

Ahora que ya sabes cómo instalar PostgreSQL en Debian 9 ya puedes empezar a trabajar con SQL para tus propios desarrollos o crear bases de datos para aplicaciones y sistemas que se apoyan en este motor de bases de datos de código abierto.

Si tienes alguna pregunta, duda, sugerencia o quieres informar de algún error puedes dejar un comentario.

Y si te ha servido esta guía para poner por fin en marcha PostgreSQL sobre Debian, ¡siempre puedes invitarme a un café!

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (1 votos, promedio: 5,00 de 5)
Cargando…

Esta entrada tiene un comentario

  1. Muy bueno, muchas gracias. Vendría bien alguna lista de (por ejemplo) las cinco cosas más usadas de PostgreSQL después de ser instalado, o algo así. Se me ha hecho corto y me he quedado con ganas de más.

Deja un comentario

Cerrar menú

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información

ACEPTAR
Aviso de cookies