miércoles, 19 de diciembre de 2012

phpMyAdmin: administración remota de un servidor MySQL


Si sois programadores web seguramente habréis trabajado con MySQL. Se trata de un gestor de bases de datos relacional muy potente y, lo más importante, software libre. Si no queréis administrarlo en línea de comandos o no disponéis de una aplicación de software (o simplemente queréis tener acceso a la administración desde cualquier equipo conectado a Internet) disponéis de esta alternativa: phpMyAdmin.

phpMyAdmin es una herramienta escrita en PHP para administrar bases de datos MySQL. En realidad no tenemos que "instalar" nada: simplemente descargarlo, descomprimirlo en nuestro servidor web y configurar la conexión con la base de datos. Si lo instalamos desde un Linux y tenemos permisos de administración del sistema es frecuente encontrar un paquete de instalación (desde Debian y Ubuntu existen). Podemos instalarlos con deb, apt-get o utilizando los gestores del entorno gráfico. Para cualquier sistema operativo tenemos la alternativa siguiente.


Requisitos del sistema


Como es obvio, los requisitos previos para la aplicación son:


  • Servidor web con soporte para PHP
  • Servidor de bases de datos MySQL
  • Un navegador web

Descarga e instalación


Descargamos los archivos de la página del fabricante:

http://www.phpmyadmin.net/home_page/downloads.php

Recordad que son archivos PHP y librerías (jquery, css...): son multiplataforma y no tenemos que elegir sistema operativo. Nosotros elegiremos la distribución comprimida en zip por su portabilidad (podremos descomprimirlo en Linux, Windows, hosting online...). Una vez descargado el archivo lo descomprimimos en el directorio elegido en nuestro servidor web (os recomiendo una carpeta con el nombre phpmyadmin para que sea accesible desde tudominio/phpmyadmin.

Configuración


Ahora debemos configurar el acceso a nuestra base de datos. Debemos editar el archivo config.inc.php de la carpeta raíz de phpMyAdmin y editar las siguientes líneas:

Ruta absoluta para acceder a phpMyAdmin: $cfg['PmaAbsoluteUri']. Pondremos localhost si es un servidor local o tu dominio si es el caso:

$cfg['PmaAbsoluteUri'] = 'http://localhost/phpMyAdmin';
$cfg['PmaAbsoluteUri'] = 'http://tudominio/phpMyAdmin';

Host o IP del servidor de MySQL:

$cfg['Servers'][$i]['host'] = 'localhost';

Nombre de usuario de la base de datos. Si se trata de un servidor local podemos utilizar la cuenta de root. Si tenemos un servidor externo (como el ofrecido por el hosting) no dispondremos de la cuenta de root, seguramente tendremos un usuario facilitado por el proveedor para administrar nuestras bases de datos.
$cfg['Servers'][$i]['user'] = 'usuario';


Clave de acceso para el usuario especificado en el paso anterior.

$cfg['Servers'][$i]['password'] = 'contraseña';

Existen otros parámetros que podemos configurar:

$cfg['Servers'][$i]['AllowNoPassword'] = false;   Impedimos que se acceda sin contraseña (importante mantenerlo en false)

$cfg['Servers'][$i]['port'] = ''; Podemos especificar otro puerto en caso de que el servidor no escuche por el puerto por defecto.

$cfg['Servers'][$i]['extension'] = 'mysqli';    Elegimos si utilizamos la conexión de tipo MySQL o MySQLi.

$cfg['DefaultLang'] = 'en-utf-8';    Juego de caracteres por defecto del servidor.


Acceso

Una vez configurado su uso es muy sencillo. Nos conectamos desde un navegador web a la URL que especificamos anteriormente en el fichero de configuración (en nuestro ejemplo está instalado en un servidor local, la URL es http://localhost/phpmyadmin). Ponemos nuestro usuario y contraseña de acceso y aparecerá el panel de control:



Como podéis ver es un panel de control completo, podemos hacer prácticamente cualquier operación sobre la base de datos (incluso una vista de diseño que explicaremos en otro post). 

La principal ventaja es que tendremos disponible la administración remota desde cualquier equipo con un navegador, es una herramienta muy potente y versátil.

Espero que os resulte útil.

5 comentarios:

  1. Gracias hayatu. Le echaremos un vistazo, la posibilidad de conectar con distintas plataformas (PostgreSQL, SQL Lite, etc...) es más que interesante. Como inconveniente señalar que perdemos la conectividad web, multiplataforma y el diseñador (sólo disponible en la versión Pro de Valentina). Un saludo

    ResponderEliminar
  2. Como añadir español a phpmyadmin?

    ResponderEliminar
    Respuestas
    1. ¿Qué versión tienes de PHPMyAdmin? Yo sólo tengo que seleccionar español en el desplegable que hay sobre el login

      Eliminar
  3. y como se habilita el acceso remoto al phpmyadmin? osea desde fuera de la red

    ResponderEliminar
    Respuestas
    1. Hola Rhulk. Para acceder desde fuera de la red tenemos que hacer varias cosas: abrir los puertos en el router redirigidos hacia el servidor, abrir el cortafuegos y configurar el config.inc.php. Cuéntame más sobre el servidor y te ayudo en lo posible. Un saludo

      Eliminar

Recomendaciones de Alcasoft