我看到一个MySQL服务器正常运行,但一旦它达到高负荷,它死亡没有警告 – 即时崩溃。 它支持论坛和聊天服务器。 它同时运行InnoDB和MyISAM表。 聊天服务器是我想的问题。
我很难确定如何解决这个问题,并想知道哪些监控工具可用于MySQL,让我明确地确定崩溃的原因(这样我可以调整my.ini设置,并希望使其消失)。
在适当的.err文件中我找不到任何有用的东西。
我看到应用程序事件日志100消息是这样的:
事件types:信息
事件来源:MySQL
事件类别:无
事件ID:100
date:11/13/2009
时间:下午3点57分52秒
用户:N / A
电脑:HOST
描述:C:\ Program Files(x86)\ Parallels \ Plesk \ Databases \ MySQL \ bin \ mysqld-nt.exe:准备好连接。 版本:'5.0.45-community-nt-log'套接字:''端口:3306 MySQL社区版(GPL)
将没有其他logging的信息。
当前显示状态,如“%thread%”; 显示这个输出,如果有帮助:
Delayed_insert_threads 0 Slow_launch_threads 0 Threads_cached 1 Threads_connected 7 Threads_created 53033 Threads_running 1
由于它是作为一个32位实例在这个64位的盒子上运行的,也许这个MySQL实例只是内存不足而已? 我相信64位升级会帮助TREMENDOUSLY …但我需要确定它会解决这个问题。
任何帮助非常感谢,如果您有任何问题,请离开!
我没有试图陈腐,但你陈述:服务器高负载,死亡..我的第一个解决scheme是(假设高负载是由于高使用率),添加另一个读取服务器在从属模式。
其次,一个特定的查询可能会导致崩溃。 也许如果你打开查询日志logging,你可以看到死亡前的最后一个查询是否一致。 请注意,这将会增加服务器本身的负载,并且您需要在日志轮转之上,因此您不需要填充磁盘。
另外,如果你得到一个奴隶,如果你的主要死亡,你总是可以提升奴隶,所以这是很好的冗余。