0
检索我的临时环境查询的结果时,不要使用我的本地MySQL的 - 差异无法加载查询结果
所以我连接8台我遇到一个奇怪的事件,其制造简单的查询会像这样:
SELECT
*
FROM
tsales, stores, vma_users, tracks, albums, fa_country, exchange_rates, outlets
WHERE tsales.type = 'T'
AND stores.outlet_id = exchange_rates.outlet_id
AND stores.outlet_id = outlets.id
AND tsales.store_id = exchange_rates.outlet_id
AND tsales.sale_year = exchange_rates.year
AND tsales.sale_month = exchange_rates.month
AND tsales.currency = exchange_rates.currency
AND tsales.track_id = tracks.id
AND tracks.album_id = albums.id
AND tsales.country = fa_country.iso
AND tsales.account_id = vma_users.id
AND tsales.account_id = 2129
AND tsales.sale_year = 2013
AND tsales.sale_month = 3
ORDER BY tsales.id
(不要担心查询,我也有一个左连接的这个版本)
每当我跑在暂存环境中,该查询,我可以检索像结果例如,每当我运行thi时,就有26k行在我的SQL的phpmyadmin本地主机似乎没有发生,我甚至不能得到的结果后,它会显示这样的事情
Fatal error: Maximum execution time of 30 seconds exceeded in C:\wamp\apps\phpmyadmin3.4.10.1\libraries\session.inc.php on line 92
我的本地和分期的数据和结构是相同的。我刚刚更新了它。
你能帮助我请发生什么事。我知道这种情况发生在大型唱片公司,但我预计只有26千行,所以没关系。
运行与查询说明:
1 SIMPLE outlets ALL NULL NULL NULL NULL 46 Using temporary; Using filesort
1 SIMPLE stores ALL NULL NULL NULL NULL 55 Using where; Using join buffer
1 SIMPLE fa_country ALL NULL NULL NULL NULL 213 Using join buffer
1 SIMPLE exchange_rates ALL NULL NULL NULL NULL 1390 Using where; Using join buffer
1 SIMPLE vma_users ALL NULL NULL NULL NULL 3957 Using where; Using join buffer
1 SIMPLE albums ALL NULL NULL NULL NULL 78458 Using join buffer
1 SIMPLE tsales ALL NULL NULL NULL NULL 893483 Using where; Using join buffer
1 SIMPLE tracks eq_ref PRIMARY,album_id PRIMARY 4 valleyarm_digital.tsales.track_id 1 Using where
运行'你的本地主机和后结果解释了'这里以文本形式 –
peterm
@peterm更新它,请参阅使用EXPLAIN –
你只是没有在列索引您使用的加入和过滤结果的上方表格因此以完整的扫描结束。而在你的分期环境中,你有他们。 – peterm