首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySql优化查询

MySql优化查询
EN

Stack Overflow用户
提问于 2011-01-08 03:13:55
回答 3查看 128关注 0票数 0

我的网站有问题,一个特定的页面在我的live网站上需要大约15秒的时间来返回数据,在我的临时网站上需要2秒。不过,它们都使用了相同的数据库备份。

然后我意识到,对于我的临时数据库,我已经删除了旧的临时数据库,并将转换后的备份恢复为新的临时数据库。

但是,对于实时数据库,我直接在实时数据库上运行数据库转换。

然后我对我的实时数据库执行了同样的操作,删除了现有的数据库,然后从转换后的备份中恢复了它,瞧,对于一个特定的网页,时间从15秒下降到了2秒。

我的问题是为什么?我唯一想到的是,也许索引变得太大了,通过删除数据库,重新创建了索引?\

我离得太远了吗?还有其他原因吗?另外,如果是这样的话,我将来如何在不删除数据库的情况下解决这个问题呢?

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-01-08 03:29:56

尝试查看解释计划,或者可能需要更新您的统计数据。很难在高层次上确定这类事情,因为有太多不同的事情可以跨服务器发生。

票数 1
EN

Stack Overflow用户

发布于 2011-01-08 03:21:04

它是高写入或高读取问题(或两者都有)的数据库?

您正在数据库中执行哪些“转换”,而不是在登台数据库中执行?

您是否可以更具体地说明正在发生的事情?

也许可以读一读这本书http://www.amazon.com/High-Performance-MySQL-Jeremy-Zawodny/dp/0596003064 (它非常好)(我不是作者)。

票数 0
EN

Stack Overflow用户

发布于 2011-01-08 03:38:07

很容易,当您重新构建表时,记录按顺序排列,将有用的记录放在彼此附近,这样查询就不需要大量的磁盘读取。如果您想要检查,MySQL统计数据可以显示读取计数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4629332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档