亚洲高清vr播放在线观看,欧美亚洲精品免费,欧美日韩天堂在线视频,午夜福利小视频

      學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 電腦故障 > 電腦故障現(xiàn)象 > 系統(tǒng)變慢 >

      MySQL Sending data導(dǎo)致查詢很慢問題怎么解決

      時(shí)間: 加城1195 分享

        我們使用電腦和手機(jī)時(shí)候最不能忍受就是設(shè)備又卡又慢了,嚴(yán)重影響我們工作或者游戲體驗(yàn)。對(duì)于數(shù)據(jù)庫,有用戶遇到MySQL Sending data導(dǎo)致查詢很慢問題,怎么解決呢?這篇文章主要介紹了解決MySQL Sending data導(dǎo)致查詢很慢問題的方法與思路,感興趣的小伙伴們可以參考一下

        【問題現(xiàn)象】

        使用sphinx支持倒排索引,但sphinx從mysql查詢?cè)磾?shù)據(jù)的時(shí)候,查詢的記錄數(shù)才幾萬條,但查詢的速度非常慢,大概要4~5分鐘左右

        【處理過程】

        1)explain

        首先懷疑索引沒有建好,于是使用explain查看查詢計(jì)劃,結(jié)果如下:

        從explain的結(jié)果來看,整個(gè)語句的索引設(shè)計(jì)是沒有問題的,除了第一個(gè)表因?yàn)闃I(yè)務(wù)需要進(jìn)行整表掃描外,其它的表都是通過索引訪問

        2)show processlist;

        explain看不出問題,那到底慢在哪里呢?

        于是想到了使用 show processlist查看sql語句執(zhí)行狀態(tài),查詢結(jié)果如下:

        發(fā)現(xiàn)很長一段時(shí)間,查詢都處在 “Sending data”狀態(tài)

        查詢一下“Sending data”狀態(tài)的含義,原來這個(gè)狀態(tài)的名稱很具有誤導(dǎo)性,所謂的“Sending data”并不是單純的發(fā)送數(shù)據(jù),而是包括“收集 + 發(fā)送 數(shù)據(jù)”。

        這里的關(guān)鍵是為什么要收集數(shù)據(jù),原因在于:mysql使用“索引”完成查詢結(jié)束后,mysql得到了一堆的行id,如果有的列并不在索引中,mysql需要重新到“數(shù)據(jù)行”上將需要返回的數(shù)據(jù)讀取出來返回個(gè)客戶端。

        3)show profile

        為了進(jìn)一步驗(yàn)證查詢的時(shí)間分布,于是使用了show profile命令來查看詳細(xì)的時(shí)間分布

        首先打開配置:set profiling=on;

        執(zhí)行完查詢后,使用show profiles查看query id;

        使用show profile for query query_id查看詳細(xì)信息;

        結(jié)果如下:

        從結(jié)果可以看出,Sending data的狀態(tài)執(zhí)行了216s

        4)排查對(duì)比

        經(jīng)過以上步驟,已經(jīng)確定查詢慢是因?yàn)榇罅康臅r(shí)間耗費(fèi)在了Sending data狀態(tài)上,結(jié)合Sending data的定義,將目標(biāo)聚焦在查詢語句的返回列上面

        經(jīng)過一 一排查,最后定為到一個(gè)description的列上,這個(gè)列的設(shè)計(jì)為:`description`varchar(8000) DEFAULT NULL COMMENT '游戲描述',

        于是采取了對(duì)比的方法,看看“不返回description的結(jié)果”如何。show profile的結(jié)果如下:

        可以看出,不返回description的時(shí)候,查詢時(shí)間只需要15s,返回的時(shí)候,需要216s,兩者相差15倍

        補(bǔ)充:解決系統(tǒng)變慢的常用技巧方法

        1、在我的電腦窗口,右擊要清理的盤符―“屬性”―“清理磁盤”--勾選要?jiǎng)h除的文件--確定--是。

        2、右鍵瀏覽器e――屬性――點(diǎn)2個(gè)刪除1個(gè)清除(都要逐一確定)――確定 。

        3、把C:\WINDOWS\Prefetch(預(yù)讀文件)把里面的文件全部刪除

        4、用優(yōu)化大師或超級(jí)兔子清理注冊(cè)表和垃圾文件。

        5、“開始”――運(yùn)行中輸入msconfig――確定――啟動(dòng)――除了輸入法ctfmon以外的勾全去掉。

        6、右鍵我的電腦”――屬性――點(diǎn)高級(jí)――點(diǎn)啟動(dòng)和故障恢復(fù)中的設(shè)置――去掉所有的勾――寫入調(diào)試信息選擇“無”――確定――點(diǎn)高級(jí)下面錯(cuò)誤報(bào)告――點(diǎn)禁用――2次確定。

        7、“開始”..打開控制面板中的文件夾選項(xiàng)..點(diǎn)查看..點(diǎn)去末項(xiàng)自動(dòng)搜索文件夾前面的勾..確定。

        8、右鍵我的電腦――屬性――硬件――設(shè)備管理器――雙擊IDE控制器――次要通道――高級(jí)設(shè)置――傳送模式都選DMA――設(shè)備類型選無――確定――主要通道也同樣設(shè)置――確定。

        9、右鍵C盤進(jìn)行磁盤清理和其它選項(xiàng)中的系統(tǒng)還原清理。

        10、刪除不用的程序軟件。


      查詢很慢問題怎么解決相關(guān)文章:

      1.ppt2013實(shí)用技巧怎么解決ppt保存速度慢的問題

      2.DNS解析故障及修復(fù)方法

      3.wifi為什么網(wǎng)速慢

      4.無線wifi網(wǎng)速很慢怎么解決

      5.上網(wǎng)慢怎么檢查DNS設(shè)置 上網(wǎng)慢檢查DNS設(shè)置的方法

      4036063