[英]How to Trace Mysql Slow-query-log-file Entries Using PHP Profiler
我剛開始使用PHP分析器在php腳本中查找文件,導致mysql查詢速度慢。 有人建議我使用xdebug來跟蹤慢速日志文件條目中的時間戳,而不是在同一時間戳執行的php profiler中的文件。
我已閱讀xdebug文檔但無法找到此問題的解釋。
任何人都可以給我啟蒙嗎?
我正在使用php 7.0,Debian 9。
我的慢查詢日志文件條目:
# Thread_id: 222244 Schema: user QC_hit: No
# Query_time: 51.019708 Lock_time: 0.000119 Rows_sent: 1 Rows_examined: 13295012
# Rows_affected: 0
SET timestamp=1559388099;
SELECT (COUNT(*)) AS `count`
FROM statistics Statistics WHERE (id >= 1 AND ad_type <> 3);
編輯:
它不是關於SELECT語句中的行計數,而是關於如何跟蹤導致請求發生緩慢的應用程序文件。
計算大型表的最有效方法是,您應該將計數存儲在其他位置的表中,並在需要時增加/減少該值,這樣您只需查詢單個單元格,51秒查詢的時間不到1秒。
我知道感覺這是多余的事情,但它是最有效和最佳的方式
有些主題建議查詢INFORMATION_SCHEMA,但鑒於您對WHERE
的需求,這根本無濟於事,其他一切與您的問題一樣低效。
您所需要的只是當前的計數,存儲它的地方,增加/減少它的功能以及您的好處
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.