有没有办法在浏览器中查看当前查询响应时间?

use*_*022 3 php mysql firefox-addon

有没有办法在浏览器中查看当前的 mysql 查询及其响应时间?我正在研究简单的 php,而不是任何框架。任何人都知道 FF 的任何插件,它为我提供了这些信息。

请帮忙

谢谢

Fab*_*ora 5

我使用MySQL 服务器的分析功能(从 5.0.37)。

<?php

// profiling init
$set_profiling = $mysqli->query( 'SET profiling = 1' );

// some stuff
$result1 = $mysqli->query( 'SELECT DESTINATIONCODE, ZONENAME FROM ZONES' );
$result2 = $mysqli->query( 'SELECT ZONENAME FROM ZONES' );


// showing profiling printout
$show_profiles = $mysqli->query( 'SHOW PROFILES' );
while( $row = $show_profiles->fetch_assoc() ) {
    echo '<pre>';   
    print_r( $row );    
    echo '</pre>'
}
Run Code Online (Sandbox Code Playgroud)

此外,如果您想在每次查询后获得更详细的报告,您可以使用:

$show_profile = $mysqli->query( 'SHOW PROFILE' );
Run Code Online (Sandbox Code Playgroud)

检查http://dev.mysql.com/tech-resources/articles/using-new-query-profiler.html

这有点原始的可视化,但它有效。

示例输出:

Array
(
    [Query_ID] => 1
    [Duration] => 0.00012000
    [Query] => SELECT DESTINATIONCODE, ZONENAME FROM ZONES
)
Array
(
    [Query_ID] => 2
    [Duration] => 0.00006800
    [Query] => SELECT ZONENAME FROM ZONES
)
Run Code Online (Sandbox Code Playgroud)

#1 查询的详细信息:

Array
(
    [Status] => (initialization)
    [Duration] => 0.000002
)
Array
(
    [Status] => checking query cache for query
    [Duration] => 0.000003
)
Array
(
    [Status] => checking privileges on cached 
    [Duration] => 0.000002
)
Array
(
    [Status] => checking permissions
    [Duration] => 0.000001
)
Array
(
    [Status] => sending cached result to clien
    [Duration] => 0.000056
)
Array
(
    [Status] => logging slow query
    [Duration] => 0.000001
)
Run Code Online (Sandbox Code Playgroud)