Postgres

=Introducción=

PostgreSQL, o Postgres, es un sistema de administración de bases de datos relacionales que proporciona una implementación del lenguaje de consultas SQL.

En esta guía, se podrá ver cómo instalar Postgres en una VM con Ubuntu 16.04 y algunas formas básicas de uso.

=Instalación= Podemos instalar el Postgres desde los repositorios de Ubuntu, con apt-get:

sudo apt-get update && sudo apt-get install postgresql postgresql-contrib

=Manejo básico=

Uso de cuenta de postgres
El procedimiento de instalación creó a un usuario llamado postgres que está asociado con el rol Postgres por defecto. Para utilizar Postgres, puede identificarse con esa cuenta.

Este usuario es un usuario Unix con login permitido, por lo que para utilizar este usuario, solo se debe cambiar de usuario con:

sudo su - postgres

Crear usuario con permiso para creación de bases de datos
CREATE ROLE jenkins WITH PASSWORD 'BLABLA' CREATEDB;

Cambiar contraseña de usuario
Para cambiar la contraseña del usuario en postgres a través de la terminal de Ubuntu, se debe ejecutar el siguiente comando:

$ sudo su - postgres

Con este comando se ingresa al usuario del Postgres. Luego:

$ psql

postgres=# alter USER postgres with password '12345'

\q

Con el comando, alter USER cambiamos la contraseña, para este ejemplo, la nueva contraseña será 12345. Y, con el comando \q salimos de la edición.

Verificar procesos en PostgreSQL
La herramienta pg_top es muy útil para ver los procesos corriendo en el postgres.

sudo apt-get install pgtop
 * Para instalar la herramienta

pg_top
 * Para utilizar la herramienta

last pid: 30215; load avg:  0.44,  0.36,  0.46;       up 90+01:06:22                                                                   17:30:55 9 processes: 1 running, 8 sleeping CPU states: 1.8% user,  0.0% nice,  0.8% system, 97.2% idle,  0.2% iowait Memory: 1933M used, 71M free, 3836K buffers, 1161M cached Swap: 22M used, 1002M free, 2904K cached
 * Este es el resultado de la misma

PID USERNAME PRI NICE SIZE   RES STATE   TIME   WCPU    CPU COMMAND 28463 postgres 20    0  142M   41M sleep  10:33 23.87%  1.60% postgres: postgres sms_unified 127.0.0.1(49187) idle 28428 postgres 20    0  142M   40M sleep  67:59  0.00%  0.00% postgres: postgres sms_unified 127.0.0.1(49172) idle 28462 postgres 20    0  143M   42M sleep  45:45  0.00%  0.00% postgres: postgres sms_unified 127.0.0.1(49186) idle 28441 postgres 20    0  142M   40M sleep  37:56  0.86%  0.00% postgres: postgres sms_unified 127.0.0.1(49177) idle 28464 postgres 20    0  141M   40M sleep  16:35  0.00%  0.00% postgres: postgres sms_unified 127.0.0.1(49188) idle 28465 postgres 20    0  142M   40M sleep   2:19  1.75%  0.00% postgres: postgres sms_unified 127.0.0.1(49189) idle 28439 postgres 20    0  136M   17M sleep   0:00  0.00%  0.00% postgres: postgres sms_unified 127.0.0.1(49176) idle 28461 postgres 20    0  131M   10M sleep   0:00  0.00%  0.00% postgres: postgres sms_unified 127.0.0.1(49185) idle 30216 postgres 20    0  129M 4384K run     0:00  0.00%  0.00% postgres: postgres postgres [local] idle


 * Para ver el full command line presionar la letra C
 * Para ver un query en particular, anotar el PID del proceso deseado, y presionar la letra Q