mysql突然很慢,慢到50多秒

经检查发现是内存的临时表空间似乎没清除,重启mysql就好了。

windows nt环境。

有没有好的解决办法呢?

阅读 12k
2 个回答

优化查询sql吧,或者把buffer配小一点?
建议先从sql优化开始,尽量使用不产生临时表的查询

实际上就是物理内存占满了,数据库需要把内存换出到磁盘的虚拟内存上,加上访问量一大,频繁换入换出查询就会变得很慢很慢。

如果无法从程序结构上解决问题,那么只有增加内存了,建议把mysql的服务器换成linux的,在对buffer的管理上,linux还是有先进性的。

最后提一下,临时表这个东西除了在生成报表的时候有点用外,并不建议在日常生产中经常使用,这完全是个不良的习惯。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题