Una de las razones por las que me decanté por PostgreSQL como motor de base de datos frente a MariaDB actualmente, y MySQL en su día, fue precisamente gpAdmin. pgAdmin es la aplicación o plataforma mas popular tanto para la gestión y administración como para el desarrollo de bases de datos en PostgreSQL.
Se trata de una aplicación open source, multiplataforma, disponible en Linux, Unix, Mac OS X y Windows, especializada en la gestión de PostgreSQL.
PostgreSQL y pgAdmin
Hace poco escribí un artículo sobre PostgreSQL en la Raspberry Pi. Y es que desde que WordPress y PHP han invadido mi vida digital, he estado utilizando preferentemente MariaDB. Sin embargo, históricamente, siempre me he decantado por PostgreSQL, y una de las razones para ello, era precisamente pgAdmin 3.
Ahora que he regresado sobre mis propios pasos, para reencontrarme con PostgreSQL y pgAdmin me llevado, la sorpresa de que han liberado una nueva edición. Se trata de pgAdmin 4. Esta nueva versión varía significativamente de versiones anteriores.
pgAdmin 3 estaba implementada en C utilizando wxWidgets y la conexión con PostgreSQL, se realizaba utilizando la librería nativa libpq. Sin embargo, pgAdmin 4 es un servicio web desarrollado en Python, que implementa las siguientes tecnologías,
- Flask para el Backend
- Soporte Python en sus versiones: 2.7.x y 3.0 a 3.4
- Javascript/Jquery/Backbone para el FrondEnd
- Bootstrap
Instalar pgAdmin 4 en Ubuntu, Linux Mint y derivados
Aunque es posible instalar pgAdmin 4 a las bravas, lo recomendable es un entorno visual que nos asegure el funcionamiento. Sobre este aspecto escribí un artículo sobre Entorno virtual en Python, cuya lectura te recomiendo. Recordando sobre los entornos virtuales, indicar que la ventaja que presentan es que nos permiten permite ejecutar una determinada aplicación, sin afectar al sistema o a otros procesos.
Instalar pgAdmin 4 en un entorno virtual
Lo que haremos será instalar pgAdmin 4 en un entorno virtual para Python 3. Para ello lo primero es instalar las herramientas necesarias para poder utilizar entornos virtuales en Python 3.
sudo apt install python3-venv python3-pip libpq-dev python3-dev
Una vez ya tenemos todas las dependencias cubiertas, el siguiente paso es crear nuestro entorno virtual e instalar la aplicación. La aplicación la descargaremos de los servidores de PostgreSQL, de forma que nos aseguramos tenemos la última versión.
Para instalarlo, ejecutaremos las siguientes órdenes en un terminal,
cd python3 -m venv pgadmin4 cd pgadmin4 source bin/activate pip3 install --upgrade pip pip3 install https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v2.0/pip/pgadmin4-2.0-py2.py3-none-any.whl
El siguiente paso es editar el archivo de configuración para indicar que pgAdmin 4 se ejecutará en modo de único usuario. Para ello, debemos editar el siguiente archivo,
nano lib/python3.5/site-packages/pgadmin4/config.py
Esta última orden puede cambiar dependiendo de la versión de Python que tengas instalada. Por ejemplo, en Ubuntu 17.10 es python3.6
mientras que en Linux Mint 18.3 es python3.5
.
Tienes que buscar el siguiente código, que se encuentra aproximadamente por la línea 118
.
if builtins.SERVER_MODE is None: SERVER_MODE = True else: SERVER_MODE = builtins.SERVER_MODE
Tienes dos opciones, o bien, modificas la segunda línea que indica SERVER_MODE = True
por SERVER_MODE = False
o bien, añades después de la última línea, SERVER_MODE = False
, pero sin sangría, es decir,
if builtins.SERVER_MODE is None: SERVER_MODE = True else: SERVER_MODE = builtins.SERVER_MODE SERVER_MODE = False
Una vez realizados estos pasos, ya tenemos configurado nuestro pgAdmin4. Ahora, ya podemos iniciarlo. Para ello, ejecutaremos la siguiente orden,
python3 lib/python3.5/site-packages/pgadmin4/pgAdmin4.py
Al ejecutarlo nos mostrará lo siguiente Starting pgAdmin 4. Please navigate to https://127.0.0.1:5050 in your browser.
, tal y como puedes ver en la siguiente captura de pantalla,
Si abrimos en el navegador web la dirección que nos indica https://127.0.0.1:5050
, veremos lo siguiente,
En tu caso, nada mas iniciarlo, no verás ningún servidor conectado. Pero, lo puedes crear fácilmente, haciendo clic con el botón derecho del ratón sobre Servers, y seleccionando la opción Create > Server ...
. Esto te mostrará una ventana de diálogo como la que puedes ver a continuación,
Cumplimentas los datos y ya puedes trabajar con tu servidor de bases de datos.
Salir de tu entorno virtual
Una vez hayas terminado de trabajar con pgAdmin 4, tienes que pulsar Ctrl+C
y luego ejecutar la orden deactivate
para salir del entorno virtual.
Conclusiones
Aunque inicialmente pueda parecer algo compleja su instalación, realmente es bastante sencillo, sobre todo si ya te manejas con los entornos virtuales en Python. La ventaja que tiene sobre su predecesor es que podemos instalar esta aplicación directamente en la máquina que nos sirva PostgreSQL, con la ventaja que esto representa. De otra forma, cada uno de los administradores de las bases de datos tienen que instalar su propia aplicación.
Como contrapartida, hemos perdido el constructor gráfico de consultas, Graphical Query Builder. Esto es una verdadera lástima, puesto que es una ayuda mas que interesante para cuando pretendemos hacer una consulta compleja. En principio, parece que la intención es habilitar el Graphical Query Builder, en futuras versiones. Yo mientras tanto estoy utilizando la versión anterior, pgAdmin 3, para salir del paso. Sin embargo es bastante desconcertante, puesto que continuamente nos informa de que no tiene el soporte adecuado para la versión de base de datos que estamos gestionando.
Más información,