Optimizar automáticamente todas las tablas de un servidor MySQL
| Posted in General | Posted on 08-02-2010
2
En los servidores de VeneHosting.com ejecutamos semanalmente un proceso que optimiza ‘a juro’ todas las tablas, de todas las bases de datos MySQL de todo el servidor (que vienen siendo un montón enorme!); con el fin de ayudar a mantener un buen nivel de rendimiento.
Como no somos egoístas, compartimos este simple script con el resto de la comunidad y ¿porqué no?, hasta la competencia podría aprender algo más de nosotros !
<?php
/* modifica estos valores según tu servidor.*/
$host="localhost";
$usuario="admin"; //Tu super usuario
$pasword="xxxxx"; //La clave del super-usuario
/*no modifiques nada más*/
$link=mysql_connect($host,$usuario,$pasword);
$dbs=mysql_list_dbs($link);
while ($db=mysql_fetch_object($dbs))
{
echo "$db->Database\n";
$tablas = mysql_db_query($db->Database, "SHOW TABLES", $link);
while ($tabla=mysql_fetch_array($tablas)) {
mysql_db_query($db->Database, "OPTIMIZE TABLE ".$tabla[0], $link);
echo "$tabla[0]\n";
}
}
?>
Sólo resta programar este script con CRON para que se ejecute cada X tiempo (recomendado 1 vez a la semana) y listo !

