将mysql数据库中MyISAM引擎的表转换为InnoDB引擎
<?php /** * User: K.O * Date: 2021.11.20 * 1.批量将MyISAM引擎转换为InnoDB * 2.清理mysql mysql-bin.000005 日志文件 */ set_time_limit(0); $host='127.0.0.1'; $user='root'; $pwd='root'; $con=mysqli_connect($host,$user,$pwd); if(mysqli_connect_errno($con)){echo '连接 MySQL 失败: '.mysqli_connect_error();} // 将MyISAM引擎转换为InnoDB $database=mysqli_query($con,"show databases") or die(mysqli_connect_error()); while($data=mysqli_fetch_row($database)){ if($data[0]!=='information_schema' && $data[0]!=='mysql' && $data[0]!=='performance_schema' && $data[0]!=='sys'){ p($data[0]); mysqli_query($con,"use $data[0]"); $res=mysqli_query($con,"show tables") or die(mysqli_connect_error()); while($rr=mysqli_fetch_row($res)){ // printf ("ALTER TABLE %s ENGINE=InnoDB;",$rr[0]); if(strpos($rr[0],'relationships') !== false){ mysqli_query($con,"ALTER TABLE $rr[0] ROW_FORMAT = DYNAMIC;"); } mysqli_query($con,"ALTER TABLE $rr[0] ENGINE=InnoDB;"); // ALTER TABLE byys_comments ENGINE=InnoDB; } // die(); //防止误改,添加die(); } } mysqli_close($con);
如果觉得本站内容对你有益,可对本站赞助,本站会不定时发布高质量内容。

