我正在用phpMyAdmin作爲前端使用MySQL數據庫(我不確定是否有遠程/客戶端訪問)。我有一個查詢數據庫的腳本,並希望查看每個查詢需要多長時間?什麼是最簡單的方法來做到這一點?我可以在服務器上安裝另一個PHP應用程序嗎?分析查詢在MySQL數據庫上的執行時間?
4
A
回答
1
如果您有權訪問MySQL
配置文件,您可以啓用general query log
和slow query log
。詳細請參照here。
因爲,因爲我認爲,5.1.6
,你也可以做它在運行時:
SET GLOBAL long_query_time = 10 /* which queries are considered long */
SET GLOBAL slow_query_log = 1
,但嘗試也無妨,我不rememeber確切版本的時候纔出現。
1
對於我所處理的大多數應用程序,我都包含可以在開發環境中輕鬆開啓的查詢分析輸出。這會輸出SQL,執行時間,堆棧跟蹤和顯示解釋輸出的鏈接。它還突出顯示查詢運行時間超過1秒。
雖然您可能不需要複雜的東西,但您可以通過在PHP中編寫一個包裝查詢執行的函數並將調試信息存儲在會話中(或者僅輸出)來獲得相當好的查詢運行時間它)。例如:
function run_query($sql, $debug=false, $output=false) {
$start = microtime(true);
$q = mysql_query($sql);
$time = microtime(true) - $start;
if($debug) {
$debug = "$sql<br/>$time<br/><br/>";
if($output) {
print $debug;
} else {
$_SESSION['sql_debug'] .= $debug;
}
}
return $q;
}
這只是一種粗略的想法。不管你想要什麼,你都可以調整它。
希望幫助 -
0
你應該long_query_time時間設置爲1,因爲它設置爲10會排除大多數,如果不是所有的查詢。 在mysql提示符下輸入
set @@ long_query_time = 1;
相關問題
- 1. Cassandra查詢執行時間分析
- 2. MySql查詢執行時間
- 3. MYSQL查詢執行時間
- 4. MYSQL查詢執行時間
- 5. Netbeans Java應用程序 - 在MySql數據庫上執行查詢
- 6. 用時間戳查詢MySQL數據庫
- 7. 隨時間查詢mysql數據庫
- 8. 數據庫查詢執行
- 9. 使用日期時間在SQL數據庫中執行查詢
- 10. NYTProf執行時分析和不分析時的執行時間
- 11. 實時分析mysql - 發現長時間運行的查詢
- 12. 在Sybase數據庫上執行查詢時Isql命令錯誤
- 13. 在遠程數據庫上執行SQL查詢時出錯
- 14. 在SQLite數據庫上執行查詢時出現NullPointerException
- 15. 如何在數據庫上執行查詢時修復SQLException?
- 16. 在MYSQL上的數據庫查詢
- 17. mysql查詢執行時間太長
- 18. NodeJS MySQL:度量查詢執行時間
- 19. MySQL查詢執行多個時間
- 20. mysql長時間查詢執行
- 21. mysql工作臺查詢執行時間
- 22. MySQL查詢執行時間比較
- 23. MySQL,JDBC查詢執行時間太長
- 24. 減少MySQL查詢執行時間
- 25. mysql - 長查詢執行時間鎖表
- 26. MySQL PHPExcel查詢執行時間太長
- 27. 針對MySQL數據庫記錄長時間運行的查詢?
- 28. Node.js中的數據庫查詢分析
- 29. mysql查詢執行時間強制託管端阻塞數據庫
- 30. MySql:增加分頁的查詢執行時間
我不認爲我有權訪問這些。我正在爲網站使用cPanel後端/配置管理系統。 – john 2009-06-05 13:53:04