Профайлинг запроса (вычисляем время выполнения)

Без учета времени выполнения запроса к Mysql далеко не уедите...

Итак, профайлинг помогает узнать полезные данные о работе ваших запросов:

 

1 пример:

 

<?php

// Подключаемся к базе данных
$dbConn = new mysqli('localhost', 'root', 'pass', 'db_shop');
// Устанавливаем режим профайлинга 
$dbConn->query('set profiling=1');
// Выполняем наш запрос
$dbConn->query('SELECT * FROM products');
$data_profile = $dbConn->query('show profiles');
// Получаем данные о профайлинге
$row = $data_profile->fetch_array();
// Закрываем режим профайлинга
$dbConn->query('set profiling=0');

// Выводим данные на экран
echo '<pre>';
print_r($row);
echo '</pre>';

// Получим время выполнения и строку sql-запроса
$duration = $row['Duration'];
$query = $row['Query'];

printf('Запрос: %s. Время выполнения - %s', $query, $duration);

 

В результате на экране появится общий массив данных и в частности время выполнения запроса. Это позволяет отловить и изменить слишком сложные запросы.

 

Добавить комментарий


Защитный код
Обновить

Вы здесь: Сайтостроение Создание сайта MySQL Профайлинг запроса (вычисляем время выполнения)