我正在运行安装了MySQL的Windows Server 2008,每次重启服务器时,MySQL服务都不会马上启动。 查看Windows事件日志显示MySQL服务在启动时挂起。 查看Services.msc控制台显示服务状态在开始…
最终,像10分钟,MySQL服务实际上完成启动过程,数据库变得可用于我的WordPress的服务器…
我查看了MySQL .err文件,并没有发现任何可能表明延迟的statup过程。
任何人都可以提出一种方法来确定是什么造成的延迟,更重要的是,如何防止在MySQL启动延迟?
更新:这里是从关机到启动完成的.err日志内容。 注意,启动时间从10:30:00开始,直到10点47分14秒,MySQL还没有准备好连接,17分钟后:
100322 10:27:06 [Note] C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld: Normal shutdown 100322 10:27:06 [Note] Event Scheduler: Purging the queue. 0 events 100322 10:27:06 InnoDB: Starting shutdown... 100322 10:27:08 InnoDB: Shutdown completed; log sequence number 4 3854351346 100322 10:27:08 [Warning] Forcing shutdown of 1 plugins 100322 10:27:08 [Note] C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld: Shutdown complete 100322 10:30:00 [Note] Plugin 'FEDERATED' is disabled. 100322 10:30:01 InnoDB: Started; log sequence number 4 3854351346 100322 10:47:14 [Note] Event Scheduler: Loaded 0 events 100322 10:47:14 [Note] C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld: ready for connections.
更新2:MySQL被configuration为一个服务(安装过程的一部分,我什么也没有),并执行以下语法(如出现在registry中):
"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld" --defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini" MySQL
完全猜测:这听起来好像可能不会完全停止,因此将通过InnoDB恢复。
在重新启动之前提供10行输出到MySQL日志中的当前行。
编辑1
感谢您的附加信息。 这看起来可能不是MySQL,而是Windows。 在服务中指定了什么? 有脚本吗?
编辑2
我以前误读 看起来像InnoDB启动时有一个延迟,但似乎非常长。
100322 10:30:01 InnoDB: Started; log sequence number 4 3854351346 100322 10:47:14 [Note] Event Scheduler: Loaded 0 events
你真的使用InnoDB表空间吗? show table status;
在您的数据库将显示引擎。 如果没有,我怀疑禁用它会加快启动时间。
编辑3
WordPress默认不会使用InnoDB。 如果您可以validation您的数据库都不是InnoDB,那么在您的my.ini中添加skip-innodb
可能会提高启动速度。