我正在尝试找到一种方法来加速 PHP PDO 中的 MySQL 表创建。我正在使用 PHP 5.3 和 MySQL 5。
每个表都是使用类似于下面的代码创建的:
CREATE TABLE `moxedo`.`mox_config_8423` (`id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT , `group_id` INT(3) UNSIGNED NOT NULL , `is_enabled` INT(1) UNSIGNED NOT NULL , `tag` VARCHAR(255) NOT NULL , `name` VARCHAR(80) NOT NULL , `value` VARCHAR(255) NOT NULL , `description` TEXT NOT NULL , `init_params` TEXT NOT NULL , `datetime_added` DATETIME NOT NULL , `datetime_lastmodified` DATETIME NOT NULL , `timestamp_univ` BIGINT(14) NOT NULL , PRIMARY KEY ( `id` ) )
ENGINE = InnoDB;
ALTER TABLE `moxedo`.`mox_config_8423` ADD UNIQUE `ix_u_tag_ad` ( `tag` );
我有大约 120 个这样的双行查询要执行(总共 240 个查询)。根据我的基准测试,钻头需要 0.12 秒,CREATE TABLE
钻头需要 0.07 秒ALTER TABLE
。因此,如果我单独运行每个查询,大约需要 24 秒才能完成。
有没有一种方法可以在 PDO 中使用准备好的语句来一次执行所有 240 个查询,即PDO::prepare
用于 PHP。我只是在寻找一种方法来显着加快速度。
提前致谢。