Регламентное обслуживание всех таблиц БД MySQL

Выдаем команду CHECK по всем таблицам базы последовательно, если в результате этого запроса будет содержаться негативный результат, то запускается операция восстановления базы (REPAIR). После того, как выполнена проверка таблицы, проводится ее оптимизация.

$database="test"; 
mysql_connect("localhost", "root", "$database"); 
$res=mysql_query("SHOW TABLES IN ".$database.";"); 
while ( $o=mysql_fetch_row($res) ) 
{ 
 $res_ch=mysql_query("CHECK TABLE $database.$o[0] EXTENDED;"); 
 $o_ch=mysql_fetch_row(); 
 $o_rp[3]="No"; 
 if ( $o_ch[3]!="OK" ) 
 { 
 $res_rp=mysql_query("REPAIR TABLE $database.$o[0] EXTENDED;"); 
 $o_rp=mysql_fetch_row(); 
 } 
 $res_op=mysql_query("OPTIMIZE TABLE $database.$o[0] EXTENDED;"); 
 $o_op=mysql_fetch_row(); 
 echo "$o[0] CHECK:$o_ch[3] REPAIR: $o_rp[3], OPTIMIZE: $o_op[3]\n"; 
} 

print "База данных ".$database." проверенна и оптимизированна.<br>\n";

.