mysql数据库批量将MyISAM引擎转换为InnoDB
分类:经验交流 时间:2021-11-25 浏览:1,791 

将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);

如果觉得本站内容对你有益,可对本站赞助,本站会不定时发布高质量内容。

© 2016-2025 dds6 版权所有 | 鲁ICP备2022041124号 | 网站地图

查询:45次 | 用时:0.127秒 | 总浏览:188340 | 总访问:1519287