我有一个复杂的数据库模式。我在 MySQL 5.6 中构建了一个连接 20 个表的大查询。当我在我的 Mac 上的 MySQL 5.6 的本地副本上运行查询时,我得到 1-2 毫秒的响应时间。当我在 Ubuntu 上的 MySQL 5.5 上运行相同的查询(通过 mysql 转储使用相同的数据)时,我得到 60 秒的响应时间。我对慢速查询进行了分析,发现几乎整整 60 秒都花在了“统计”阶段。“统计”阶段显然是 MySQL 确定如何最好地执行所有连接的地方。
MySQL 5.6 如何以毫秒为单位执行此操作,而在 5.5 中则需要整整一分钟?
关于首先解决什么的任何想法?