pgAdmin4 es una herramienta de administración de PostgreSQL de código abierto diseñada para múltiples versiones de bases de datos de PostgreSQL. pgAdmin4 se ha creado con todas las funciones que se pueden encontrar en el servidor PostgreSQL. Escrito en python y jquery y se puede instalar en Windows, Mac y Linux. Proporciona múltiples modelos de implementación, se puede instalar como una aplicación de escritorio o una aplicación de servidor que se ejecuta detrás del servidor web, como Apache2.
En este tutorial, le mostraremos la instalación y configuración de pgAdmin4 'Server Mode' en el servidor Ubuntu 18.04. pgAdmin4 se ejecutará como un servicio uWSGI detrás del servidor web Apache y cubriremos las instalaciones de pgAdmin4 desde el repositorio y desde la fuente.
Requisitos previos
- Servidor Ubuntu 18.04
- Privilegios de raíz
- Conocimiento básico de la instalación de PostgreSQL
Instalar PostgreSQL en el servidor Ubuntu 18.04
En primer lugar, le mostraremos la instalación y configuración básica de la base de datos PostgreSQL. Se puede instalar desde el repositorio oficial de PostgreSQL y desde el repositorio predeterminado de Ubuntu.
Si desea instalar la base de datos de PostgreSQL desde el repositorio oficial, agregue la clave y el repositorio de Postgres ejecutando los siguientes comandos.
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
Después de eso, actualice todos los repositorios e instale PostgreSQL.
sudo apt update
sudo apt -y install postgresql postgresql-contrib
Después de la instalación, inicie sesión en el usuario predeterminado llamado 'postgres' y ejecute la interfaz de línea de comandos de PostgreSQL 'psql'.
su - postgres
psql
Ahora agregue una nueva contraseña para el usuario de Postgres ejecutando la siguiente consulta en la interfaz de psql.
\password postgres
TYPE YOUR PASSWORD
Instalar pgAdmin4 desde el repositorio
De forma predeterminada, PostgreSQL proporciona su propio repositorio para instalar los paquetes pgAdmin4.
1. Agregar repositorio de PostgreSQL
Descargue la clave de PostgreSQL y agregue el repositorio ejecutando el siguiente comando.
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" >> /etc/apt/sources.list.d/pgdg.list'
2. Instalar pgadmin4
Después de eso, actualice todos los repositorios disponibles e instale los paquetes pgAdmin4 usando el comando apt a continuación.
sudo apt update
sudo apt install pgadmin4 pgadmin4-apache2 -y
Durante la instalación, se le solicitará la configuración del nombre de usuario del correo electrónico y la configuración de la contraseña.
Escriba su propia dirección de correo electrónico que se utilizará como nombre de usuario.
Luego escriba la contraseña.
Una vez que se complete la instalación, abra su navegador web y escriba la dirección IP del servidor como se muestra a continuación.
http://10.9.9.15/pgadmin4/
Y se le mostrará la página de inicio de sesión de pgAdmin4. Inicie sesión con su dirección de correo electrónico y contraseña.
Y obtendrá el panel de pgAdmin.
Instalar pgAdmin4 desde la fuente
Para instalar pgAdmin4 desde la fuente, necesitamos instalar algunas dependencias de paquetes en el sistema y configurar el servidor web Apache manualmente para servir el servicio pgAdmin4 uWSGI.
- Crear usuarios y directorios
En primer lugar, queremos instalar pgAdmin4 en el usuario no root. Entonces necesitamos crear un nuevo usuario y crear algunos directorios para pgAdmin4.
Cree un nuevo usuario llamado 'ahmad' ejecutando el siguiente comando.
useradd -m -s /bin/bash ahmad
passwd ahmad
Ahora cree el directorio de registro pgAdmin4 y los directorios de datos para las 'sesiones' y el 'almacenamiento'.
mkdir -p /var/log/pgadmin4/
mkdir -p /var/lib/pgadmin4/{sessions,storage}
Después de eso, cambie el propietario de todos esos directorios al usuario 'ahmad'.
chown -R ahmad:ahmad /var/log/pgadmin4/ /var/lib/pgadmin4/
- Dependencias de instalación
Instale todas las dependencias de paquetes necesarias, como Python, Python pip y virtualenv para la instalación de pgAdmin4 ejecutando los siguientes comandos.
sudo apt install build-essential libssl-dev libffi-dev libgmp3-dev virtualenv python-pip libpq-dev python-dev -y
Después de eso, instale el servidor web Apache2 y el mod_wsgi.
sudo apt install apache2 apache2-utils libapache2-mod-wsgi libexpat1 ssl-cert python -y
- Crear entorno virtual Python
Para esta guía, vamos a instalar pgAdmin4 dentro del entorno virtual de Python.
Inicie sesión en el usuario 'ahmad' y cree un nuevo entorno virtual de python llamado 'pgamdin4'.
su - ahmad
virtualenv pgadmin4
Ahora ve al directorio 'pgadmin4' y activa el entorno virtual.
cd pgadmin4/
source bin/activate
- Instalar pgadmin4
Dentro del entorno virtual de python, descargue el archivo del paquete pgAdmin4 whl.
wget https://ftp.postgresql.org/pub/pgadmin/pgadmin4/v3.6/pip/pgadmin4-3.6-py2.py3-none-any.whl
Luego instale el paquete usando el comando pip.
pip install pgadmin4-3.6-py2.py3-none-any.whl
Espere la instalación de pgAdmin4.
Para ejecutar pgAdmin4 en 'Modo servidor', necesitamos agregar una configuración adicional al directorio de paquetes del sitio de python.
Vaya al directorio 'lib/python-version/site-packages/pgadmin4' y cree un nuevo archivo de configuración llamado 'config_local.py'.
cd lib/python2.7/site-packages/pgadmin4/
vim config_local.py
Pegue la configuración a continuación.
LOG_FILE = '/var/log/pgadmin4/pgadmin4.log' SQLITE_PATH = '/var/lib/pgadmin4/pgadmin4.db' SESSION_DB_PATH = '/var/lib/pgadmin4/sessions' STORAGE_DIR = '/var/lib/pgadmin4/storage' SERVER_MODE = True
Guardar y cerrar.
Después de eso, ejecute el script 'setup.py'.
python setup.py
Y se le pedirá que configure la contraseña y el correo electrónico del administrador. Escriba sus datos y se completará la instalación de pgAdmin.
Si recibe una notificación sobre el cambio de nombre del paquete 'psycopg2' en la próxima versión, simplemente instale la versión binaria del paquete.
pip install psycopg2-binary
Después de eso, desactive el entorno virtual de python y cambie el propietario de los directorios de registro y datos de pgAdmin4 al usuario 'www-data'.
desactivar
chown -R www-data:www-data /var/lib/pgadmin4/
chown -R www-data:www-data /var/log/pgadmin4/
- Configurar Apache2
Para esta guía, el servidor web Apache2 se usará como proxy inverso para la aplicación uWSGI pgAdmin4.
Vaya al directorio '/etc/apache2/sites-available' y cree un nuevo archivo de host virtual llamado 'pgadmin4.conf'.
cd /etc/apache2/sites-available/
vim pgadmin4.conf
Cambie el 'ServerName' con su propio nombre de dominio y péguelo.
<VirtualHost *:80> ServerName pgadmin.ahmad-labs.io LogLevel debug ErrorLog ${APACHE_LOG_DIR}/pgadmin-error.log CustomLog ${APACHE_LOG_DIR}/pgadmin-access.log combined LoadModule wsgi_module modules/mod_wsgi.so WSGIDaemonProcess pgadmin processes=1 threads=25 python-home=/home/ahmad/pgadmin4 WSGIScriptAlias / /home/ahmad/pgadmin4/lib/python2.7/site-packages/pgadmin4/pgAdmin4.wsgi <Directory "/home/ahmad/pgadmin4/lib/python2.7/site-packages/pgadmin4/"> WSGIProcessGroup pgadmin WSGIApplicationGroup %{GLOBAL} Require all granted </Directory> </VirtualHost>
Guardar y cerrar.
Ahora pruebe la configuración y active los hosts virtuales pgAdmin4.
apachectl configtest
a2ensite pgadmin4
Asegúrese de que no haya ningún error, luego reinicie el servicio Apache2.
systemctl restart apache2
Finalmente, pgAdmin4 ahora está funcionando como un servicio uWSGI detrás del navegador web Apache.
Ahora abra su navegador web y escriba el nombre de dominio pgadmin.
http://pgadmin.hakase-labs.io/
Y obtendrá la página de inicio de sesión de pgAdmin4 como se muestra a continuación.
Conectarse a la base de datos PostgreSQL con pgAdmin4
Inicie sesión en el Panel de pgAdmin4 con su dirección de correo electrónico y contraseña.
Ahora haga clic en el botón 'Agregar servidor', escriba los detalles del servidor PostgreSQL que desea conectar.
Y haga clic en 'Guardar'.
Después de eso, obtendrá detalles sobre su base de datos PostgreSQL en el panel izquierdo.
Finalmente, pgAdmin4 ahora está instalado en Ubuntu 18.04
Enlaces
- https://www.pgadmin.org/