Sembra:Bug #70617 Le statistiche persistenti predefinite possono causare lunghi tempi di query imprevisti
Per quel che vale, questo non è un bug di Percona, è presente anche nell'edizione della community di MySQL 5.6.
Esistono tre possibili soluzioni alternative:
-
Usa STRAIGHT_JOIN per dare un suggerimento all'ottimizzatore di non riordinare i riferimenti alle tabelle.
SELECT STRAIGHT_JOIN i.item_name, i.item_key, i.item_date, f.format_long FROM items i INNER JOIN formats f ON i.item_format = f.format_id WHERE i.item_private = 0 ORDER BY i.item_id DESC LIMIT 8
Ho riscritto il tuo JOIN per utilizzare la sintassi SQL-92, che consiglio.
-
Disattiva le nuove Statistiche persistenti di InnoDB funzionalità, ripristinando il comportamento precedente alla 5.6.
Nel tuo file my.cnf:
innodb_stats_persistent=0
-
Aggiorna manualmente le statistiche dell'ottimizzatore InnoDB dopo aver apportato una modifica significativa ai dati (ad esempio, dopo aver caricato un mysqldump):
ANALYZE TABLE items; ANALYZE TABLE formats;
PS:lavoro in Percona e questo bug è stato scoperto dal mio collega Justin Swanhart .