我有一张桌子 - 好的三张桌子艺术家,场地和活动......大约150k活动。我想要了解mysql创建索引更清楚,因为它与我的具体问题有关。这个问题基本上是php软件加载一个拉动这些数据的页面花了很长时间......太长了。我绝对没有时间清理代码......只是为了优化mysql,memcache可能?,添加更多内存等等。所有数据都是文本...
欢迎任何和所有的想法!
谢谢〜
答案 0 :(得分:0)
基本上,您希望在最常用于搜索表中记录的字段上创建索引。 CREATE INDEX documentation
为了更清楚地了解您的问题,您需要确定您认为执行速度太慢的主要查询并对其运行EXPLAIN查询。该输出将帮助您了解应将哪些列编入索引以提高应用程序的性能。
答案 1 :(得分:0)
检查MySQL slow query log以确定导致延迟的查询,然后对它们运行EXPLAIN以查看正在使用哪些(如果有)索引。如果您看到未使用索引,请考虑将索引添加到相关列。这些列将是WHERE和JOIN子句中使用的列。例如,如果您要在venues
上加入events
到venue_id
,则可能需要将events
。venue_id
编入索引以提高加入效果。
例如:
CREATE INDEX event_venue_id ON events (venue_id);