Cómo instalar phpMyAdmin en Debian 9 Stretch

Cómo instalar phpMyAdmin en Debian 9 Stretch

  • Autor de la entrada:
  • Categoría de la entrada:Linux
  • Comentarios de la entrada:4 comentarios

En esta entrada vamos a ver cómo instalar phpMyAdmin en Debian 9 Stretch paso a paso. Esta es una fantástica opción para poder administrar local o remotamente el servicio MariaDB o MySQL de tu servidor o VPS Debian, de forma muy visual gracias a su interfaz web.

Por citar algunas ventajas:

  • No es necesario tener activado el acceso remoto a MariaDB o MySQL Server, lo que evita ataques directos.
  • Se puede administrar MariaDB o MySQL vía web desde cualquier lugar sin necesitar un cliente específico.

Interesante, ¿verdad? Pues vamos a dejarlo todo preparado en escasos minutos.

Antes de instalar phpMyAdmin en Debian 9 Stretch

Para poder seguir esta guía de instalación de phpMyAadmin en Debian 9 Stretch necesitas lo siguiente:

  • Un sistema Debian 9 Stretch actualizado.
  • Tener instalada una pila tipo LAMP o, lo que es lo mismo, servicio web con MariaDB/MySQL y PHP.
  • Acceso a línea de comandos como root o usuario con permisos de sudo.
  • Conexión a Internet.

Si aún no tienes instalado este tipo de entorno, puedes consultar la guía de instalación LAMP en Debian 9 Stretch. Es importante tener configurado el acceso HTTPS para el servicio web, aunque por motivos didácticos excepcionalmente en esta guía trabajamos sobre HTTP.

Como ves no necesitamos muchas cosas, así que vamos a ponernos manos a la obra.

Cómo descargar phpMyAdmin para Debian 9 Stretch

Vamos a descargar phpMyAdmin para Debian 9 Stretch desde el sitio oficial del proyecto, ya que la versión disponible en los repositorios del sistema ya está algo anticuada. Visitando la sección de descargas encontramos la última versión estable:

como descargar phpmyadmin para debian 9 stretch

Encontraremos distintos formatos de compresión del paquete de phpMyAdmin, como .zip, .tar.gz o .tar.xz. Puedes elegir el que te interese y realizar la descarga directamente desde el navegador, aunque en este tutorial vamos a copiar el enlace del paquete con formato .tar.xz para descargarlo desde consola con el comando wget:

~$ wget https://files.phpmyadmin.net/phpMyAdmin/5.0.2/phpMyAdmin-5.0.2-all-languages.tar.xz

Cómo instalar phpMyAdmin en Debian 9 Stretch

El proceso de instalar phpMyAdmin en Debian 9 Stretch requiere la realización de una serie de tareas y pasos concretos que vamos a ir detallando a continuación.

Archivos de phpMyAdmin

Descomprimiremos el paquete que acabamos de descargar en el paso anterior directamente en la ubicación definitiva para la aplicación:

~$ sudo tar xf phpMyAdmin-5.0.2-all-languages.tar.xz -C /var/www/

El nombre del subdirectorio que se crea contiene el número de versión de phpMyAdmin, así que es buena práctica crear un enlace simbólico que no contenga la versión, para facilitar el mantenimiento y configuración de la aplicación:

~$ sudo ln -s /var/www/phpMyAdmin-5.0.2-all-languages/ /var/www/phpMyAdmin

Como phpMyAdmin debe poder escribir en su propio directorio de instalación, concederemos la propiedad de dicho directorio al usuario con el que corre el servicio web:

~$ sudo chown www-data /var/www/phpMyAdmin/

Servicio web

Como la ubicación de phpMyAdmin que hemos elegido está fuera del alcance de la navegación web, crearemos una configuración de Apache exclusiva para la aplicación:

~$ sudo nano /etc/apache2/sites-available/phpmyadmin.conf

La configuración consiste en la creación del alias que apunta al directorio de phpMyAdmin:

Alias /phpmyadmin /var/www/phpMyAdmin

Guardamos el archivo y habilitamos la nueva configuración:

~$ sudo a2ensite phpmyadmin

Y recargamos la configuración del servicio web para que el alias esté disponible:

~$ sudo systemctl reload apache2

PHP

Vamos a instalar la extensiones que requiere phpMyAdmin en Debian 9, para lo que en primer lugar actualizaremos las listas de paquetes:

~$ sudo apt update

E instalamos las extensiones con apt:

~$ sudo apt install -y php-mbstring

Terminada la instalación, recargaremos la configuración del servicio web o PHP, según corresponda:

~$ sudo systemctl reload apache2

Configuración inicial de phpMyAdmin en Debian 9

Antes de acceder a phpMyAdmin tendremos que crear el archivo de configuración inicial, partiendo del archivo de ejemplo que viene incluido en el paquete:

~$ sudo cp /var/www/phpMyAdmin/config.sample.inc.php /var/www/phpMyAdmin/config.inc.php

Editaremos este nuevo archivo de configuración:

~$ sudo nano /var/www/phpMyAdmin/config.inc.php

El primer paso será darle un valor a la variable ‘blowfish_secret‘, que por defecto no lo tiene y sirve para cifrar las cookies de acceso:

...
/**
 * This is needed for cookie based authentication to encrypt password in
 * cookie. Needs to be 32 chars long.
 */
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
...

Quedaría algo así:

...
$cfg['blowfish_secret'] = 'XxXxXxXxXxXxXxXxXxXxXxXxXxXxXxXx';
...

Seguiremos con la sección «User used to manipultate with storage«:

...
/* User used to manipulate with storage */
// $cfg['Servers'][$i]['controlhost'] = '';
// $cfg['Servers'][$i]['controlport'] = '';
// $cfg['Servers'][$i]['controluser'] = 'pma';
// $cfg['Servers'][$i]['controlpass'] = 'pmapass';
...

Activaremos las variables controluser y controlpass, eliminando los caracteres // iniciales, y crearemos una contraseña nueva:

...
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'XXXXXXXX';
...

Finalmente, activaremos por completo la sección «Storage database and tables«:

...
/* Storage database and tables */
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
...
$cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
$cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
...

Ya podemos guardar los cambios y cerrar el archivo.

Servicio de bases de datos

Puesto que phpMyAdmin ofrece características avanzadas a través del uso de una base de datos propia, algunas de cuyas características hemos activado en el paso anterior, conectaremos al servicio con el cliente mysql y nuestro usuario administrador para crear el soporte necesario:

~$ mysql -u root -p

Creamos la base de datos:

> create database phpmyadmin;

A continuación crearemos el usuario, teniendo en cuenta el nombre de usuario y la contraseña especificados en el archivo de configuración de phpMyAdmin.

En MySQL 5.x ó MariaDB creamos el usuario de forma simple:

> create user pma@localhost identified by 'XXXXXXXX';

Mientras que en MySQL 8 a la hora de crear el usuario especificamos también el plugin de acceso adecuado:

> create user pma@localhost identified with mysql_native_password by 'XXXXXXXX';

A continuación concedemos los permisos necesarios sobre la base de datos al usuario:

> grant all privileges on phpmyadmin.* to pma@localhost;

Y cerramos la conexión:

> exit

Ya está creada la base de datos para phpMyAdmin, pero es necesario inicializarla, para lo que usamos un script SQL que proporciona el paquete de la aplicación:

~$ mysql -u pma -p phpmyadmin < /var/www/phpMyAdmin/sql/create_tables.sql

Cargamos este script utilizando el nuevo usuario para phpMyAdmin, por lo que habrá que proporcionar la contraseña que le hemos asignado.

Cómo acceder a phpMyAdmin en Debian 9 Stretch

Tras esta rápida instalación y configuración de phpMyAdmin en nuestro sistema Debian 9, podemos acceder a este servicio web añadiendo el alias /phpmyadmin a cualquier dirección IP o dominio (incluyendo localhost) que apunte a la máquina Debian 9.

Por ejemplo, en mi caso la máquina Debian 9 que estoy configurando es accesible desde el dominio debian9.local, por lo que accedo a phpMyAdmin a través de la URL http://debian9.local/phpmyadmin en el navegador:

como acceder a phpmyadmin en debian 9 stretch
Página de acceso a phpMyAdmin en Debian 9 Stretch

 

Inmediatamente aparecerá la página de login o inicio de sesión de phpMyAdmin, donde introduciremos el usuario y la contraseña de cualquier usuario de MariaDB dado de alta en el sistema. Si las credenciales son correctas, entramos en la pantalla principal de phpMyAdmin:

phpmyadmin en debian 9 stretch
Pantalla principal de trabajo de phpMyAdmin en Debian 9 Stretch

 

Y ya podremos trabajar con total funcionalidad, creando bases de datos, tablas, exportando e importando datos, etc. siempre dentro de los privilegios que en particular tenga concedidos cada usuario del servicio de bases de datos.

Conclusión

Ahora que ya sabes cómo instalar phpMyAdmin en Debian 9 estás listo para poder administrar tus bases de datos con todas las ventajas que ofrece este potente frontend web para MariaDB/MySQL. Su manejo es muy intuitivo, por lo que no es objeto de este tutorial.

Si tienes alguna duda, pregunta, sugerencia de mejoras, quieres reportar un error o solicitar temas para nuevos tutoriales y guías, déjame un comentario.

¿Te ha servido esta guía de instalación de phpMyAdmin en Debian 9 Stretch? ¿Estás deseando agradecérmelo y no sabes cómo? Pues nada más fácil, ¡puedes invitarme a un café!

O puedes deshacerte de la calderilla que no usas en PayPal:

¡Gracias!

 

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

Esta entrada tiene 4 comentarios

  1. Joserra

    Entonces, ¿este método sólo sirve para MariaDB?

    1. chachocool

      La actualización de este artículo cubre la instalación de la versión oficial de phpMyAdmin, por lo que es válido para MariaDB y MySQL. La versión del paquete de Debian 9 para phpMyAdmin sólo sirve para MariaDB, al formar este motor de bases de datos parte de la distribución, siendo sin embargo MySQL un software externo. Lo normal es que los paquetes de la distribución, como phpMyAdmin, estén diseñados para interactuar y depender con otros paquetes de la misma distribución.

  2. martin

    Me anduvo en Debian 10 sobre armhf.

    1. Chacho Cool

      ¡Me alegra saberlo, Martín!

Deja una respuesta