MySQL 深分页优化:limit 100000, 10 慢在哪,怎么救 – codigger
オンライン上では、注文一覧ページがページをめくるごとに固まり、1000ページ目までくるとリクエストに10秒以上かかるという動作のフィードバックが発生しました。DBA はスロー クエリ ログをチェックし、SQL 構文に問題がないことを確認しました。 SELECT * FROM orders ORDER BY id LIMIT 100000, 10; 構文エラーはありませんが、クエリが遅いだけです。これは典型的なディープ ページングの問題です。 今日は、この問題について最初から最後まで説明します。遅さの原因は何か、一般的なソリューションの利点は何か、失敗のシナリオは何か、そして私の最終的な解決策について説明します。 1. まず、どこが遅いのかを特定します。…