Cómo instalar phpMyAdmin en CentOS 6

En este artículo veremos cómo instalar phpMyAdmin en CentOS 6 paso a paso, de modo que podrás administrar el servicio de bases de datos MariaDB/MySQL de tu servidor o VPS CentOS, de forma cómoa gracias a la interfaz web de esta aplicación.

Antes de instalar phpMyAdmin en CentOS 6

Para poder seguir hasta el final esta guía de instalación de phpMyAdmin en CentOS 6 deberías cumplir estos requisitos básicos:

  • Un sistema CentOS 6 actualizado.
  • Una pila o entorno tipo LAMP (servidor web con PHP y MariaDB/MySQL).
  • Los paquetes wget y xz.
  • Acceso a consola como root o un usuario con permisos de sudo.
  • Conexión a Internet.

Si aún no dispones del entorno necesario, es aconsejable revisar previamente nuestra guía de instalación LAMP en CentOS 6.

Cómo descargar phpMyAdmin para CentOS 6

Vamos a descargar phpMyAdmin para CentOS 6 desde el sitio web del proyecto, ya que en los repositorios de la distribución no existen paquetes actualizados.

como descargar phpmyadmin para centos 6

En la sección de descargas encontraremos las últimas revisiones de la versión 4 y de la nueva versión 5, siendo esta última la que descargaremos en este tutorial:

descargar phpmyadmin en centos 6

Disponemos de varios formatos de compresión del paquete de phpMyAdmin, como .zip, .tar.gz y .tar.xz. Elegiremos el de mayor compresión para agilizar la descarga. En este tutorial copiaremos el enlace y realizaremos la descarga 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 CentOS 6

Para poder instalar phpMyAdmin en CentOS 6 debemos seguir una serie de pasos que detallamos a continuación.

Archivos de phpMyAdmin

Extraeremos el contenido del archivo que acabamos de descargar directamente en su ubicación definitiva:

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

El nombre del directorio contiene números de versión, así que podemos renombrarlo o crear un enlace simbólico:

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

Como phpMyAdmin necesita almacenar archivos temporales en su propio directorio de instalación, concederemos la propiedad de este directorio al usuario con el que corre el servicio web (apache para Apache en CentOS 6):

~$ sudo chown apache /var/www/html/phpmyadmin/

PHP

La aplicación phpMyAdmin necesita la presencia en CentOS 6 de ciertas extensiones de PHP, como puede ser mbstring. Nos aseguramos de que estén instaladas:

~$ sudo yum install -y php-mbstring

Será necesario recargar la configuración del servicio web o del servicio PHP (según corresponda) para aplicar la nueva configuración:

~$ sudo service httpd reload

Configuración de phpMyAdmin

Es importante configurar phpMyAdmin en CentOS 6 antes de conectar por primera vez. La aplicación provee un archivo de configuración de muestra que podemos utilizar copiándolo como el archivo de configuración final:

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

Editamos el nuevo archivo de configuración:

~$ sudo nano /var/www/html/phpmyadmin/config.inc.php

En primer lugar debemos dar un valor a la variable blowfish_secret, que servirá para cifrar las cookies de sesión:

...
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
...

Indicaremos una cadena de 32 caracteres entre las comillas:

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

Por otro lado, phpMyAdmin permite almacenar configuraciones extendidas para cada usuario y base de datos en una base propia de phpMyAdmin. Si queremos activar esta característica tendremos que buscar el bloque de variables para el almacenamiento de la configuración:

...
/**
 * phpMyAdmin configuration storage settings.
 */

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

/* Storage database and tables */
// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
// $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
// $cfg['Servers'][$i]['relation'] = 'pma__relation';
// $cfg['Servers'][$i]['table_info'] = 'pma__table_info';
// $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
// $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
// $cfg['Servers'][$i]['column_info'] = 'pma__column_info';
// $cfg['Servers'][$i]['history'] = 'pma__history';
// $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
// $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
// $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
// $cfg['Servers'][$i]['recent'] = 'pma__recent';
// $cfg['Servers'][$i]['favorite'] = 'pma__favorite';
// $cfg['Servers'][$i]['users'] = 'pma__users';
// $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
// $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
// $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';
// $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
// $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings';
// $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';

/**
 * End of servers configuration
 */
...

Estas variables definen un usuario (pma), una contraseña (pmapass) y una base de datos (phpmyadmin). Es interesante cambiar la contraseña por motivos de seguridad. Además, habrá que eliminar los dos caracteres // al inicio de cada línea $cfg para que estas variables sean tenidas en cuenta:

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

$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
...
$cfg['Servers'][$i]['central_columns'] = 'pma__central_columns';
$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

Si decidiste activar el almacenamiento de configuraciones en el paso anterior, habrá que crear el usuario y la base de datos en el servicio que tenemos instalado en CentOS 6. Para ello conectamos con el cliente de consola mysql y el usuario administrador:

~$ mysql -u root -p

Recuerda usar los mismos valores que aparezcan en el archivo de configuración de phpMyAdmin.

Empezaremos creando la base de datos:

> create database phpmyadmin;

Y creamos el usuario con su contraseña. Para MySQL 5.x ó MariaDB lo hacemos así:

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

Pero para MySQL 8 conviene especificar el plugin de autenticación compatible con PHP:

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

En cualquier caso, damos permisos al usuario sobre la base:

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

Y ya podemos finalizar la sesión:

> exit

Además de crear la base, es necesario inicializarla mediante un script SQL previsto al efecto. Usaremos mysql desde consola para realizar esta inicialización:

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

En el comando anterior hemos usado el usuario y la contraseña que hemos creado para la base de datos de phpMyAdmin.

Instalación vía web

Accedemos por primera vez a phpMyAdmin desde el navegador. En este caso como URL usamos la dirección IP o dominio del servidor CentOS 6 seguido la ruta /phpmyadmin o como hayamos renombrado o enlazado el nombre del directorio de phpMyAdmin:

como instalar phpmyadmin en centos 6

Podremos iniciar sesión con cualquier usuario de MariaDB/MySQL que se autentifique mediante contraseña con el plugin de autenticación mysql_native_password.

phpmyadmin en centos 6

Lógicamente, las tareas que podremos realizar dependerán del nivel de permisos que tenga el usuario con el que hemos iniciado sesión.

Conclusión

Ahora que sabes cómo instalar phpMyAdmin en CentOS 6 ya puedes administrar MariaDB o MySQL con la comodidad de una interfaz web tan potente como la de esta aplicación, tanto de forma local como remota.

En caso de preguntas, dudas, alguna sugerencia o corrección, puedes dejar un comentario.

¡Apoya este sitio!

¿Ya estás listo para administrar tus bases de datos gracias a esta guía de instalación de phpMyAdmin en CentOS 6? Si es así y quieres agradecérnoslo, cualquier contribución ayuda a mantener en línea este sitio web y a la creación de más tutoriales de CentOS 6 y phpMyAdmin. ¡Gracias!

 

Valora esta entrada

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

Deja un comentario

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.

ACEPTAR
Aviso de cookies