【发布时间】:2012-01-09 12:46:23
【问题描述】:
我正在使用 wpmudev.org 的插件将一个包含一个数据库和 81,000 多个表的 wordpress 站点分解为一个多数据库。主要动机是性能,我检查了表本身,它们是 MyISAM 类型。
我在想,在将表移动到新数据库时,我还可以将表类型更改为 InnoDB,这应该会提高网站性能。
将表从现有数据库迁移到新数据库的脚本使用以下语法:
创建表 .... 喜欢 .... INSERT INTO .... SELECT * FROM ....
如果我可以在 CREATE TABLE 命令中覆盖引擎,我无法找到信息,例如:
创建表 .... LIKE .... ENGINE=InnoDB
我还想知道“INSERT INTO .... SELECT * FROM ....”是否是插入数据的最有效方式...这是一个 php 脚本,所以我不介意添加一些代码提高性能 - 在较早的试用版中,需要 3 天才能在 4 核 4GB RAM 上运行!
【问题讨论】:
-
81,000 个表 - 你确定你不是指元组吗?
-
不,表格。这是一个 Wordpress MU 网站。超过 8000 个博客,每个博客都需要至少 3 个表……我什至无法连接普通的管理工具,因为它们都试图获取架构并超时 ;-)
标签: mysql wordpress innodb myisam multiple-databases