Single

PHP检查MySQL数据库表是否需要修复

MySQL在实际的运行中会因为各种原因,比如突然关机,断电,磁盘错误等导致数据库中的表损坏,那么在重新运行系统前为确保系统的正确性和数据的一致性,需要对表的状态进行检查,对于损坏的表进行修复。

PHP实现检查MySQL数据库表主要是使用“check table” SQL语句,一个测试函数如下:

function needRepair($dbname,$tbname){
 $sql = "CHECK TABLE `$dbname`.`$tbname`";
 $rs = mysql_query($sql);
 mysql_data_seek($rs, mysql_num_rows($rs)-1);
 $row = mysql_fetch_assoc($rs);
 if ($row['Msg_type'] != "status") {
 return true;
 }
 return false;
}

使用前请先连接数据库,结合该函数,可以修改“PHP修复MySQL所有数据库中的表”中的MySQLTool类,当表需要修复时才去进行修复。

暂无评论

发表评论