文章詳情頁
mysql 數據幾十萬 CPU過高
瀏覽:129日期:2022-06-15 08:12:47
問題描述
一個數據表數據有幾十萬的樣子 在查詢頁面反復的時候 CPU特別高基本爆滿SQl語句select count(*) from emp where catid <> 3 and cid =2; 用戶做分頁數量select * from emp limit 1,10; 本頁顯示的
問題解答
回答1:你這個根本沒有訪問索引,直接讀硬盤數據
回答2:sql 語句 發一下。
回答3:InnoDB是沒有直接保存表的數據總數的,select count(*) from emp;要掃一遍索引,反復查當然要耗CPU。
我的測試表有兩千萬數據,沒緩存時count(*)要15秒,有緩存后也要3秒。
show table status where Name = ’your table name’
可以拿到近似的行數。
回答4:這個可以用延遲關聯查詢(索引覆蓋查詢)
相關文章:
1. 關docker hub上有些鏡像的tag被標記““This image has vulnerabilities””2. Span標簽3. css - 求推薦適用于vue2的框架 像bootstrap這種類型的4. docker-machine添加一個已有的docker主機問題5. java - Collections類里的swap函數,源碼為什么要新定義一個final的List型變量l指向傳入的list?6. css - 關于div自適應問題,大家看圖吧,說不清7. android新手一枚,android使用httclient獲取服務器端數據失敗,但是用java工程運行就可以成功獲取。8. angular.js使用$resource服務把數據存入mongodb的問題。9. redis啟動有問題?10. SessionNotFoundException:會話ID為null。調用quit()后使用WebDriver嗎?(硒)
排行榜
