オプティマイザ

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

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

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

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

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

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

MySQL8.4で改善されたパフォーマンスの要点

MySQL8.4は「速くなった」のではなく遅くなりにくくなった まず前提:MySQLの遅さの多くはクエリではない InnoDBのロック競合の改善 統計情報(オプティマイザ)の改善 I/O処理の改善 パフォーマンススキーマの強化 注意点 なぜこの方向の改善なのか どう評…