日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql每一步花费时间_MySQL花费更多时间发送数据

發布時間:2025/3/19 数据库 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql每一步花费时间_MySQL花费更多时间发送数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我有一個特殊的查詢,它需要很長時間才能執行,同一表上的其他查詢執行得非常快. mysql中啟用了Querycache,但是每次下面的查詢每次都花費超過80秒,并且CPU利用率超過100%.

我無法修改查詢,因為它是由Drupal生成的.我還有什么可以做以提高性能?

查詢是:

select count(*)

from (

SELECT slk.key_id AS key_id

FROM slk slk

LEFT JOIN users users ON slk.uid = users.uid

LEFT JOIN node node_users ON users.uid = node_users.uid

AND node_users.type = 'profile'

) count_alias;

以下是個人資料信息:

+--------------------------------+-----------+

| Status | Duration |

+--------------------------------+-----------+

| starting | 0.000029 |

| checking query cache for query | 0.000093 |

| Opening tables | 0.000210 |

| System lock | 0.000007 |

| Table lock | 0.000075 |

| optimizing | 0.000008 |

| statistics | 0.000113 |

| preparing | 0.000027 |

| executing | 0.000004 |

| Sending data | 66.086903 |

| init | 0.000027 |

| optimizing | 0.000009 |

| executing | 0.000018 |

| end | 0.000003 |

| query end | 0.000004 |

| freeing items | 0.000049 |

| storing result in query cache | 0.000116 |

| removing tmp table | 0.033162 |

| closing tables | 0.000106 |

| logging slow query | 0.000003 |

| logging slow query | 0.000085 |

| cleaning up | 0.000007 |

+--------------------------------+-----------+

對查詢的解釋給出:

| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |

| 1 | PRIMARY | NULL | NULL | NULL | NULL | NULL | NULL | NULL | Select tables optimized away |

| 2 | DERIVED | slk | ALL | NULL | NULL | NULL | NULL | 55862 | |

| 2 | DERIVED | users | eq_ref | PRIMARY | PRIMARY | 4 | gscom.slk.uid | 1 | Using index |

| 2 | DERIVED | node_users | ref | node_type,uid,idx_ctp | uid | 4 | gscom.users.uid | 3 | |

idx_ctp是(uid,類型)上的索引.

查詢緩存正在運行,下面是統計信息.

顯示變量,例如’%query_cache%’;:

| Variable_name | Value |

| have_query_cache | YES |

| query_cache_limit | 2097152 |

| query_cache_min_res_unit | 4096 |

| query_cache_size | 52428800 |

| query_cache_type | ON |

| query_cache_wlock_invalidate | OFF |

mysql>顯示狀態,例如“%Qcache%” ;:

| Variable_name | Value |

| Qcache_free_blocks | 1255 |

| Qcache_free_memory | 22902848 |

| Qcache_hits | 1484908 |

| Qcache_inserts | 1036344 |

| Qcache_lowmem_prunes | 95086 |

| Qcache_not_cached | 3975 |

| Qcache_queries_in_cache | 14271 |

| Qcache_total_blocks | 30117 |

總結

以上是生活随笔為你收集整理的mysql每一步花费时间_MySQL花费更多时间发送数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。