MySQL 海量資料的 5 種分頁方法和優化技巧
點選上方“業餘草”,選擇“置頂公眾號”
第一時間獲取技術乾貨和業界資訊!
昨天,群裡有一個網友問我關於 MySQL 大資料量分頁的問題。有人回答說用快取 Redis,這個就比較麻煩了。而且別人問的是 MySQL 分頁,而不是架構如何設計!
那麼我今天就來分享一下,5 種常見的 MySQL Limit 分頁方法和優化技巧。
第一種方法,直接使用資料庫提供的 SQL 語句 limit 來分頁。
適用於資料量較少的情況。缺點是,全表掃描,速度會很慢且有的資料庫結果集返回不穩定(如某次返回1,2,3,另外的一次返回2,1,3)。Limit 限制的是從結果集的 M 位置處取出 N 條輸出,其餘拋棄。
方法二,建立主鍵或唯一索引,利用索引(假設每頁 10 條)。
適用於資料量較多的情況。這樣方法,會使用索引掃描,速度會很快。如果你的資料查詢出來並不是按照 pk_id 排序的,那麼就有可能漏掉資料的情況。所以使用的時候要注意。不行的話,你就用方法三。
方法三,基於索引再排序。
這種方法適用於資料量較多的情況。最好 ORDER BY 後的列物件是主鍵或唯一索引,使得 ORDER BY 操作能利用索引。
這種方法的特點是索引掃描,速度會很快。
方法四,基於索引使用 prepare(第一個問號表示 pageNum,第二個 ?表示每頁元組數)。
這個 SQL 很厲害,適合海量資料的場景。這個查詢會使用索引掃描,速度會很快。prepare 語句又比一般的查詢語句快一點。
方案五,利用 MySQL 支援 ORDER 操作可以利用索引快速定位部分元組,避免全表掃描。
例如:讀第 101000 到 101019 行元組( pk 是主鍵/唯一鍵)。
時間關係,我都不貼測試資料了。有問題,明天群裡討論。
學習是時刻進行的,不能遇到問題了,才去學。那就晚了,還是下面這個課程,很便宜。想深入理解 MySQL,建議你還是看看吧,返現還在進行,通過我的二維碼購買,返現 5 元紅包。
知識無價,這還不夠你一頓飯錢,也不夠你一包煙錢。
10T技術資源大放送!包括但不限於:C/C++,Linux,Python,Java,PHP,人工智慧,GO等等。在公眾號內回覆對應關鍵字或框架名字,即可免費獲取!!
你再主動一點點 我們就有故事了
相關文章
- 優化MySQL資料庫效能的八種方法優化MySql資料庫
- mysql大資料量分頁查詢方法及其優化MySql大資料優化
- 海量資料庫的查詢優化及分頁演算法方案資料庫優化演算法
- 兩種簡單分析和優化MySQL資料庫表的方法優化MySql資料庫
- 優化MySQL中的分頁優化MySql
- 優化 MySQL 中的分頁優化MySql
- 海量資料庫的查詢優化及分頁演算法方案(轉)資料庫優化演算法
- 海量資料的分頁怎麼破?
- sql海量資料優化SQL優化
- mysql處理海量資料時的一些優化查詢速度方法MySql優化
- 在大資料情況下MySQL的一種簡單分頁最佳化方法大資料MySql
- MySQL單表百萬資料記錄分頁效能優化MySql優化
- 10分鐘掌握資料型別、索引、查詢的MySQL優化技巧資料型別索引MySql優化
- MySQL分頁查詢優化MySql優化
- MySQL分頁效能優化指南MySql優化
- 50種優化資料庫的方法優化資料庫
- Oracle資料的優化器有兩種優化方法:Oracle優化
- MySQL——優化巢狀查詢和分頁查詢MySql優化巢狀
- MySQL 千萬資料庫深分頁查詢優化,拒絕線上故障!MySql資料庫優化
- MySQL分優化之超大頁查詢MySql優化
- mysql 使用技巧 分頁limitMySqlMIT
- 安全快速修改Mysql資料庫名的5種方法MySql資料庫
- 實現小資料量和海量資料的通用分頁顯示儲存過程儲存過程
- 10種優化頁面載入速度的方法優化
- 教你幾招,快速建立 MySQL 五百萬級資料,愉快的學習各種優化技巧MySql優化
- 五十種巧妙優化SQL Server資料庫的方法優化SQLServer資料庫
- ASP資料分頁方法
- MySql、SqlServer、Oracle 三種資料庫查詢分頁方式MySqlServerOracle資料庫
- MySQL 效能優化技巧MySql優化
- 整合內容營銷和關鍵詞優化的5種方法優化
- SQL優化:limit分頁優化SQL優化MIT
- 50種方法巧妙優化你的SQL Server資料庫優化SQLServer資料庫
- MySQL 百萬級資料量分頁查詢方法及其最佳化MySql
- 常用3種資料庫的Sql分頁資料庫SQL
- 介紹幾種提高mysql的效能和對於sql的優化的方法MySql優化
- 網頁圖片優化的實用工具和技巧分享網頁優化
- 101個MySQL的調節和優化技巧MySql優化
- 【IT老齊074】海量資料大頁碼MySQL查詢MySql