PHP+MYSQL将所有MyISAM表批量转为InnoDB表

后端开发   发布日期:2023年05月17日   浏览次数:491

PHP+MYSQL将所有MyISAM表批量转为InnoDB表,将其中的数据库名称改为自己实际应用的名字,同时这里又增加了表名以mdaima_zichan开头的匹配,因为我这个数据库下有好多表,功能不同只更改需要的同一应用下的MyISAM表。

  1. //0 ===================数据库更改引擎为innodb----开始
  2. $sql="SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '数据库名称' AND ENGINE = 'MyISAM' and TABLE_NAME like 'mdaima_zichan_%'";
  3. $result=$mysqli->query($sql);
  4. $de=0;
  5. while($rs=$result->fetch_assoc()){
  6. $de++;
  7. $tb_inodb = $rs["TABLE_NAME"];
  8. $sqlinodb = "ALTERTABLE".$tb_inodb." ENGINE=INNODB";
  9. $mysqli->query($sqlinodb);
  10. //echo $sqlinodb."<br/>";
  11. }
  12. echo "数据库更改引擎为innodb,更新完成!共处理 ".$de." 个表,".date("Y-m-d H:i:s")."<br />";
  13. //0 ===================数据库更改引擎为innodb----结束


以上就是PHP+MYSQL将所有MyISAM表批量转为InnoDB表的详细内容,更多关于PHP+MYSQL将所有MyISAM表批量转为InnoDB表的资料请关注九品源码其它相关文章!