日期:2014-05-16  浏览次数:20580 次

在xamp安装drupal时数据库初始化出错的原因

我本地安装的是xampp最新版,运行平台是win7 64和win2008 R2,曾经查询修改mysql进程时间设定有效过。

现在发现问题根结所在(也可能是我个例,但如果你碰到了一样的问题,而你的数据库默认引擎也是innodb,那就很有可能是这个原因)。

最新版的xampp安装好之后,mysql默认引擎为Innodb,而且Innodb设置参数的 innodb_flush_log_at_trx_commit 值是1。这个值可以取0,1,2,1是最安全的,即使系统完全崩溃也能找回前一秒钟的数据,但也是性能最低的,每秒都要向硬盘写日志数据。设为2是比较适 中的。有关Innodb引擎更多优化请查询百度。

(mysql引擎设定可以在phpmyadmin的【引擎】链接或【更多】-【引擎】里查看,一般默认不是Myisam就是innoDB,点击这两个名字 进去就可以查看具体参数设定及是否为默认引擎。如果你的引擎默认是InnoDB就很有优化的必要。设定参数在mysql\bin\my.ini 文件中)

我发现我的本地测试引起超时的错误根结所在不是程序设定时间超时太短……我硬件配置不低,又是本地操作没有网络延时问题,默认设定时间还不够,说明程序运行速度得多慢啊…………网站运行速度也不够快的……

其实就是innodb_flush_log_at_trx_commit 设为1?的问题,只要mysql\bin\my.ini中的innodb_flush_log_at_trx_commit = 2???? 重启mysql进程就可以了。(只读不能改请先停止mysql,或另存-删除原文件-改名)?? 再安装时导入翻译时间就是几秒钟的速度~~!

如果是虚拟空间已经装好的drupal,innodb的设定还是1自己还没有改的权限,你的表由于是其他地方导入进来的用的innodb引擎觉得慢,就不 如把一些表转成Myisam引擎了。Myisam引擎表在少于一定数据量情况下比innodb快。但Myisam有不如innobd安全和超大数据量时没 有innodb快的缺点,请定期备份。