您好,登錄后才能下訂單哦!
本篇內容主要講解“怎么解決數據庫查詢非常慢問題”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么解決數據庫查詢非常慢問題”吧!
一、cpu load 非常高達到100%
1.top定位到哪個進程load值很高。
2.top定位到哪幾個線程load很高。
3.ps -eg | grep java 定位到jvm進程。
4.通過jstack查看jvm線程,發現load很高的是GC線程
5.查看GC頻率發現fullGC頻繁
6.查看dump文件,發現堆信息中老年代非常滿。90% 升到99%就進行fullGC恢復到90%
7.發現是之前引入的本地存儲的組件導致。
二、數據庫查詢非常慢
原sql : select * from student where age > 18 limit 100000 10.在數據量非常大的時候就會非常滿,因為索引查到的數據就非常大,然后遍歷索引,越到后面越慢。
如果數據id是遞增的,id是遞增的,可以每次記錄下id值,然后通過id來查找。 select * from student where age > 18 and id > 11100111 limit 10;
如果數據id不是遞增的。 select * from student where id > (select * from student where id > 100000 ) limit 10;
到此,相信大家對“怎么解決數據庫查詢非常慢問題”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。