怎样批量修改mysql数据库myisam引擎为innodb
发布时间:2020-12-24 22:18:32 所属栏目:MySql教程 来源:网络整理
导读:《怎样批量修改mysql数据库myisam引擎为innodb》要点: 本文介绍了怎样批量修改mysql数据库myisam引擎为innodb,希望对您有用。如果有疑问,可以联系我们。 今天升级MYSQL 5.7,准备把原来数据库的MYSQL数据库引擎从5.6升级为5.7,因为表格众多,一个个修改很
《怎样批量修改mysql数据库myisam引擎为innodb》要点: 今天升级MYSQL 5.7,准备把原来数据库的MYSQL数据库引擎从5.6升级为5.7,因为表格众多,一个个修改很累,所以要有批量修改方法。 一个个修改的方法是: mysql> alter table vephp engine=innodb; Query OK, 16777216 rows affected (2 min 39.80 sec) Records: 16777216 Duplicates: 0 Warnings: 0 那么批量修改方法就是批量执行ALTER TABLE即可。 我们生成这样的语句即可。执行: SELECT CONCAT('ALTER TABLE ',table_name,' ENGINE=InnoDB;') FROM information_schema.tablesWHERE table_schema="vephp数据库" AND ENGINE="MyISAM"; 生成: ALTER TABLE xxxxx ENGINE=InnoDB; ALTER TABLE zzzzzzzzz ENGINE=InnoDB; ALTER TABLE vvvvvvvvvv ENGINE=InnoDB; ALTER TABLE eeeeeee ENGINE=InnoDB; ALTER TABLE ppppppp ENGINE=InnoDB; .... 如图: 把这些表格数据导出,在SQL中执行即可。 也可以放在PHP中执行,如下: $s = "ALTER TABLE aaaa ENGINE=InnoDB; ALTER TABLE bbbbb ENGINE=InnoDB; ALTER TABLE ccccc ENGINE=InnoDB; ALTER TABLE ddddd ENGINE=InnoDB;"; $s = array_filter (explode ("n",$s)); foreach ($s as $sql) { $db->query($sql); //这里是VEPHP框架查询,需要改成你的SQL查询命令 } (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |