如何测试mySQL查询的速度?

Chr*_*ris 4 php mysql

我有一个选择和查询如下...

    $sql = "SELECT * 
        FROM notifications 
        WHERE to_id='".$userid."' 
            AND (alert_read != '1' OR user_read != '1') 
        ORDER BY alert_time DESC";
    $result = mysql_query($sql);
Run Code Online (Sandbox Code Playgroud)

如何测试查询运行的时间?

Pra*_*u M 9

在您的特定会话profilingINFORMATION_SCHEMA数据库中创建了一个MySQL系统变量.请参阅以下代码:

mysql> set profiling=1;
Run Code Online (Sandbox Code Playgroud)

只需执行查询...查询的执行会话将存储在INFORMATION_SCHEMA.

mysql> select count(*) from client where broker_id=2;
Run Code Online (Sandbox Code Playgroud)

查询完成后,只需执行以下行:

mysql> show profiles;
Run Code Online (Sandbox Code Playgroud)

它显示了查询的整个执行时间.只需执行并告知下面的查询ID即可获得查询的执行/速度.

mysql> show profile for query 1;