実行計画

オプティマイザは別物?MySQLバージョン差の罠

オプティマイザはMySQLのバージョンごとに別物 オプティマイザとは何をしているのか バージョンごとに何が変わるのか 実際に起きる典型的な問題 なぜ開発環境では起きないのか バージョンアップ時の危険な思い込み 対策:必ず見るべきもの ヒント固定は最終…

同じSQLなのに遅い?MySQLの実行計画が変わる理由

MySQLについて、なぜ同じSQLでも実行計画が変わるのか 実行計画とは何か なぜ同じSQLでも変わるのか JOINで突然遅くなる理由 キャッシュも影響する 実行計画が変わるタイミング 実務で起きる典型的な事故 対処法:SQLを書き直す前に見るべきもの ヒント句(o…

MySQLの統計情報が性能を左右する

MySQLの統計情報(statistics)が性能を左右する理由 MySQLはデータを見て実行していない 実行計画が壊れる瞬間 なぜ統計情報は狂うのか ANALYZE TABLE の意味 再起動で速くなる理由 注意:毎日ANALYZEすればよいわけではない MySQLのパフォーマンス問題の本…

インデックスが効かない原因はMySQLの違い

インデックスが急に効かなくなるのはSQLのせいではない 典型的な症状 なぜインデックスが使われないのか MySQL5.6と5.7以降の違い よくあるパターン:低選択性カラム もう一つの原因:統計情報のズレ なぜ本番だけ遅いのか LIKE検索で突然遅くなる例 インデ…