| Suscribir mediante RSS

Mantenimiento con phpMyAdmin

9 septiembre 2009 Diseño web

phpMyAdminphpMyAdmin es una de las más populares aplicaciones de código abierto para la gestión de bases de datos MySql. La facilidad de uso no sólo ayuda a usuarios experimentados y desarrolladores sino también a los iniciados.

phpMyAdmin es una aplicación web escrita en lenguaje PHP y código XHTML, CSS y javascript. Proporciona una completa presentación para administar bases de datos MySql. La combinación PHP/MySql es la solución ofrecida por la mayoría de hostings y cuenta con el soporte de numerosos desarrolladores del mundo.

phpMyAdmin puede crear, renombrar y eliminar bases de datos, crear, renombrar, copiar, eliminar o alterar tablas, borrar, editar o añadir campos, ejecutar cualquier sentencia SQL, exportar datos en diferentes formatos y optimizar y reparar bases de datos. Permite a los administradores añadir usuarios y sus privilegios de acceso.

Prácticamente todos los sitios web actuales ya sean para empresas, intranets o páginas públicas, son generados dinámicamente gracias a la utilización de las bases de datos. De su correcto funcionamiento depende su tamaño, la optimización de los datos y los posibles errores en las mismas.

Las bases de datos se organizan en tablas y no es de extrañar que en algún momento se produzcan errores de escritura de los datos debido a que los registros no se guarden en su lugar dentro de las tablas correspondientes o por averías en el servidor. Aquí mostraremos como optimizar y reparar una base de datos dañada.

La mayoría de los alojamientos disponen de un panel de control donde podemos encontrar phpMyAdmin para acceder a nuestras bases de datos MySql. Una vez introducimos el usuario y contraseña se nos abre la aplicación. En la columna de la izquierda vemos una o varias bases de datos según sea el caso con el número de tablas que contienen entre parentesis. Seleccionamos la que deseemos y se nos abre una ventana. En la columna de la izquierda aparecen ahora las tablas de la base de datos:

Estructura

En la columna Residuo a depurar (Overhead) se indica el exceso de datos incorrectos en las diferentes tablas de la base de datos. Esto incrementa el tamaño de la base de datos. Antes de hacer una copia de seguridad o respaldo necesitamos optimizar la base de datos para deshacernos de este sobre exceso de datos.

Al final de la estructura de la base de datos mostrada podemos leer:
"Marcar todos/as / Desmarcar todos / Marcar las tablas con residuo a depurar"

Podemos seleccionar la tabla o tablas que deseemos manualmente con la casilla de selección de la izquierda que existe en cada una o pulsar en "Marcar todos" seleccionando todas las tablas automáticamente. De la misma forma "Desmarcar todos" hará que se desmarquen todas las tablas que estuvieran marcadas previamente. La opción "Marcar las tablas con residuo a depurar" sólo marca las tablas con Overhead, las que aparecen en la columna de la derecha con exceso de datos incorrectos.

Lista desplegable

Si lo prefieres marca todas las tablas y abre el desplegable "Para los elementos que están marcados"
Ahí aparecen varias opciones:
- Vaciar (Empty), vacia o elimina el contenido de las tablas seleccionadas
- Eliminar (Drop), elimina las tablas seleccionadas
- Vista de Impresión (Print View), genera una lista detallada de las tablas para poder imprimirla
- Revisar la tabla (Check table), comprueba la estructura de las tablas seleccionadas, muestra OK si todo está bien
- Optimizar la tabla (Optimize table), optimiza las tablas seleccionadas eliminando el residuo que pudiera existir ocasionado por multiples borrados y escrituras. Es como una especie de desfragmentación de las tablas
- Reparar la tabla (Repair table), repara las tablas corruptas y elimina residuo
- Analizar la tabla (Analyze table), analiza las tablas actualizando las claves que se usan para las consultas

Una vez comprobado que no existen errores en nuestra base de datos podemos proceder a realizar la copia de seguridad.

Hay ciertas consideraciones a tener en cuenta. Las bases de datos pueden estar constatemente cambiando de contenido, es decir escribiendo datos en ellas. Esto es especialmente apreciable en sitios que reciben muchas visitas o donde se establece una comunicación directa con los visitantes por ejemplo mediante los comentarios. En situaciones como esta algún comentario puede quedar fuera de la copia o en el peor de los casos producirse algún error en la base de datos.

Si no tenemos un servidor dedicado no podemos parar el servicio MySql para realizar el mantenimiento de la base de datos. Sería conveniente mostrar una página indicando a los visitantes que se está trabajando en la web de forma similar a la que disponen otros CMS como Joomla. El horario para realizar labores de mantenimiento en nuestro servidor también debería escogerse y limitarse a la franja del dia con menor número de visitas.

Para aquellos que utilizan WordPress recordarles que las revisiones de los Posts también ocupan espacio en la base de datos. Si eres de los que hace muchas correcciones cada vez que escribes una entrada debes saber que la mayor parte de la información contenida en la base de datos estará compuesta por estas revisiones. Tanto es así que deberías plantearte la posibilidad de desactivar estas revisiones si realmente no haces uso de esta funcionalidad. Imagina que tienes 100 posts en tu blog y que de cada uno has hecho 5 modificaciones. Te será fácil deducir que tu base de datos tendrá el mismo tamaño que la de un Blog con 500 entradas, ocupará 5 veces más de lo que debiera.

Para evitar que WordPress guarde las revisiones escribe lo siguiente en el archivo wp-config.php
define('WP_POST_REVISIONS',false);
Con esto ya no se almacenarán más revisiones en la base de datos pero las antiguas permanecerán en ella, no serán eliminadas.

Puedes ejecutar una sentencia o comando SQL desde phpMyAdmin o instalar algún plugin que realice esta operación por ti como es el caso de Wp-Optimize

Revision

Desde la pestaña SQL escribe lo siguiente:
DELETE FROM wp_posts WHERE post_type = ‘revision’;
Los posts se guardan en la tabla wp_posts. En un campo llamado post_type WordPress guarda el tipo de post que puede ser: post, revision, attachment o page. Con esta sentencia le decimos que elimine todos aquellos registros que contengan la palabra revision. Lo puedes ver en la tabla wp_posts pulsando el botón Examinar de la columna Acción. Después optimiza la base de datos.

Recuerda hacer antes una copia de la base de datos.

Otros artículos de Diseño web

Creando themes en bbPress, lo básico
Cómo crear mapas de imágenes
Probando Windows Live Writer
Editando imágenes con WordPress
Publicidad de forma automática

Una respuesta a “Mantenimiento con phpMyAdmin”

  1. Invitado dice:

    Gracias MIL!