![]() |
|
|||
WebMoney: WMZ Z294115950220 WMR R409981405661 WME E134003968233 |
Visa 4274 3200 2453 6495 |
MySQL 8.0 схему Представления, которые суммируют данные Performance Schema
в более понятную форму. Для новых установок mysql_upgrade
вернет ошибку, если Объекты Перед использованием Поскольку Для полного доступа к Также необходимо иметь привилегии для объектов, лежащих в основе
Определенные инструменты и потребители Performance Schema должны быть
включены и (для инструментов) рассчитаны, чтобы в полной мере воспользоваться
возможностями Все Вы можете использовать Для использования Вы можете сделать Для доступа к объектам Чтобы исследовать определение объекта в
mysqldump
и mysqlpump
не выводят Следующие представления Сообщение продвижения этапа требует, чтобы
Следующяя таблица дает список объектов
Таблица 24.1. Таблицы и триггеры
sys Schema Таблица 24.2. Представления
sys Schema Таблица 24.3.
Хранимые процедуры sys Schema Таблица 24.4. Сохраненные
функции sys Schema Следующие разделы описывают таблицы и триггеры
Эта таблица содержит параметры конфигурации
У таблицы Имя параметра конфигурации. Значение параметра конфигурации. timestamp новой модификации строки. Учетная запись, которая сделала новую модификацию строки. Значение
Чтобы минимизировать число прямых чтений таблицы
Например, опция Чтобы прекратить использовать определяемую пользователем переменную и
вернуться к использованию значения в таблице, установите переменную в
Обычные отношения, описанные между опциями в таблице
in the Следующий список описывает опции в таблице
Если эта опция Если эта опция Максимальная длина для вывода JSON, произведенного функцией
Максимальное количество строк, чтобы возвратить для представлений, у
которых нет никакого встроенного предела. Например, у представления
Пользовательский запрос или представление, которое будет использоваться
процедурой Максимальная длина запросов, возвращенных функцией
Другие опции могут быть добавлены к таблице
Для строк, добавленных к таблице
Триггер Следующие разделы описывают представления
Представления без Значения байта отформатированы с использованием единиц размера
Эти представления суммируют деятельность запросов, ввод/вывод файла и
соединения, сгруппированные хостом. У представлений Хост, с которого соединялся клиент. Строки, у которых столбец
Общее количество запросов для хоста. Общее количество времени ожидания рассчитанных запросов для хоста. Среднее время ожидания на рассчитанный запрос для хоста. Общее количество сканирований таблицы для хоста. Общее количество событий ввода/вывода файла для хоста. Общее время ожидания рассчитанных событий ввода/вывода файла для хоста.
Текущее число соединений для хоста. Общее количество соединений для хоста. Число различных пользователей для хоста. Текущее количество выделенной памяти для хоста. Общая сумма выделенной памяти для хоста. Эти представления суммируют ввод/вывод файла, сгруппированный хостом. По
умолчанию, строки сортированы по убыванию полного времени ожидания
ввода/вывода файла. У представлений Хост, с которого соединялся клиент. Строки, у которых столбец
Общее количество событий ввода/вывода файла для хоста. Общее количество времени ожидания событий ввода/вывода файла для хоста.
Эти представления суммируют ввод/вывод файла, сгруппированный типом
событий и узлом. По умолчанию строки сортированы узлом и по убыванию полного
времени ожидания ввода/вывода. У представлений
Хост, с которого соединялся клиент. Строки, у которых столбец
Имя события ввода/вывода файла. Общее количество возникновений случая ввода/вывода файла для узла. Общее время ожидания рассчитанных возникновений случая ввода/вывода
файла для узла. Максимальное время ожидания рассчитанных возникновений случая ввода/вывода
файла для узла. Эти представления суммируют этапы запроса, сгруппированные хостом. По
умолчанию строки сортированы узлом и по убыванию полного времени ожидания. У представлений
Хост, с которого соединялся клиент. Строки, у которых столбец
Имя этапа событий. Общее количество возникновений случая этапа для узла. Общее время ожидания рассчитанных возникновений случая этапа для узла. Среднее время ожидания на рассчитанное возникновение случая
этапа для узла. Эти представления суммируют полную статистику запросов, сгруппированную
узлом. По умолчанию строки сортированы по убыванию полного времени ожидания.
У представлений
Хост, с которого соединялся клиент. Строки, у которых столбец
Общее количество запросов для узла. Общее время ожидания рассчитанных запросов для узла. Максимальн время ожидания рассчитанных запросов для узла. Полное время ожидания блокировок рассчитанными запросами для узла. Общее количество строк, возвращенное запросами для узла. Общее количество строк, прочитанных из механизмов хранения
запросами для узла. Общее количество строк, затронутое запросами для узла. Общее количество полного сканирования таблицы запросами для узла.
Эти представления суммируют сведения о выполненных запросах,
сгруппированных типом запроса и узлом. По умолчанию строки сортированы узлом
и по убыванию полного времени ожидания. У представлений
Хост, с которого соединялся клиент. Строки, у которых столбец
Заключительный компонент имени события. Общее количество возникновений события запроса для узла. Общее время ожидания рассчитанных возникновений случая запроса для узла.
Максимальное время ожидания рассчитанных возникновений случая
запроса для узла. Полное время ожидания блокировок рассчитанными возникновениями
случая запроса для узла. Общее количество строк, возвращенных возникновениями случая
запроса для узла. Общее количество строк, считанных из механизмов хранения возникновениями
случая запроса для узла. Общее количество строк, затронутое возникновениями случая запроса для узла.
Общее количество полного сканирования таблицы возникновениями случая
запроса для узла. Эти представления суммируют информацию в таблице
У представлений Название схемы объекта или Общее количество байтов, выделенное для схемы. Общее количество байтов данных, выделенное для схемы. Общее количество страниц, выделенное для схемы. Общее количество хешированных страниц, выделенное для схемы. Общее количество старых страниц, выделенное для схемы. Общее количество кэшируемых строк для схемы. Эти представления суммируют информацию в таблице
У представлений Название схемы объекта или Имя таблицы. Общее количество байтов, выделенное для таблицы. Общее количество байтов данных, выделенное для схемы. Общее количество страниц, выделенное для схемы. Общее количество хешированных страниц, выделенное для схемы. Общее количество старых страниц, выделенное для схемы. Общее количество кэшируемых строк для схемы. Эти представления суммируют блокировки У представлений
Время, в которое блокировка начала ждать. Сколько времени блокировка ждала (значение
Сколько времени блокировка ждала в секундах. Название заблокированной таблицы. Этот столбец содержит объединенные значения схемы/имени таблицы. Это было
удалено в MySQL 8.0.1 и заменено столбцами
Схема, которая содержит заблокированную таблицу. Этот столбец был добавлен в MySQL 8.0.1. Название заблокированной таблицы. Этот столбец был добавлен в MySQL 8.0.1. Название заблокированного разделения, если есть, иначе Название заблокированного подразделения, если
есть, иначе Название заблокированного индекса. Тип блокировки ожидания. ID транзакции ожидания. Время, в которое запускалась транзакция. Сколько времени транзакция ждала (значение
Число строк заблокировано транзакцией. Число строк изменено транзакцией. Идентификатор процесса транзакции. Запрос, который ждет блокировки. Идентификатор блокировки ожидания. Режим блокировки ожидания. Идентификатор транзакции, которая блокирует блокировку ожидания. Идентификатор блокирующей транзакции. Запрос, выполняемый блокирующей транзакцией. Идентификатор блокировки, которая блокирует блокировку ожидания. Режим блокировки, которая блокирует блокировку ожидания. Время, в которое запускалась блокирующая транзакция. Сколько времени блокирующая транзакция выполняется (значение
Число строк заблокировано блокирующей транзакцией. Число строк изменено блокирующей транзакцией. Запрос Запрос Эти представления суммируют потребителей ввода/вывода, чтобы вывести на
экран время ожидания ввода/вывода, сгруппированное потоком. По умолчанию
строки отсортированы по убыванию полного времени ожидания ввода/вывода. У представлений Для потоков переднего плана учетная запись связана с потоком.
Для фоновых потоков имя потока. Общее количество событий ввода/вывода для потока. Общее время ожидания рассчитанных событий ввода/вывода для потока. Минимальное время ожидания рассчитанных событий ввода/вывода для потока.
Среднее время ожидания на рассчитанный случай ввода/вывода для потока. Максимальное время ожидания рассчитанных событий ввода/вывода для потока.
Идентификатор потока. Для потоков переднего плана processlist ID потока. Для фоновых потоков
Эти представления суммируют глобальных потребителей ввода/вывода, чтобы
вывести на экран количество ввода/вывода, сгруппированного файлом. По
умолчанию строки отсортированы по убыванию полного ввода/вывода
(байтов прочитано и записано). У представлений Имя пути к файлу. Общее количество событий чтения для файла. Общее количество байтов, прочитанных из файла. Среднее число байтов за чтение из файла. Общее количество событий записи для файла. Общее количество байтов, записанных в файл. Среднее число байтов за запись в файл. Общее количество байтов, прочитанных и записанных в файл. Процент полных байтов ввода/вывода, которые были записаны. Эти представления суммируют глобальных потребителей ввода/вывода, чтобы
вывести на экран время ожидания ввода/вывода, сгруппированное файлом. По
умолчанию строки отсортированы по убыванию полного времени ожидания. У представлений Имя пути к файлу. Общее количество событий ввода/вывода для файла. Общее время ожидания рассчитанных событий ввода/вывода для файла. Общее количество событий чтения для файла. Общее время ожидания рассчитанных событий чтения для файла. Общее количество событий записи для файла. Общее количество времени ожидания рассчитанных событий
записи для файла. Общее количество других событий ввода/вывода для файла. Общее время ожидания рассчитанных других событий ввода/вывода для файла.
Эти представления суммируют глобальных потребителей ввода/вывода, чтобы
вывести на экран количество ввода/вывода и время ожидания ввода/вывода,
сгруппированные случаем. По умолчанию строки сортированы по убыванию полного
ввода/вывода (прочитано и записано байтов). У представлений Имя события ввода/вывода без префикса Общее количество возникновений случая ввода/вывода. Общее время ожидания рассчитанных возникновений случая ввода/вывода. Минимальное время ожидания рассчитанных возникновений случая ввода/вывода.
Среднее время ожидания на рассчитанное возникновение случая ввода/вывода.
Максимальное время ожидания рассчитанных возникновений случая ввода/вывода.
Число запросов чтения для случая ввода/вывода. Число байтов, прочитанных для случая ввода/вывода. Среднее число байтов за чтение для случая ввода/вывода. Число запросов записи ввода/вывода. Число байтов, записанных для случая ввода/вывода. Среднее число байтов на запись для случая ввода/вывода. Общее количество байтов, прочиатнных и записанных
для случая ввода/вывода. Эти представления суммируют глобальных потребителей ввода/вывода, чтобы
вывести на экран количество ввода/вывода и время ожидания ввода/вывода,
сгруппированное случаем. По умолчанию строки сортированы по убыванию
полного времени ожидания. У представлений Имя события ввода/вывода без префикса Общее количество возникновений случая ввода/вывода. Общее время ожидания рассчитанных возникновений случая ввода/вывода. Среднее время ожидания на рассчитанное возникновение случая ввода/вывода.
Максимальное время ожидания рассчитанных возникновений случая ввода/вывода.
Общее время ожидания рассчитанных возникновений чтения случая ввода/вывода.
Общее время ожидания рассчитанных случаев записи. Общее время ожидания рассчитанных других возникновений
случая ввода/вывода. Число запросов чтения для случая ввода/вывода. Число байтов, прочитанных для случая ввода/вывода. Среднее число байтов на чтение для случая ввода/вывода. Число запросов записи. Число байтов, записанных для случая ввода/вывода. Среднее число байтов на запись для случая ввода/вывода. Эти представления суммируют деятельность ввода/вывода файла,
сгруппированную файлом и потоком. По умолчанию строки сортированы с новым
вводом/выводом в начале. У представлений Для потоков переднего плана учетная запись связана с потоком (и номер
порта для соединений TCP/IP). Для фоновых потоков имя и ID потока. Имя пути к файлу. Время ожидания для случая ввода/вывода файла. Тип работы. Число байтов данных для случая ввода/вывода файла. Эти представления суммируют использование памяти, сгруппированное узлом.
По умолчанию строки сортированы по убыванию использования объема памяти. У представлений
Хост, с которого соединялся клиент. Строки, у которых столбец
Текущее число выделенных блоков памяти, которые еще не были
освобождены для хоста. Текущее число выделенных байтов, которые еще не были
освобождены для хоста. Текущее число выделенных байтов на блок памяти для хоста. Самое большое текущее распределение памяти в байтах для хоста. Полное распределение памяти в байтах для хоста. Эти представления суммируют использование памяти, сгруппированное потоком.
По умолчанию строки сортированы по убыванию использования объема памяти. У представлений
ID потока. Пользователь потока или имя потока. Текущее число выделенных блоков памяти, которые еще не были
освобождены для потока. Текущее число выделенных байтов, которые еще не были
освобождены для потока. Текущее число выделенных байтов на блок памяти для потока. Самое большое текущее распределение памяти в байтах для потока. Полное распределение памяти в байтах для потока. Эти представления суммируют использование памяти, сгруппированное
пользователем. По умолчанию строки сортированы по убыванию
использования объема памяти. У представлений
Имя пользователя клиента. Строки, для которых столбец
Текущее число выделенных блоков памяти, которые еще не были
освобождены для пользователя. Текущее число выделенных байтов, которые еще не были
освобождены для пользователя. Текущее число выделенных байтов на блок памяти для пользователя. Самое большое текущее распределение памяти в байтах для пользователя. Полное распределение памяти в байтах для пользователя. Эти представления суммируют использование памяти, сгруппированное типом
распределения (то есть событием). По умолчанию строки сортированы по убыванию
используемого объема памяти. У представлений
Имя события памяти. Общее количество возникновений случая. Текущее число выделенных байтов, которые еще не были
освобождены для случая. Текущее число выделенных байтов на блок памяти для случая. Высшая точка числа блоков памяти, выделенных для случая. Высшая точка числа байтов, выделенных для случая. Высшая точка для среднего числа байтов на блок памяти,
выделенный для случая. Эти представления суммируют полное использование
памяти в пределах сервера. У представлений Сколько байт памяти выделено в пределах сервера. Это представление суммирует метрики сервера MySQL, чтобы показать имена
переменной, значения и типы. По умолчанию строки сортированы
типом и именем переменной. Представление Глобальные переменные состояния из таблицы Performance Schema
Есть некоторое дублирование информации между таблицами
Представление Метрическое имя. Метрический тип определяет источник, из
которого взято имя: Для глобальных переменных состояния: столбец
Метрическое значение. Метрический тип определяет источник, из
которого взято значение: Для глобальных переменных состояния: столбец
Метрический тип: Для глобальных переменных состояния: Включена ли метрика: Для глобальных переменных состояния: Эти представления суммируют processlist информацию. Они предоставляют
более полную информацию, чем запрос Описания столбца здесь кратки. Для дополнительной информации см. описание
таблицы Performance Schema У представлений
ID потока. ID соединения. Пользователь потока или имя потока. База данных по умолчанию для потока или Для потоков переднего плана тип команды, которую поток выполняет от имени
клиента, или Действие, случай или статус, которое указывает на то, что делает поток.
Время в секундах, которое поток был в его текущем состоянии. Запрос, который поток выполняет, или Сколько времени запрос выполняется. Процент работы, завершенной для этапов по сообщению продвижения
поддержки. См. раздел 24.3
. Время, потраченное на ожидание блокировок текущим запросом. Число строк, считанных из механизмов хранения текущим запросом. Число строк, возвращенное текущим запросом. Число строк, затронутых текущим запросом. Число внутренних временных таблиц в памяти, созданное текущим запросом.
Число внутренних временных таблиц на диске, созданное текущим запросом.
Число полного сканирования таблицы текущим запросом. Последний запрос, выполненный потоком, если там в настоящее время нет
выполняющегося или ждущего запроса. Сколько времени последний запрос выполняется. Число байтов выделено потоком. Название наиболее свежего ждущего случая потока. Время наиболее свежего ждущего случая потока. Исходный файл и номер строки, содержащей инструментованный код,
который произвел случай. Время ожидания текущей транзакции для потока. Статус текущей транзакции для потока. Был ли включен режим autocommit, когда текущая транзакция запускалась.
ID процесса клиента. Название программы клиента. Это представление возвращает информацию о потерянных инструментах
Performance Schema, чтобы указать, способна ли Performance Schema
контролировать все данные во время выполнения. У представления Имя переменной состояния Performance Schema, указывающее, какой тип
инструмента был потерян. Число инструментов. Это представление указывает, которые таблицы имеют столбцы
Таблицы в этих схемах исключены из вывода представления:
У представления
Схема, которая содержит таблицу. Таблица, которая содержит столбец Название столбца Тип данных столбца. Тип столбца, который является типом данных плюс возможно другая
информация. Например, для столбца типа Со знаком ли тип столбца. Без знака ли тип столбца. Максимальное разрешенное значение для столбца. Текущее значение Отношение использованных к разрешенным значениям для столбца. Это
указывает, сколько значений из последовательности
израсходовано.
Эти представления обеспечивают индексную статистику. По умолчанию строки
сортированы по убыванию и общему количеству времени ожидания индекса. У представлений Схема, которая содержит таблицу. Таблица, которая содержит индекс. Название индекса. Общее количество чтения строк, используя индекс. Общее время ожидания рассчитанных чтений, используя индексирование. Общее количество строк вставлено в индекс. Общее время ожидания рассчитанных вставок в индекс. Общее количество строк обновлено в индексировании. Общее время ожидания рассчитанных обновлений в индексировании. Общее количество строк, удаленных из индекса. Общее время ожидания рассчитанных удалений из индекса. Это представление суммирует типы объектов в пределах каждой схемы. По
умолчанию строки отсортированы типом объекта и схемой. Для случаев MySQL с большим количеством объектов это представление
может занять много времени для выполнения. У представления Имя схемы. Тип объекта: Число объектов данного типа в схеме. Представление В следующих описаниях столбца доминантный индекс тот, который делает
избыточное индексирование избыточным. У представления Схема, которая содержит таблицу. Таблица, которая содержит индекс. Название избыточного индекса. Названия столбцов в избыточном индексе. Число неуникальных столбцов в избыточном индексе. Название доминантного индекса. Названия столбцов в доминантном индексе. Число неуникальных столбцов в доминантном индексе. Индексирует ли индекс только часть столбца. Запрос, чтобы удалить избыточный индекс. У представления Схема, которая содержит таблицу. Таблица, которая содержит индекс. Имя индекса. Число неуникальных столбцов в индексе. Индексирует ли индекс только часть столбца. Название столбцов в индексе. Это представление показывает, какие сеансы заблокированы, ожидая на
блокировках метаданных, и что блокирует их. Описания столбца здесь кратки. Для дополнительной информации см. описание
таблицы Performance Schema У представлений Схема, содержащая объект, который будет заблокирован. Название инструментованного объекта. Идентификатор потока, который ждет блокировки. Идентификатор processlist потока, который ждет блокировки. Учетная запись, связанная с сеансом, который ждет блокировки. Тип блокировки ожидания. Сколько времени блокировка ждет. Запрос, который ждет блокировку. Сколько времени запрос ждал, в секундах. Число строк, затронутое запросом. Число строк, считанных из механизмов хранения запросом. Идентификатор потока, который блокирует блокировку ожидания. processlist ID потока, который блокирует блокировку ожидания. Учетная запись, связанная с потоком, который
блокирует блокировку ожидания. Тип блокировки, которая блокирует блокировку ожидания. Сколько времени блокировка была проведена. Запрос Запрос Эти представления суммируют табличную статистику. По умолчанию строки
сортированы по убыванию общего времени ожидания. Это вспомогательные представления для
У представлений Схема, которая содержит таблицу. Имя таблицы. Общее время ожидания рассчитанных событий ввода/вывода для таблицы. Общее количество строк, прочитанных из таблицы. Общее время ожидания рассчитанных событий ввода/вывода чтения для таблицы.
Общее количество строк, вставленных в таблицу. Общее время ожидания рассчитанных событий ввода/вывода вставки для таблицы.
Общее количество строк, обновленных в таблице. Общее время ожидания рассчитанных событий ввода/вывода обновления для таблицы.
Общее количество строк, удаленных из таблицы. Общее время ожидания рассчитанных событий удаления
ввода/вывода для таблицы. Общее количество запросов чтения для таблицы. Общее количество байтов, прочитанных из таблицы. Общее время ожидания чтений из таблицы. Общее количество запросов записи для таблицы. Общее количество байтов, записанных в таблицу. Общее время ожидания записи в таблицу. Общее количество разного ввода/вывода для таблицы. Общее время ожидания разных запросов ввода/вывода для таблицы.
Эти представления суммируют табличную статистику, включая статистику
буферного бассейна У представлений
Схема, которая содержит таблицу. Имя таблицы. Общее количество строк, прочитанных из таблицы. Общее время ожидания рассчитанных событий ввода/вывода чтения для таблицы.
Общее количество строк, вставленных в таблицу. Общее время ожидания рассчитанных событий ввода/вывода вставки для таблицы.
Общее количество строк обновлено в таблице. Общее время ожидания рассчитанных событий ввода/вывода обновления для таблицы.
Общее количество строк, удаленных из таблицы. Общее время ожидания рассчитанных событий удаления
ввода/вывода для таблицы. Общее количество запросов чтения для таблицы. Общее количество байтов, прочитанных из таблицы. Общее время ожидания чтений из таблицы. Общее количество запросов записи для таблицы. Общее количество байтов, записанных в таблицу. Общее время ожидания записи в таблицу. Общее количество разного ввода/вывода для таблицы. Общее время ожидания разных запросов ввода/вывода для таблицы.
Общее количество байт, выделенных для буферов Общее количество байт, выделенных для данных Общее количество байт, выделенных для данных Общее количество страниц Общее количество хешированных страниц
Общее количество старых страниц Общее количество кэшируемых строк Они показывают, к каким таблицам получают доступ с полным сканированием
таблицы. По умолчанию строки сортированы по убыванию просмотренных строк. У представлений
Имя схемы. Имя таблицы. Общее количество строк просмотрено полными просмотрами таблицы. Общее время ожидания полных просмотров таблицы. Это представлени показывает индексы, для которых нет никаких событий,
которые указывают, что они не используются. По умолчанию строки
сортированы схемой и таблицей. Это представление является самым полезным, когда обработка идет столь
достаточно долго, что ее рабочая нагрузка является важной. Иначе присутствие
индекса в этом представлении, возможно, не является значащим. У представления Имя схемы. Имя таблицы. Неиспользуемое имя индекса. Эти представления подобны
Для каждого соединения это представление выводит на экран версию SSL, шифр
и количество повторно использованных сеансов SSL. У представления Идентификатор потока для соединения. Версия SSL, которая используется для соединения. Шифр SSL, который используется для соединения. Число повторно использованных сеансов SSL для соединения. Эти представления перечисляют нормализованные запросы с соединенной
статистикой. Контент подражает представлению MySQL Enterprise Monitor
Query Analysis. По умолчанию строки сортированы по убыванию
полного времени ожидания. У представлений Нормализованная строка запроса. База данных по умолчанию для запроса или Общее количество полного сканирования таблицы для запроса. Общее количество времени выполнения запроса. Общее количество ошибок, произведенных запросом. Общее количество предупреждений, произведенных запросом. Общее время ожидания рассчитанных возникновений запроса. Максимальное время ожидания рассчитанных возникновений запроса. Среднее время ожидания на рассчитанное возникновение запроса. Полное время ожидания блокировок рассчитанными возникновениями запроса.
Общее количество строк, возвращенное запросом. Среднее число строк, возвращенное на возникновение запроса. Общее количество строк, считанных из механизмов хранения. Среднее число строк, считанных из механизмов хранения на запрос. Общее количество строк затронуто запросом. Среднее число строк затронуто за возникновение запроса. Общее количество внутренних временных таблиц в памяти
создано возникновениями запроса. Общее количество внутренних временных таблиц на диске
создано возникновениями запроса. Общее количество строк сортировано возникновениями запроса. Общее количество объединений сортировки. Обзор запроса. Время, в которое был впервые отмечен запрос. Время, в которое был последний раз отмечен запрос. Эти представления выводят на экран нормализованные запросы, которые
произвели ошибки или предупреждения. По умолчанию строки сортированы по
убыванию количества ошибок и предупреждений. У представлений
Нормализованная строка запроса. База данных по умолчанию для запроса или
Общее количество времени выполнения запроса. Общее количество ошибок произведено возникновениями запроса. Процент возникновений запросов, которые произвели ошибки. Общее количество предупреждений произведено возникновениями запроса. Процент возникновений запросов, которые произвели предупреждения. Время, в которое был впервые отмечен запрос. Время, в которое был последний раз отмечен запрос. Обзор запроса. Эти представления выводят на экран нормализованные запросы, которые
сделали полное сканирование таблицы. По умолчанию строки сортированы по
убыванию процента времени, за которое полный просмотр был сделан и убыванию
полного времени ожидания. У представлений
Нормализованная строка запроса. База данных по умолчанию для запроса или Общее количество времени выполнения запроса. Общее время ожидания рассчитанных событий запроса. Общее количество раз, когда индекс не использовался,
чтобы просмотреть таблицу. Общее количество раз, когда хороший индекс не использовался,
чтобы просмотреть таблицу. Процент раз, когда индекс не использовался,
чтобы просмотреть таблицу. Общее количество строк возвратилось из таблицы. Общее количество строк, прочитанных из механизма хранения для таблицы. Среднее число строк возвратилось из таблицы. Среднее число строк, прочитанных из механизма хранения для таблицы. Время, в которое был впервые отмечен запрос. Время, в которое был последний раз отмечен запрос. Обзор запроса. Эти представления перечисляют запросы со временем выполнения в 95%.
По умолчанию строки сортированы по убыванию среднего времени ожидания. Оба представления используют два вспомогательных представления
У представлений
Нормализованная строка запроса. База данных по умолчанию для запроса или Общее количество полного сканирования таблиц возникновениями запроса. Общее количество времени выполнения запроса. Общее количество ошибок, произведенное возникновениями запроса. Общее количество предупреждений, произведенное возникновениями запроса.
Общее время ожидания рассчитанных возникновений запроса. Максимальное время ожидания рассчитанных возникновений запроса. Среднее время ожидания на рассчитанное возникновение запроса. Общее количество строк возвратилось возникновениями запроса. Среднее число строк возвратилось на возникновение запроса. Общее количество строк, считанных из механизмов
хранения возникновениями запроса. Среднее число строк, считанных из механизмов хранения
на возникновение запроса. Время, в которое был впервые отмечен запрос. Время, в которое был последний раз отмечен запрос. Обзор запроса. Эти представления перечисляют нормализованные запросы, которые выполнили
сортировки. По умолчанию строки сортированы по убыванию
полного времени ожидания. У представлений Нормализованная строка запроса. База данных по умолчанию для запроса или Общее количество времени выполнения запроса. Общее время ожидания рассчитанных возникновений запроса. Общее число объединений сортировок, вызванных запросом. Среднее число объединений сортировок, вызванных запросом. Общее количество сортировок с использованием сканирования таблицы. Общее количество сортировок с использованием диапазона. Общее количество строк сортировано возникновениями запроса. Среднее число строк сортировано на возникновение запроса. Время, в которое был впервые отмечен запрос. Время, в которое был последний раз отмечен запрос. Обзор запроса. Эти представления перечисляют нормализованные запросы, которые
использовали временные таблицы. По умолчанию строки сортированы по убыванию
числа временных таблиц на диске и убыванию числа временных
используемых таблиц в памяти. У представлений Нормализованная строка запроса. База данных по умолчанию для запроса или Общее количество времени выполнения запроса. Общее количество внутренних временных таблиц в памяти,
созданных возникновениями запроса. Общее количество внутренних временных таблиц на диске,
созданных возникновениями запроса. Среднее число внутренних временных таблиц создано
на возникновение запроса. Процент внутренних временных таблиц в памяти, которые были преобразованы в
таблицы на диске. Время, в которое был впервые отмечен запрос. Время, в которое был последний раз отмечен запрос. Обзор запроса. Эти представления суммируют деятельность запросов, ввод/вывод файла и
соединения, сгруппированные пользователем. По умолчанию строки сортированы
по убыванию полного времени ожидания. У представлений Имя пользователя клиента. Строки, для которых столбец Общее количество запросов для пользователя. Общее время ожидания рассчитанных запросов для пользователя. Среднее время ожидания на рассчитанный запрос для пользователя. Общее количество сканирования таблицы для пользователя. Общее количество событий ввода/вывода файла для пользователя. Общее время ожидания рассчитанных событий ввода/вывода
файла для пользователя. Текущее число соединений для пользователя. Общее количество соединений для пользователя. Число отличных хостов, с которых произошли соединения для пользователя.
Текущее количество выделенной памяти для пользователя. Общая сумма выделенной памяти для пользователя. Эти представления суммируют ввод/вывод файла, сгруппированный
пользователем. По умолчанию строки сортированы по убыванию полного времени
ожидания ввода/вывода файла. У представлений Имя пользователя клиента. Строки, для которых столбец Общее количество событий ввода/вывода файла для пользователя. Общее время ожидания рассчитанных событий ввода/вывода
файла для пользователя. Эти представления суммируют ввод/вывод файла, сгруппированный типом
событий и пользователем. По умолчанию строки сортированы по пользователю и
убыванию полного времени ожидания. У представлений
Имя пользователя клиента. Строки, для которых столбец Имя события ввода/вывода файла. Общее количество возникновений случая ввода/вывода файла для пользователя.
Общее время ожидания рассчитанных возникновений случая ввода/вывода
файла для пользователя. Максимальное время ожидания рассчитанных возникновений случая ввода/вывода
файла для пользователя. Эти представления суммируют этапы, сгруппированные пользователем. По
умолчанию строки сортированы по пользователю и убыванию полного
времени ожидания этапа. У представлений Имя пользователя клиента. Строки, для которых столбец Имя этапа события. Общее количество возникновений случая этапа для пользователя. Общее время ожидания рассчитанных возникновений случая
этапа для пользователя. Среднее время ожидания на рассчитанное возникновение случая
этапа для пользователя. Эти представления суммируют полную статистику запросов, сгруппированную
пользователем. По умолчанию строки сортированы по убыванию
полного времени ожидания. У представлений
Имя пользователя клиента. Строки, для которых столбец Общее количество запросов для пользователя. Общее время ожидания рассчитанных запросов для пользователя. Максимальное время ожидания рассчитанных запросов для пользователя. Полное время ожидания блокировок рассчитанными запросами для пользователя.
Общее количество строк, возвращенное запросами для пользователя. Общее количество строк, считанных из механизмов хранения
запросами для пользователя. Общее количество строк затронуто запросами для пользователя. Общее количество полного сканирования таблицы запросами для пользователя.
Эти представления суммируют информацию о выполненных запросах,
сгруппированных по типу запроса и пользователю. По умолчанию строки
сортированы по пользователю и убыванию полного времени ожидания. У представлений
Имя пользователя клиента. Строки, для которых столбец Заключительный компонент имени запроса. Общее количество возникновений случая запроса для пользователя. Общее время ожидания рассчитанных возникновений случая
запроса для пользователя. Максимальное время ожидания рассчитанных возникновений случая
запроса для пользователя. Полное время ожидания блокировок рассчитанными возникновениями случая
запроса для пользователя. Общее количество строк, возвращенное возникновениями случая
запроса для пользователя. Общее количество строк, считанных из механизмов хранения возникновениями
случая запроса для пользователя. Общее количество строк затронуто возникновениями случая
запроса для пользователя. Общее количество полного сканирования таблицы возникновениями случая
запроса для пользователя. Это представление обеспечивает текущие версии
У представления Версия Версия MySQL server. Эти представления суммируют средние времена ожидания класса,
сгруппированные классом событий. По умолчанию строки сортированы по убыванию
среднего времени ожидания. Проигнорированы неактивные события. Класс событий определен, отрезая от имени событий все после первых трех
компонентов. Например, класс для У представлений
Класс событий. Общее количество возникновений событий в классе. Общее время ожидания рассчитанных возникновений событий в классе. Минимальное время ожидания рассчитанных возникновений событий в классе.
Среднее время ожидания на рассчитанное возникновение событий в классе. Максимальное время ожидания рассчитанных возникновений событий в классе.
Эти представления суммируют общие времена ожидания класса, сгруппированные
классом событий. По умолчанию строки сортированы по убыванию полного времени
ожидания. Проигнорированы неактивные события. Класс событий определен, отрезая от имени событий все после первых трех
компонентов. Например, класс для У представлений
Класс событий. Общее количество возникновений событий в классе. Общее время ожидания рассчитанных возникновений событий в классе. Минимальное время ожидания рассчитанных возникновений событий в классе.
Среднее время ожидания на рассчитанное возникновение событий в классе.
Максимальное время ожидания рассчитанных возникновений событий в классе.
Эти представления суммируют ожидания событий, сгруппированные хостом и
случаем. По умолчанию строки сортированы по хосту и убыванию полного времени
ожидания. Проигнорированы неактивные события. У представлений Хост, с которого произошло соединение. Имя событий. Общее количество возникновений случая для хоста. Общее время ожидания рассчитанных возникновений случая для хоста. Среднее время ожидания на рассчитанное возникновение случая для хоста.
Максимальное время ожидания рассчитанных возникновений случая для хоста.
Эти представления суммируют ожидающие события, сгруппированные по
пользователю и случаю. По умолчанию строки сортированы по пользователю и
убыванию полного времени ожидания. Проигнорированы неактивные события. У представлений Пользователь, связанный с соединением. Имя событий. Общее количество возникновений случая для пользователя. Общее время ожидания рассчитанных возникновений случая для пользователя.
Среднее время ожидания на рассчитанное возникновение
случая для пользователя. Максимальное время ожидания рассчитанных возникновений
случая для пользователя. Эти представления суммируют ожидающие события, сгруппированные случаем. По
умолчанию строки сортированы по убыванию полного времени ожидания.
Проигнорированы неактивные события. У представлений Имя событий. Общее количество возникновений случая. Общее время ожидания рассчитанных возникновений случая. Среднее время ожидания на рассчитанное возникновение случая. Максимальное время ожидания рассчитанных возникновений случая.
Следующие разделы описывают хранимые процедуры
Учитывая имя схемы, эта процедура создает схему синонима, содержащую
представления, которые обращаются ко всем таблицам и представлениям в
оригинальной схеме. Это может использоваться, например, чтобы создать более
короткое имя, которым можно сослаться на схему с длинным именем (такое, как
Создает сообщение о текущем состоянии сервера в диагностических целях. Эта процедура требует привилегию
Данные, собранные для
Информация из представления
Некоторые изпредставлений схемы sys
вычислены как (дополнительная) начальная буква и значения дельты: Начальное представление это контент представления в начале
выполнения Чем больше инструментов и потребителей включены, тем больше воздействия на
работу сервера MySQL. Будьте осторожны с настройкой Использование Если установка не Работа Если эта опция Если эта опция Если эта опция Максимальная длина запросов, возвращенных функцией
Создайте отчет о диагностике, который запускает итерацию каждые 30 секунд
и работает в течение самое большее 120 секунд, используя текущие
настройки Performance Schema:
Учитывая запрос SQL как строку, выполняет его как готовый запрос. Готовый
запрос освобожден после выполнения, таким образом, это не подвергается
повторному использованию. Таким образом, эта процедура полезна прежде всего
для выполнения динамических запросов на одноразовой основе. Эта процедура использует Если эта опция Отключает инструментовку Performance Schema для всех фоновых потоков.
Производит набор результатов, указывающий, сколько фоновых потоков было
отключено. Уже отключенные потоки не считаются. Нет. Отключает потребителей Performance Schema с именами, которые содержит
параметр. Производит набор результатов, указывающий, сколько потребителей
было отключено. Уже отключенные потребители не считаются. Значение Отключить всех потребителей запроса:
Отключает инструменты Performance Schema с именами, которые содержит
параметр. Производит набор результатов, указывающий, сколько инструментов
было отключено. Уже отключенные инструменты не считаются. Отключите определенный инструмент:
Учитывая идентификатор соединения, отключает инструментовку
Performance Schema для потока. Производит набор результатов, указывающий,
сколько потоков было отключено. Уже отключенные потоки не считаются. Отключите определенное соединение по его ID:
Включает инструментовку Performance Schema для всех фоновых потоков.
Производит набор результатов, указывающий, сколько фоновых потоков было
включено. Уже включенные потоки не считаются. Нет. Включает потребителей Performance Schema с именами, которые содержит
параметр. Производит набор результатов, указывающий, сколько потребителей
включились. Уже включенные потребители не считаются. Включите всех потребителей:
Включает инструменты Performance Schema с именами, которые содержит
параметр. Производит набор результатов, указывающий, сколько инструментов
было включено. Уже включенные инструменты не считаются. Включите определенный инструмент:
Учитывая идентификатор соединения, включает инструментовку Performance
Schema для потока. Производит набор результатов, указывающий, сколько потоков
было включено. Уже включенные потоки не считаются. Включите определенное ID соединение:
Перезагружает конфигурацию Performance Schema, сохраненную ранее в
пределах того же самого использования сеанса с помощью
Эта процедура требует привилегии
Нет. Сбрасывает конфигурацию Performance Schema
к ее настройкам по умолчанию. Сохраняет текущую конфигурацию Performance Schema. Это позволяет Вам
изменить конфигурацию временно для отладки или других целей, затем
восстановить это в предыдущее состояние, вызывая
Чтобы предотвратить другие одновременные требования сохранить
конфигурацию, Это предназначено для вызова
Эта процедура требует привилегии
Показывает все в настоящее время отключенные
конфигурации Performance Schema. Показать всех в настоящее время отключенных
потребителей Performance Schema. Нет. Показывает все в настоящее время отключенные инструменты
Performance Schema. Это может быть длинным списком. Нет. Показывает все в настоящее время включенные
конфигурации Performance Schema. Показать всех в настоящее время включенных
потребителей Performance Schema. Нет. Показывает все в настоящее время включенные инструменты
Performance Schema. Это может быть длинным списком. Нет. Выводит на экран текстовый график гистограммы средних значений времени
ожидания для всех нормализованных запросов, прослеженных в пределах таблицы
Performance Schema Эта процедура может использоваться, чтобы вывести на экран очень
высокоуровневое изображение распределения времени ожидания запросов,
работающих в пределах этого экземпляра MySQL. Нет. Гистограмма выведена в модулях запросов. Например,
Трассирует все инструменты Performance Schema
для определенного обзора запроса. Если Вы находите запрос интересным в пределах таблицы Performance Schema
Процедура также пытается выполнить
Эта процедура требует привилегии
Выводит все данные Performance Schema для инструментованного потока в
отформатированный файл графика Эта процедура требует привилегии
Усекает все сводные таблицы Performance Schema, сбрасывая всю соединенную
инструментовку как снимок. Производит набор результатов, указывающий, сколько
таблиц было усечено. Создает сообщение о запросах, работающих на сервере. Представления
вычислены, базируясь на полной деятельности и/или деятельности дельты. Эта процедура требует привилегии
Значение Работа Если эта опция Максимальное количество строк, чтобы возвратить для представлений, у
которых нет никакого встроенного предела. Значение по умолчанию 100. Пользовательский запрос или представление, которое будет использоваться.
Если значение опции содержит пробел, оно интерпретируется как запрос. Иначе
это должно быть название существующего представления, которое запрашивает
таблицу Performance Schema
Создать отчет с запросами в 95th percentile, начиная с последнего усечения
Составьте временную таблицу, чтобы
сохранить начальный снимок. Тестирует, существует ли данная таблица как регулярная,
Следующие разделы описывают хранимые функции
Учитывая имя пути к файлу, возвращает компонент пути, который представляет
имя схемы. Эта функция предполагает, что имя файла находится в пределах
каталога схемы. Поэтому это не будет работать с разделением или таблицей,
определенной с использованием собственной табличной
опции Эта функция полезна, извлекая информацию о вводе/выводе файла из
Performance Schema, которая включает имена пути к файлу. Это обеспечивает
удобный способ вывести на экран имена схемы, которые могут быть более легко
поняты чем полные пути и могут использоваться в соединениях для
имен схемы объекта. Учитывая имя пути к файлу, возвращает компонент пути, который
представляет имя таблицы. Эта функция полезна, извлекая информацию о вводе/выводе файла из
Performance Schema, которая включает имена пути к файлу. Это обеспечивает
удобный способ вывести на экран имена таблиц, которые могут быть более легко
поняты чем полные пути, и могут использоваться в соединениях для
имен таблиц объекта. Учитывая значение в байтах, конвертирует это к удобочитаемому формату и
возвращает строку, состоящую из значения и индикатора модулей. В зависимости
от размера значения, части модулей: Учитывая путь, возвращает измененный путь после замены подпутей, которые
соответствуют значениям следующих системных переменных в этом порядке:
Учитывая строку (обычно представляющей запрос SQL), уменьшает это до
длины, данной параметром конфигурации Эта функция полезна для форматирования возможно длинных запросов,
полученных из таблиц Performance Schema до известной
установленной максимальной длины. Максимальная длина запросов, возвращенных функцией
По умолчанию Учитывая время ожидания Performance Schema или время ожидания в
пикосекундах, конвертирует это к удобочитаемому формату и возвращает строку,
состоящую из значения и индикатора модулей. В зависимости от размера
значения, часть модулей Добавляет значение к списку разделенных запятой
значений и возвращает результат. Эта функция и Удаляет значение из списка разделенных запятой значений
и возвращает результат. Для получения дополнительной информации см. описание
Возвращает Возвращает Эта функция составляет потребительскую иерархию, таким образом,
потребителя не считают включенным, если все потребители, от которых он
зависит, также не включены. Для информации о потребительской иерархии см.
раздел 23.2.3.7
. Возвращает Возвращает Возвращает Учитывая ID потока Performance Schema, возвращает учетную запись
Возвращает идентификатор потока Performance Schema для данного ID
соединения или ID потока для текущего соединения, если
идентификатор соединения Возвращается отформатированный в JSON стек всех запросов, этапов и событий
в пределах Performance Schema для данного ID потока. Возвращает объект JSON, содержащий информацию о данном потоке. Информация
включает текущую транзакцию и запросы, которые это уже выполнило,
полученные из таблиц Performance Schema
Если вывод превышает длину усечения (65535 по умолчанию), ошибочный объект
JSON будет возвращен:
Максимальная продолжительность вывода. Значение по умолчанию 65535.
Учитывая строковый параметр, эта функция производит заключенный в кавычки
идентификатор, подходящий для включения в запросы SQL. Это полезно, когда
значение, которое будет использоваться в качестве идентификатора, является
зарезервированным словом или содержит обратный апостроф ( Учитывая имя параметра конфигурации, возвращает значение опции из таблицы
Если В соответствии с соглашением, подпрограммы, которые вызывают
Если Вы хотите проверить, был ли параметр конфигурации уже установлен, а
если нет, использовать возвращаемое значение
Получите значение конфигурации из таблицы
Эта функция возвращает главную версию сервера MySQL. Нет. Эта функция возвращает младшую версию сервера MySQL. Нет. Эта функция возвращает версию выпуска сервера MySQL. Нет.
Глава 24. MySQL sys Schema
sys
,
ряд объектов, который помогает DBA и разработчикам, интерпретирует данные,
собранные Performance Schema. sys
объекты схемы могут использоваться для типичной настройки и случаев
использования диагноза. Объекты в этой схеме включают:sys
schema
установлена по умолчанию во время инициализации каталога данных, если Вы
используете mysqld
с опцией
--initialize
или
--initialize-insecure
. Если это не желаемо, Вы можете удалить
sys
schema вручную после инициализации.
sys
schema
существует, но не имеет представления
version
,
при условии, что отсутствие этого представления указывает на создаваемую
пользователем sys
schema. Чтобы обновить в этом случае, удалите
или переименуйте существующую sys
schema.
sys
schema имеют
DEFINER
'mysql.sys'@'localhost'
.
Использование специализированного пользователя mysql.sys
избегает проблем, которые происходят, если DBA переименовывает или удаляет
учетную запись root
.24.1.
Предпосылки для использования sys Schema
sys
schema
предпосылки, описанные в этом разделе, должны быть удовлетворены.sys
schema требует MySQL 5.6 или выше.
sys
schema
обеспечивает альтернативное средство доступа к Performance Schema, то
Performance Schema должна быть включена для работы
sys
schema. См.
раздел 23.2.2
.sys
schema
у пользователя должны быть эти привилегии:EXECUTE
на
всех хранимых процедурах и функциях sys
.
INSERT
и
UPDATE
для таблицы
sys_config
, если изменения
должны быть произведены.sys
, как отмечено в их описаниях,
например, процедуры ps_setup_save()
.sys
schema:SELECT
на любых таблицах Performance Schema, к которым получают доступ объекты
sys
и UPDATE
для любых таблиц, которые будут обновлены, используя объекты
sys
schema.PROCESS
для таблицы
INFORMATION_SCHEMA
INNODB_BUFFER_PAGE
.sys
schema:wait
инструменты.stage
инструменты.statement
инструменты.
и
xxx
_current
для всех событий.
xxx
_history_longsys
schema
непосредственно, чтобы включить все
дополнительные инструменты и потребители:
CALL sys.ps_setup_enable_instrument('wait');
CALL sys.ps_setup_enable_instrument('stage');
CALL sys.ps_setup_enable_instrument('statement');
CALL sys.ps_setup_enable_consumer('current');
CALL sys.ps_setup_enable_consumer('history_long');
sys
schema Performance Schema
по умолчанию достаточна для сбора данных. Включение всех инструментов и
потребителец оказывает исполнительное влияние, таким образом, предпочтительно
включать только ту дополнительную конфигурацию, в которой Вы нуждаетесь.
Кроме того, помните, что, если Вы включаете дополнительную конфигурацию, Вы
можете легко восстановить конфигурацию по умолчанию:
CALL sys.ps_setup_reset_to_default(TRUE);
24.2. Применение sys Schema
sys
schema схемой
по умолчанию так, чтобы ссылки на ее объекты не были
квалифицированы с именем схемы:
mysql> USE sys;
Database changed
mysql> SELECT * FROM version;
+-------------+---------------------+
| sys_version | mysql_version |
+-------------+---------------------+
| 1.5.1 | 8.0.1-dmr-debug-log |
+-------------+---------------------+
Обзор version
показывает
версии sys
schema и сервера MySQL.
sys
schema
в то время как по умолчанию принята иная схема, надо квалифицировать
объектные ссылки с именем схемы:
mysql> SELECT * FROM sys.version;
+-------------+---------------------+
| sys_version | mysql_version |
+-------------+---------------------+
| 1.5.1 | 8.0.1-dmr-debug-log |
+-------------+---------------------+
Примеры в этой главе обычно принимают
sys
как схему по умолчанию.
sys
содержит много представлений, которые суммируют
таблицы Performance Schema различными способами. Большинство этих
представлений прибывает в пары, где у одного члена пары есть то же самое имя,
как у другого участника, плюс приставка x$
. Например, обхор
host_summary_by_file_io
суммирует ввод/вывод файла, сгруппированный по хостам, и выводит
на экран времена ожидания, преобразованные от пикосекунд в более
читаемые значения (с модулями):
mysql> SELECT * FROM host_summary_by_file_io;
+------------+-------+------------+
| host | ios | io_latency |
+------------+-------+------------+
| localhost | 67570 | 5.38 s |
| background | 3468 | 4.18 s |
+------------+-------+------------+
Представление
x$host_summary_by_file_io
суммирует те же самые данные, но выводит
на экран неотформатированные времена ожидания в пикосекундах:
mysql> SELECT * FROM x$host_summary_by_file_io;
+------------+-------+---------------+
| host | ios | io_latency |
+------------+-------+---------------+
| localhost | 67574 | 5380678125144 |
| background | 3474 | 4758696829416 |
+------------+-------+---------------+
Представление без x$
предназначен, чтобы обеспечить вывод,
который более удобен для пользователя. Представление с x$
выводит на экран те же самые значения в сырой форме и предназначено больше
для использования с другими инструментами, которые выполняют их собственную
обработку данных. Для дополнительной информации о различиях между
не-x$
и x$
представлениях см.
раздел 24.4.3.
sys
schema, используйте соответствующий
запрос SHOW
или
INFORMATION_SCHEMA
.
Например, чтобы исследовать определения представления
session
и функции
format_bytes()
,
используйте эти запросы:
mysql> SHOW CREATE VIEW session;
mysql> SHOW CREATE FUNCTION format_bytes;
Однако, те запросы выводят на экран определения в относительно
неотформатированной форме. Чтобы рассмотреть определения объекта с большим
количеством читаемого форматирования, получите доступ к индивидуальным
файлам .sql
, доступным на web-сайте для разработчиков
sys
schema
https://github.com/mysql/mysql-sys.
sys
schema
по умолчанию. Чтобы произвести файл дампа, назовите
sys
schema явно на командной строке, используя любую
из этих команд:
mysqldump --databases --routines sys > sys_dump.sql
mysqlpump sys > sys_dump.sql
Чтобы повторно установить схему из файла дампа, используйте эту команду:
mysql < sys_dump.sql
24.3.
Сообщение продвижения sys Schema
sys
schema
обеспечивают продвижение, сообщающее для продолжительных транзакций:
processlist
session
x$processlist
x$session
Предполагая, что необходимые инструменты и потребители включены, столбец
progress
этих представлений показывает процент работы,
завершенной для этапов по сообщениям поддержки продвижения.
events_stages_current
был включен, так же как инструменты, для
которых желаема информация о продвижении. Инструменты для этих этапов в
настоящее время поддерживают сообщение продвижения:
stage/sql/Copying to tmp table
stage/innodb/alter table (end)
stage/innodb/alter table (flush)
stage/innodb/alter table (insert)
stage/innodb/alter table (log apply index)
stage/innodb/alter table (log apply table)
stage/innodb/alter table (merge sort)
stage/innodb/alter table (read PK and internal sort)
stage/innodb/buffer pool load
Для этапов, которые не поддерживают оцененное и завершенное сообщение работы,
или если необходимые инструменты или потребители не включены, столбец
progress
всегда NULL
.
24.4. Объектная ссылка sys Schema
sys
schema включает таблицы, триггеры,
представления, хранимые процедуры и функции. Следующие разделы обеспечивают
детали для каждого из этих объектов.24.4.1. Индекс объектов sys Schema
sys
schema и обеспечивает
краткое описание каждого.Имя таблицы или триггера
Описание sys_config
Параметры конфигурации sys
schema
sys_config_insert_set_user
Триггер insert
sys_config
sys_config_update_set_user
Триггер update
sys_config
Имя представления
Описание
host_summary
,
x$host_summary
Деятельность запроса, файловый ввод/вывод и соединения,
сгруппированные по хосту.
host_summary_by_file_io
,
x$host_summary_by_file_io
Файловый ввод/вывод, сгруппированный по хосту.
host_summary_by_file_io_type
,
x$host_summary_by_file_io_type
Файловый ввод/вывод, сгруппированный по
хосту и типам событий.
host_summary_by_stages
,
x$host_summary_by_stages
Этапы запроса, сгруппированные по хосту.
host_summary_by_statement_latency
,
x$host_summary_by_statement_latency
Статистика запроса, сгруппированная по хосту.
host_summary_by_statement_type
,
x$host_summary_by_statement_type
Выполненные запросы, сгруппированные по хосту и запросу.
innodb_buffer_stats_by_schema
,
x$innodb_buffer_stats_by_schema
Буферная информация InnoDB
, сгруппированная схемой.
innodb_buffer_stats_by_table
,
x$innodb_buffer_stats_by_table
Буферная информация InnoDB
,
сгруппированная схемой и таблицей.
innodb_lock_waits
,
x$innodb_lock_waits
Информация о блокировке InnoDB
.
io_by_thread_by_latency
,
x$io_by_thread_by_latency
Потребители ввода/вывода, сгруппированные потоком.
io_global_by_file_by_bytes
,
x$io_global_by_file_by_bytes
Глобальные потребители ввода/вывода,
сгруппированные файлом и байтами.
io_global_by_file_by_latency
,
x$io_global_by_file_by_latency
Глобальные потребители ввода/вывода,
сгруппированные файлом и временем ожидания.
io_global_by_wait_by_bytes
,
x$io_global_by_wait_by_bytes
Глобальные потребители ввода/вывода, сгруппированные байтами.
io_global_by_wait_by_latency
,
x$io_global_by_wait_by_latency
Глобальные потребители ввода/вывода, сгруппированные
временем ожидания.
latest_file_io
,
x$latest_file_io
Новый ввод/вывод, сгруппированный файлом и потоком.
memory_by_host_by_current_bytes
,
x$memory_by_host_by_current_bytes
Использование памяти, сгруппированное хостом.
memory_by_thread_by_current_bytes
,
x$memory_by_thread_by_current_bytes
Использование памяти, сгруппированное потоком.
memory_by_user_by_current_bytes
,
x$memory_by_user_by_current_bytes
Использование памяти, сгруппированное пользователем.
memory_global_by_current_bytes
,
x$memory_global_by_current_bytes
Использование памяти, сгруппированное типом распределения.
memory_global_total
,
x$memory_global_total
Полное использование памяти. metrics
Метрики сервера. processlist
,
x$processlist
Информация о Processlist.
ps_check_lost_instrumentation
Переменные, которые потеряли инструменты.
schema_auto_increment_columns
Информация о столбце AUTO_INCREMENT
.
schema_index_statistics
,
x$schema_index_statistics
Статистика индекса.
schema_object_overview
Типы объектов в пределах каждой схемы.
schema_redundant_indexes
Индексы Duplicate или redundant.
schema_table_lock_waits
,
x$schema_table_lock_waits
Сеансы, ждущие блокировок метаданных.
schema_table_statistics
,
x$schema_table_statistics
Табличная статистика.
schema_table_statistics_with_buffer
,
x$schema_table_statistics_with_buffer
Табличная статистика, включая буферную
статистику бассейна InnoDB
.
schema_tables_with_full_table_scans
,
x$schema_tables_with_full_table_scans
Таблицы, получаемые доступом с полными просмотрами.
schema_unused_indexes
Индексы не в активном использовании. session
,
x$session
Информация о Processlist для пользовательских сеансов.
session_ssl_status
Информация о соединении SSL.
statement_analysis
,
x$statement_analysis
Статистика совокупности запроса.
statements_with_errors_or_warnings
,
x$statements_with_errors_or_warnings
Запросы, которые произвели ошибки или предупреждения.
statements_with_full_table_scans
,
x$statements_with_full_table_scans
Запросы, которые сделали полное сканирование таблицы.
statements_with_runtimes_in_95th_percentile
,
x$statements_with_runtimes_in_95th_percentile
Запросы с самым высоким средним временем выполнения.
statements_with_sorting
,
x$statements_with_sorting
Запросы, которые выполнили сортировки.
statements_with_temp_tables
,
x$statements_with_temp_tables
Запросы, которые использовали временные таблицы. user_summary
,
x$user_summary
Пользовательский запрос и деятельность соединения.
user_summary_by_file_io
,
x$user_summary_by_file_io
Файловый ввод/вывод, сгруппированный пользователем.
user_summary_by_file_io_type
,
x$user_summary_by_file_io_type
Файловый ввод/вывод,
сгруппированный пользователем и событием.
user_summary_by_stages
,
x$user_summary_by_stages
События этапа, сгруппированные пользователем.
user_summary_by_statement_latency
,
x$user_summary_by_statement_latency
Статистика запросов, сгруппированная пользователем.
user_summary_by_statement_type
,
x$user_summary_by_statement_type
Выполненные запросы, сгруппированные
пользователем и запросом. version
Текущие версии sys
schema и сервера MySQL.
wait_classes_global_by_avg_latency
,
x$wait_classes_global_by_avg_latency
Среднее время ожидания класса,
сгруппированное классом событий.
wait_classes_global_by_latency
,
x$wait_classes_global_by_latency
Общее время ожидания класса, сгруппированное классом событий.
waits_by_host_by_latency
,
x$waits_by_host_by_latency
Ждущие события, сгруппированные узлом и событием.
waits_by_user_by_latency
,
x$waits_by_user_by_latency
Ждущие события, сгруппированные пользователем и событием.
waits_global_by_latency
,
x$waits_global_by_latency
Ждущие события, сгруппированные и событием.
x$ps_digest_95th_percentile_by_avg_us
Вспомогательное представление для 95%-ных представлений.
x$ps_digest_avg_latency_distribution
Вспомогательное представление для 95%-ных представлений.
x$ps_schema_table_statistics_io
Вспомогательное представление для
представлений табличной статистики.
x$schema_flattened_keys
Вспомогательное представление для
schema_redundant_indexes
.Имя процедуры
Описание
create_synonym_db()
Создает синоним для схемы diagnostics()
Собирает системную диагностическую информацию
execute_prepared_stmt()
Выполнит подготовленный запрос
ps_setup_disable_background_threads()
Отключит фоновую инструментовку потока
ps_setup_disable_consumer()
Отключит потребителей
ps_setup_disable_instrument()
Отключит инструменты
ps_setup_disable_thread()
Отключит инструментовку для потока
ps_setup_enable_background_threads()
Включит фоновую инструментовку потока
ps_setup_enable_consumer()
Включит потребителей
ps_setup_enable_instrument()
Включит инструменты
ps_setup_enable_thread()
Включит инструментовку для потока
ps_setup_reload_saved()
Перезагрузит сохраненную конфигурацию Performance Schema
ps_setup_reset_to_default()
Сбросит сохраненную конфигурацию Performance Schema
ps_setup_save()
Сохранит конфигурацию Performance Schema
ps_setup_show_disabled()
Выведет на экран отключенную конфигурацию Performance Schema
ps_setup_show_disabled_consumers()
Выведет на экран отключенных потребителей Performance Schema
ps_setup_show_disabled_instruments()
Выведет на экран отключенные инструменты Performance Schema
ps_setup_show_enabled()
Выведет на экран включенную конфигурацию Performance Schema
ps_setup_show_enabled_consumers()
Выведет на экран включенных потребителей Performance Schema
ps_setup_show_enabled_instruments()
Выведет на экран включенные инструменты Performance Schema
ps_statement_avg_latency_histogram()
Выведет на экран гистограмму времени ожидания запросов
ps_trace_statement_digest()
Трассировка инструментов Performance Schema для обзора
ps_trace_thread()
Дамп данных потоков Performance Schema
ps_truncate_all_tables()
Усеченные сводные таблицы Performance Schema
statement_performance_analyzer()
Сообщение о запросах, работающих на сервере table_exists()
Существует ли таблица
Имя функции
Описание
extract_schema_from_file_name()
Извлекает имя схемы из имени пути к файлу
extract_table_from_file_name()
Извлекает имя таблицы из имени пути к файлу format_bytes()
Конвертирует байтовое значение, чтобы оценить с модулями
format_path()
Заменяет каталоги данных и временных файлов
в пути с символическими значениями
format_statement()
Усекает длинный запрос к фиксированной длине format_time()
Значение пикосекунд конвертируется, чтобы оценить с модулями
list_add()
Добавляет элемент в список list_drop()
Удалить элемент из списка
ps_is_account_enabled()
Проверить, включена ли инструментовка учетной записи
ps_is_consumer_enabled()
Проверить, включен ли потребитель
ps_is_instrument_default_enabled()
Проверить, включен ли инструмент
ps_is_instrument_default_timed()
Проверить, рассчитан ли инструмент
ps_is_thread_instrumented()
Проверить, инструментован ли поток
ps_thread_account()
Возвратит учетную запись для ID потока ps_thread_id()
Возвратит ID потока для ID соединения
ps_thread_stack()
Возвратит информацию о событии для ID потока
ps_thread_trx_info()
Возвратит информацию о транзакции для ID потока
quote_identifier()
Возвратит строку как заключенный в кавычки идентификатор
sys_get_config()
Возвратит параметр конфигурации
sys
schema
version_major()
Главный номер версии MySQL
version_minor()
Младший номер версии MySQL
version_patch()
Номер версии выпуска MySQL 24.4.2. Таблицы и триггеры sys Schema
sys
schema.24.4.2.1. Таблица sys_config
sys
schema, одна строка на опцию.
Изменения конфигурации, произведенные, обновляя эту таблицу, сохраняются
через сеансы клиента и перезапуски сервера.sys_config
есть эти столбцы:variable
value
set_time
set_by
NULL
, если строка не была изменена, начиная с установки
sys
schema.sys_config
, функции
sys
schema, которые
используют значение этой табличной проверки на определяемую пользователем
переменную с соответствующим именем, которое является определяемой
пользователем переменной, имеющей то же самое имя плюс @sys.
.
Например, переменная, соответствующая опции
diagnostics.include_raw
, @sys.diagnostics.include_raw
. Если определяемая пользователем переменная существует в текущем
сеансе и не-NULL
, функция использует свое значение в
предпочтении к значению в таблице
sys_config
.
Иначе функция читает и использует значение из таблицы. В последнем случае
функция также устанавливает соответствующую определяемую пользователем
переменную в табличное значение так, чтобы дальнейшие ссылки на параметр
конфигурации в пределах того же самого сеанса использовали переменную и не
должны были считать таблицу снова.statement_truncate_len
управляет максимальной длиной запросов, возвращенных функциец
format_statement()
.
Значение по умолчанию 64. Чтобы временно изменить значение на 32 для Вашего
текущего сеанса, установите переменную
@sys.statement_truncate_len
:
mysql> SET @stmt = 'SELECT variable, value, set_time, set_by FROM
sys_config';
mysql> SELECT format_statement(@stmt);
+----------------------------------------------------------+
| format_statement(@stmt) |
+----------------------------------------------------------+
| SELECT variable, value, set_time, set_by FROM sys_config |
+----------------------------------------------------------+
mysql> SET @sys.statement_truncate_len = 32;
mysql> SELECT format_statement(@stmt);
+-----------------------------------+
| format_statement(@stmt) |
+-----------------------------------+
| SELECT variabl ... ROM sys_config |
+-----------------------------------+
Последующие запросы
format_statement()
в пределах сеанса продолжают использовать определяемое пользователем
значение переменной (32), а не значение, сохраненное в таблице (64).
NULL
в пределах Вашего сеанса:
mysql> SET @sys.statement_truncate_len = NULL;
mysql> SELECT format_statement(@stmt);
+----------------------------------------------------------+
| format_statement(@stmt) |
+----------------------------------------------------------+
| SELECT variable, value, set_time, set_by FROM sys_config |
+----------------------------------------------------------+
Альтернативно, закончите свой текущий сеанс (чтобы заставить определяемую
пользователем переменную больше не существовать) и начните новый сеанс.
sys_config
и определяемые пользователем переменные могут эксплуатироваться, чтобы
произвести временные изменения конфигурации, которые заканчиваются, когда Ваш
сеанс заканчивается. Однако, если Вы установите определяемую пользователем
переменную и затем впоследствии измените соответствующее табличное значение в
пределах того же самого сеанса, то измененное табличное значение не будет
использоваться в том сеансе, пока определяемая пользователем переменная
существует со значением не NULL
. Измененное табличное значение
будет использоваться в других сеансах,
которым не назначали определяемую пользователем переменную.sys_config
и соответствующие определяемые пользователем переменные:diagnostics.allow_i_s_tables
,
@sys.diagnostics.allow_i_s_tables
ON
, процедуре
diagnostics()
разрешают выполнить сканирование таблицы
INFORMATION_SCHEMA.TABLES
.
Это может быть долго, если есть много таблиц. Значение по умолчанию
OFF
.diagnostics.include_raw
,
@sys.diagnostics.include_raw
ON
, процедура
diagnostics()
включает сырой вывод от запросов обзора
metrics
.
Значение по умолчанию OFF
.ps_thread_trx_info.max_length
,
@sys.ps_thread_trx_info.max_length
ps_thread_trx_info()
. Значение по умолчанию 65535.statement_performance_analyzer.limit
,
@sys.statement_performance_analyzer.limit
statements_with_runtimes_in_95th_percentile
есть встроенный предел в том смысле, что оно возвращает только запросы
со средним временем выполнения в 95%. Значение по умолчанию 100.statement_performance_analyzer.view
,
@sys.statement_performance_analyzer.view
statement_performance_analyzer()
(которая самостоятельно вызвана
diagnostics()
).
Если значение опции содержит пробел, оно интерпретируется как запрос. Иначе,
это должно быть название существующего представления, которое запрашивает
таблицу Performance Schema
events_statements_summary_by_digest
.
Не может быть никакого предложения LIMIT
в запросе или определение представления, если параметр конфигурации
statement_performance_analyzer.limit
больше 0.
Значение по умолчанию NULL
(никакое пользовательское представление не определено).statement_truncate_len
,
@sys.statement_truncate_len
format_statement()
.
Более длинные запросы усечены к этой длине. Значение по умолчанию 64.
sys_config
. Например,
процедуры diagnostics()
и
execute_prepared_stmt()
используют опцию debug
, если она существует, но эта
опция, не является частью таблицы
sys_config
по умолчанию, потому что вывод отладки обычно
включается только временно, устанавливая соответствующую опцию
@sys.debug
. Чтобы включить вывод отладки, не имея необходимости
устанавливать ту переменную в отдельных сеансах, добавьте опцию к таблице:
mysql> INSERT INTO sys_config (variable, value) VALUES('debug', 'ON');
Чтобы изменить настройки отладки в таблице, сделайте две вещи. Во-первых,
измените значение в таблице непосредственно:
mysql> UPDATE sys_config SET value = 'OFF' WHERE variable = 'debug';
Во-вторых, чтобы также гарантировать, что вызовы процедуры в пределах
текущего сеанса используют измененное значение из таблицы, установите
соответствующую определяемую пользователем переменную в NULL
:
mysql> SET @sys.debug = NULL;
24.4.2.2. Триггер
sys_config_insert_set_user
sys_config
запросом
INSERT
триггер
sys_config_insert_set_user
устанавливает столбец
set_by
к текущему пользователю.24.4.2.3.
Триггер sys_config_update_set_user
sys_config_update_set_user
для таблицы
sys_config
подобен триггеру
sys_config_insert_set_user
, но для запросов
UPDATE
.24.4.3. Представления sys Schema
sys
schema.sys
schema содержит много представлений, которые суммируют
таблицы Performance Schema различными способами. Большинство этих
представлений прибывает в пары, такие, что у одного члена пары есть то же
самое имя, как у другого участника плюс x$
. Например,
host_summary_by_file_io
суммирует ввод/вывод файла, сгруппированный хостом, и выводит на
экран времена ожидания, преобразованные из пикосекунд в более
читаемые значения (с модулями):
mysql> SELECT * FROM host_summary_by_file_io;
+------------+-------+------------+
| host | ios | io_latency |
+------------+-------+------------+
| localhost | 67570 | 5.38 s |
| background | 3468 | 4.18 s |
+------------+-------+------------+
x$host_summary_by_file_io
суммирует те же самые данные, но выводит на экран
неотформатированные времена ожидания в пикосекундах:
mysql> SELECT * FROM x$host_summary_by_file_io;
+------------+-------+---------------+
| host | ios | io_latency |
+------------+-------+---------------+
| localhost | 67574 | 5380678125144 |
| background | 3474 | 4758696829416 |
+------------+-------+---------------+
Представление без x$
предназначено, чтобы обеспечить вывод,
который более удобен для пользователя и легче читать. Представление с
x$
выводит на экран те же самые значения в сырой форме и
предназначено больше для использования с другими инструментами, которые
выполняют их собственную обработку данных.
x$
отличается от x$
этим:format_bytes()
.format_time()
.format_statement()
.
format_path()
.24.4.3.1. Представления
host_summary и x$host_summary
host_summary
и x$host_summary
есть эти столбцы:host
HOST
в основной таблице Performance Schema NULL
отведены для фоновых потоков и сообщаются с именем хоста
background
.statements
statement_latency
statement_avg_latency
table_scans
file_ios
file_io_latency
current_connections
total_connections
unique_users
current_memory
total_memory_allocated
24.4.3.2. Представления
host_summary_by_file_io и x$host_summary_by_file_io
host_summary_by_file_io
и
x$host_summary_by_file_io
есть эти столбцы:host
HOST
в основной таблице Performance Schema NULL
отведены для фоновых потоков и сообщаются с именем хоста
background
.ios
io_latency
24.4.3.3. Представления
host_summary_by_file_io_type and x$host_summary_by_file_io_type
host_summary_by_file_io_type
и
x$host_summary_by_file_io_type
есть эти столбцы:host
HOST
в основной таблице Performance Schema NULL
отведены для фоновых потоков и сообщаются с именем хоста
background
.event_name
total
total_latency
max_latency
24.4.3.4. Представления
host_summary_by_stages и x$host_summary_by_stages
host_summary_by_stages
и
x$host_summary_by_stages
есть эти столбцы:host
HOST
в основной таблице Performance Schema NULL
отведены для фоновых потоков и сообщаются с именем хоста
background
.event_name
total
total_latency
avg_latency
24.4.3.5.
Представления host_summary_by_statement_latency и
x$host_summary_by_statement_latency
host_summary_by_statement_latency
и
x$host_summary_by_statement_latency
есть эти столбцы:host
HOST
в основной таблице Performance Schema NULL
отведены для фоновых потоков и сообщаются с именем хоста
background
.total
total_latency
max_latency
lock_latency
rows_sent
rows_examined
rows_affected
full_scans
24.4.3.6.
Представления host_summary_by_statement_type и
x$host_summary_by_statement_type
host_summary_by_statement_type
и
x$host_summary_by_statement_type
есть эти столбцы:host
HOST
в основной таблице Performance Schema NULL
отведены для фоновых потоков и сообщаются с именем хоста
background
.statement
total
total_latency
max_latency
lock_latency
rows_sent
rows_examined
rows_affected
full_scans
24.4.3.7.
Представления innodb_buffer_stats_by_schema и
x$innodb_buffer_stats_by_schema
INFORMATION_SCHEMA
INNODB_BUFFER_PAGE
, группируя схемой. По умолчанию строки
сортированы по убыванию размера буфера.
innodb_buffer_stats_by_schema
и
x$innodb_buffer_stats_by_schema
есть эти столбцы:object_schema
InnoDB System
,
если таблица принадлежит механизму хранения InnoDB
.allocated
data
pages
pages_hashed
pages_old
rows_cached
24.4.3.8. Представления
innodb_buffer_stats_by_table и x$innodb_buffer_stats_by_table
INFORMATION_SCHEMA
INNODB_BUFFER_PAGE
, группируя схемой и таблицей. По умолчанию строки отсортированы по
убыванию размера буфера.
innodb_buffer_stats_by_table
и
x$innodb_buffer_stats_by_table
есть эти столбцы:object_schema
InnoDB System
,
если таблица принадлежит механизму хранения InnoDB
.object_name
allocated
data
pages
pages_hashed
pages_old
rows_cached
24.4.3.9. Представления
innodb_lock_waits и x$innodb_lock_waits
InnoDB
, которых ждут
транзакции. По умолчанию строки сортированы по убыванию возраста блокировки.
innodb_lock_waits
и
x$innodb_lock_waits
есть эти столбцы:wait_started
wait_age
TIME
).wait_age_secs
locked_table
locked_table_schema
и locked_table_name
, которые
содержат отдельные столбцы с именами схемы и таблицы.locked_table_schema
locked_table_name
locked_table_partition
NULL
.
Этот столбец был добавлен в MySQL 8.0.1.locked_table_subpartition
NULL
. Этот столбец был добавлен в MySQL 8.0.1.locked_index
locked_type
waiting_trx_id
waiting_trx_started
waiting_trx_age
TIME
).waiting_trx_rows_locked
waiting_trx_rows_modified
waiting_pid
waiting_query
waiting_lock_id
waiting_lock_mode
blocking_trx_id
blocking_pid
blocking_query
blocking_lock_id
blocking_lock_mode
blocking_trx_started
blocking_trx_age
TIME
).blocking_trx_rows_locked
blocking_trx_rows_modified
sql_kill_blocking_query
KILL
, чтобы
уничтожить блокирующий запрос.sql_kill_blocking_connection
KILL
, чтобы уничтожить
сеанс, выполняющий блокирующий запрос.24.4.3.10. Представления
io_by_thread_by_latency и x$io_by_thread_by_latency Views
io_by_thread_by_latency
и
x$io_by_thread_by_latency
есть эти столбцы:user
total
total_latency
min_latency
avg_latency
max_latency
thread_id
processlist_id
NULL
.24.4.3.11. Представления
io_global_by_file_by_bytes и x$io_global_by_file_by_bytes
io_global_by_file_by_bytes
и
x$io_global_by_file_by_bytes
есть эти столбцы:file
count_read
total_read
avg_read
count_write
total_written
avg_write
total
write_pct
24.4.3.12. Представления
io_global_by_file_by_latency и x$io_global_by_file_by_latency
io_global_by_file_by_latency
и
x$io_global_by_file_by_latency
есть эти столбцы:file
total
total_latency
count_read
read_latency
count_write
write_latency
count_misc
misc_latency
24.4.3.13. Представления
io_global_by_wait_by_bytes и x$io_global_by_wait_by_bytes
io_global_by_wait_by_bytes
и
x$io_global_by_wait_by_bytes
есть эти столбцы:event_name
wait/io/file/
.total
total_latency
min_latency
avg_latency
max_latency
count_read
total_read
avg_read
count_write
total_written
avg_written
total_requested
24.4.3.14. Представления
io_global_by_wait_by_latency и x$io_global_by_wait_by_latency
io_global_by_wait_by_latency
и
x$io_global_by_wait_by_latency
есть эти столбцы:event_name
wait/io/file/
.total
total_latency
avg_latency
max_latency
read_latency
write_latency
misc_latency
count_read
total_read
avg_read
count_write
total_written
avg_written
24.4.3.15. Представления
latest_file_io и x$latest_file_io
latest_file_io
и x$latest_file_io
есть эти столбцы:thread
file
latency
operation
requested
24.4.3.16.
Представления memory_by_host_by_current_bytes и
x$memory_by_host_by_current_bytes
memory_by_host_by_current_bytes
и
x$memory_by_host_by_current_bytes
есть эти столбцы:host
HOST
в основной таблице Performance Schema NULL
отведены для фоновых потоков и сообщаются с именем хоста
background
.current_count_used
current_allocated
current_avg_alloc
current_max_alloc
total_allocated
24.4.3.17.
Представления memory_by_thread_by_current_bytes и
x$memory_by_thread_by_current_bytes
memory_by_thread_by_current_bytes
и
x$memory_by_thread_by_current_bytes
есть эти столбцы:thread_id
user
current_count_used
current_allocated
current_avg_alloc
current_max_alloc
total_allocated
24.4.3.18.
Представления memory_by_user_by_current_bytes и
x$memory_by_user_by_current_bytes
memory_by_user_by_current_bytes
и
x$memory_by_user_by_current_bytes
есть эти столбцы:user
USER
в основной таблице Performance Schema NULL
,
для фоновых потоков и сообщаются с именем хоста background
.current_count_used
current_allocated
current_avg_alloc
current_max_alloc
total_allocated
24.4.3.19. Представления
memory_global_by_current_bytes и x$memory_global_by_current_bytes
memory_global_by_current_bytes
и
x$memory_global_by_current_bytes
есть эти столбцы:event_name
current_count
current_alloc
current_avg_alloc
high_count
high_alloc
high_avg_alloc
24.4.3.20. Представления
memory_global_total и x$memory_global_total
memory_global_total
и
x$memory_global_total
есть эти столбцы:total_allocated
24.4.3.21. Представление metrics
metrics
включает эту информацию:
global_status
.InnoDB
из таблицы INFORMATION_SCHEMA
INNODB_METRICS
.
global_status
и
INNODB_METRICS
,
которое устраняет представление
metrics
.metrics
имеет эти столбцы:Variable_name
VARIABLE_NAME
таблицы
global_status
.InnoDB
: столбец NAME
таблицы
INNODB_METRICS
.
Variable_value
VARIABLE_NAME
таблицы
global_status
.InnoDB
: столбец NAME
таблицы
INNODB_METRICS
.
memory_summary_global_by_event_name
.NOW(3)
или
UNIX_TIMESTAMP(NOW(3))
.Type
Global Status
.
InnoDB
метрики: InnoDB Metrics - %
, где
%
заменен значением столбца SUBSYSTEM
таблицы
INNODB_METRICS
.
Performance Schema
.System Time
.Enabled
YES
.InnoDB
-метрики: YES
, если столбец
STATUS
таблицы
INNODB_METRICS
enabled
, NO
иначе.NO
,
YES
или PARTIAL
(сейчас PARTIAL
происходит только для метрик памяти и указывает,
что не все инструменты memory/%
включены. Инструменты памяти
Performance Schema всегда включаются).YES
.24.4.3.22. Представления
processlist и x$processlist
SHOW PROCESSLIST
и таблица INFORMATION_SCHEMA
PROCESSLIST
, а
также не блокируют ничего. По умолчанию строки сортированы по убыванию
времени процесса и убыванию времени ожидания.threads
в раздел 23.9.16.3.processlist
и
x$processlist
есть эти столбцы:thd_id
conn_id
user
db
NULL
,
если нет ни одной.command
Sleep
, если сеанс неактивен.state
time
current_statement
NULL
, если это
не выполняет запросы.statement_latency
progress
lock_latency
rows_examined
rows_sent
rows_affected
tmp_tables
tmp_disk_tables
full_scan
last_statement
last_statement_latency
current_memory
last_wait
last_wait_latency
source
trx_latency
trx_state
trx_autocommit
pid
program_name
24.4.3.23. Представление
ps_check_lost_instrumentation
ps_check_lost_instrumentation
есть эти столбцы:variable_name
variable_value
24.4.3.24. Представление
schema_auto_increment_columns
AUTO_INCREMENT
и предоставляют информацию о тех столбцах такую,
как текущие и максимальные значения столбцов и отношение использования
(отношение использованных к возможным значениям). По умолчанию строки
отсортированы по убыванию отношения использования и
максимальному значению столбца.mysql
, sys
,
INFORMATION_SCHEMA
, performance_schema
.schema_auto_increment_columns
есть эти столбцы:table_schema
table_name
AUTO_INCREMENT
.column_name
AUTO_INCREMENT
.data_type
column_type
bigint(20) unsigned
тип данных bigint
.is_signed
is_unsigned
max_value
auto_increment
AUTO_INCREMENT
для столбца.auto_increment_ratio
24.4.3.25. Представления
schema_index_statistics и x$schema_index_statistics
schema_index_statistics
и
x$schema_index_statistics
есть эти столбцы:table_schema
table_name
index_name
rows_selected
select_latency
rows_inserted
insert_latency
rows_updated
update_latency
rows_deleted
delete_latency
24.4.3.26. Представление
schema_object_overview
schema_object_overview
есть эти столбцы:db
object_type
BASE TABLE
,
INDEX (
,
index_type
)EVENT
, FUNCTION
,
PROCEDURE
, TRIGGER
, VIEW
.count
24.4.3.27. Представления
schema_redundant_indexes и x$schema_flattened_keys
schema_redundant_indexes
отображает индексы, которые дублируют
другие индексы или сокращены ими. Это вспомогательное представление для
schema_redundant_indexes
.
schema_redundant_indexes
есть эти столбцы:table_schema
table_name
redundant_index_name
redundant_index_columns
redundant_index_non_unique
dominant_index_name
dominant_index_columns
dominant_index_non_unique
subpart_exists
sql_drop_index
x$schema_flattened_keys
есть эти столбцы:table_schema
table_name
index_name
non_unique
subpart_exists
index_columns
24.4.3.28. Представления
schema_table_lock_waits и x$schema_table_lock_waits
metadata_locks
в разделе
23.9.12.3.
schema_table_lock_waits
и
x$schema_table_lock_waits
есть эти столбцы:object_schema
object_name
waiting_thread_id
waiting_pid
waiting_account
waiting_lock_type
waiting_lock_duration
waiting_query
waiting_query_secs
waiting_query_rows_affected
waiting_query_rows_examined
blocking_thread_id
blocking_pid
blocking_account
blocking_lock_type
blocking_lock_duration
sql_kill_blocking_query
KILL
, чтобы
уничтожить запрос блокировки.sql_kill_blocking_connection
KILL
, чтобы
уничтожить сеанс, выполняющий запрос блокировки.24.4.3.29. Представления
schema_table_statistics и x$schema_table_statistics
x$ps_schema_table_statistics_io
.
schema_table_statistics
и
x$schema_table_statistics
есть эти столбцы:table_schema
table_name
total_latency
rows_fetched
fetch_latency
rows_inserted
insert_latency
rows_updated
update_latency
rows_deleted
delete_latency
io_read_requests
io_read
io_read_latency
io_write_requests
io_write
io_write_latency
io_misc_requests
io_misc_latency
24.4.3.30.
Представления schema_table_statistics_with_buffer и
x$schema_table_statistics_with_buffer
InnoDB
. По умолчанию строки отсортированы по
убыванию общего времени ожидания. Применяется вспомогательное представление
x$ps_schema_table_statistics_io
.
schema_table_statistics_with_buffer
и
x$schema_table_statistics_with_buffer
есть эти столбцы:table_schema
table_name
rows_fetched
fetch_latency
rows_inserted
insert_latency
rows_updated
update_latency
rows_deleted
delete_latency
io_read_requests
io_read
io_read_latency
io_write_requests
io_write
io_write_latency
io_misc_requests
io_misc_latency
innodb_buffer_allocated
InnoDB
таблицы.
innodb_buffer_data
InnoDB
таблицы.
innodb_buffer_free
InnoDB
таблицы.
(innodb_buffer_allocated
-innodb_buffer_data
).innodb_buffer_pages
InnoDB
, выделенных для таблицы.innodb_buffer_pages_hashed
InnoDB
, выделенных для таблицы.innodb_buffer_pages_old
InnoDB
,
выделенных для таблицы.innodb_buffer_rows_cached
InnoDB
для таблицы.
24.4.3.31.
Представления schema_tables_with_full_table_scans и
x$schema_tables_with_full_table_scans
schema_tables_with_full_table_scans
и
x$schema_tables_with_full_table_scans
есть эти столбцы:object_schema
object_name
rows_full_scanned
latency
24.4.3.32. Представление
schema_unused_indexes
schema_unused_indexes
есть эти столбцы:object_schema
object_name
index_name
24.4.3.33. Представления session и x$session
processlist
и
x$processlist
,
но они отфильтровывают фоновые процессы, чтобы вывести на экран только
пользовательские сеансы. Для описаний столбцов см.
раздел 24.4.3.22.24.4.3.34.
Представление session_ssl_status
session_ssl_status
есть эти столбцы:thread_id
ssl_version
ssl_cipher
ssl_sessions_reused
24.4.3.35. Представления
statement_analysis и x$statement_analysis
statement_analysis
и
x$statement_analysis
есть эти столбцы:query
db
NULL
,
если нет ни одной.full_scan
exec_count
err_count
warn_count
total_latency
max_latency
avg_latency
lock_latency
rows_sent
rows_sent_avg
rows_examined
rows_examined_avg
rows_affected
rows_affected_avg
tmp_tables
tmp_disk_tables
rows_sorted
sort_merge_passes
digest
first_seen
last_seen
24.4.3.36.
Представления statements_with_errors_or_warnings и
x$statements_with_errors_or_warnings
statements_with_errors_or_warnings
и
x$statements_with_errors_or_warnings
есть эти столбцы:query
db
NULL
, если нет.exec_count
errors
error_pct
warnings
warning_pct
first_seen
last_seen
digest
24.4.3.37.
Представления statements_with_full_table_scans и
x$statements_with_full_table_scans
statements_with_full_table_scans
и
x$statements_with_full_table_scans
есть эти столбцы:query
db
NULL
, если нет.exec_count
total_latency
no_index_used_count
no_good_index_used_count
no_index_used_pct
rows_sent
rows_examined
rows_sent_avg
rows_examined_avg
first_seen
last_seen
digest
24.4.3.38.
Представления statements_with_runtimes_in_95th_percentile и
x$statements_with_runtimes_in_95th_percentile
x$ps_digest_avg_latency_distribution
и
x$ps_digest_95th_percentile_by_avg_us
.
statements_with_runtimes_in_95th_percentile
и
x$statements_with_runtimes_in_95th_percentile
есть эти столбцы:query
db
NULL
, если нет.full_scan
exec_count
err_count
warn_count
total_latency
max_latency
avg_latency
rows_sent
rows_sent_avg
rows_examined
rows_examined_avg
first_seen
last_seen
digest
24.4.3.39. Представления
statements_with_sorting и x$statements_with_sorting
statements_with_sorting
и
x$statements_with_sorting
есть эти столбцы:query
db
NULL
, если нет.exec_count
total_latency
sort_merge_passes
avg_sort_merges
sorts_using_scans
sort_using_range
rows_sorted
avg_rows_sorted
first_seen
last_seen
digest
24.4.3.40. Представления
statements_with_temp_tables и x$statements_with_temp_tables
statements_with_temp_tables
и
x$statements_with_temp_tables
есть эти столбцы:query
db
NULL
, если нет.exec_count
total_latency
Общее время ожидания рассчитанных возникновений запроса.memory_tmp_tables
disk_tmp_tables
avg_tmp_tables_per_query
tmp_tables_to_disk_pct
first_seen
last_seen
digest
24.4.3.41. Представления
user_summary и x$user_summary
user_summary
и x$user_summary
есть эти столбцы:user
USER
в
основной таблице Performance Schema NULL
, отведены для фоновых
потоков и сообщаются с именем хоста background
.statements
statement_latency
statement_avg_latency
table_scans
file_ios
file_io_latency
current_connections
total_connections
unique_hosts
current_memory
total_memory_allocated
24.4.3.42. Представления
user_summary_by_file_io и x$user_summary_by_file_io
user_summary_by_file_io
и
x$user_summary_by_file_io
есть эти столбцы:user
USER
в
основной таблице Performance Schema NULL
, отведены для фоновых
потоков и сообщаются с именем хоста background
.ios
io_latency
24.4.3.43. Представления
user_summary_by_file_io_type и x$user_summary_by_file_io_type
user_summary_by_file_io_type
и
x$user_summary_by_file_io_type
есть эти столбцы:user
USER
в
основной таблице Performance Schema NULL
, отведены для фоновых
потоков и сообщаются с именем хоста background
.event_name
total
latency
max_latency
24.4.3.44. Представления
user_summary_by_stages и x$user_summary_by_stages
user_summary_by_stages
и
x$user_summary_by_stages
есть эти столбцы:user
USER
в
основной таблице Performance Schema NULL
, отведены для фоновых
потоков и сообщаются с именем хоста background
.event_name
total
total_latency
avg_latency
24.4.3.45.
Представления user_summary_by_statement_latency и
x$user_summary_by_statement_latency
user_summary_by_statement_latency
и
x$user_summary_by_statement_latency
есть эти столбцы:user
USER
в
основной таблице Performance Schema NULL
, отведены для фоновых
потоков и сообщаются с именем хоста background
.total
total_latency
max_latency
lock_latency
rows_sent
rows_examined
rows_affected
full_scans
24.4.3.46. Представления
user_summary_by_statement_type и x$user_summary_by_statement_type
user_summary_by_statement_type
и
x$user_summary_by_statement_type
есть эти столбцы:user
USER
в
основной таблице Performance Schema NULL
, отведены для фоновых
потоков и сообщаются с именем хоста background
.statement
total
total_latency
max_latency
lock_latency
rows_sent
rows_examined
rows_affected
full_scans
24.4.3.47. Представление version
sys
schema и MySQL server.version
есть эти столбцы:sys_version
sys
schema.mysql_version
24.4.3.48.
Представления wait_classes_global_by_avg_latency и
x$wait_classes_global_by_avg_latency
wait/io/file/sql/slow_log
wait/io/file
.wait_classes_global_by_avg_latency
и
x$wait_classes_global_by_avg_latency
есть эти столбцы:event_class
total
total_latency
min_latency
avg_latency
max_latency
24.4.3.49. Представления
wait_classes_global_by_latency и x$wait_classes_global_by_latency
wait/io/file/sql/slow_log
wait/io/file
.wait_classes_global_by_latency
и
x$wait_classes_global_by_latency
есть эти столбцы:event_class
total
total_latency
min_latency
avg_latency
max_latency
24.4.3.50. Представления
waits_by_host_by_latency и x$waits_by_host_by_latency
waits_by_host_by_latency
и
x$waits_by_host_by_latency
есть эти столбцы:host
event
total
total_latency
avg_latency
max_latency
24.4.3.51. Представления
waits_by_user_by_latency и x$waits_by_user_by_latency
waits_by_user_by_latency
и
x$waits_by_user_by_latency
есть эти столбцы:user
event
total
total_latency
avg_latency
max_latency
24.4.3.52. Представления
waits_global_by_latency и x$waits_global_by_latency
waits_global_by_latency
и
x$waits_global_by_latency
есть эти столбцы:events
total
total_latency
avg_latency
max_latency
24.4.4. Хранимые процедуры sys Schema
sys
schema.24.4.4.1. Процедура
create_synonym_db()
info
вместо INFORMATION_SCHEMA
).Параметры
in_db_name VARCHAR(64)
:
Название схемы, для которой можно создать синоним.in_synonym VARCHAR(64)
:
Имя для схемы синонима. Эта схема не должна существовать.Пример
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| world |
+--------------------+
mysql> CALL create_synonym_db('INFORMATION_SCHEMA', 'info');
+---------------------------------------+
| summary |
+---------------------------------------+
| Created 63 views in the info database |
+---------------------------------------+
mysql> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| info |
| mysql |
| performance_schema |
| sys |
| world |
+--------------------+
mysql> SHOW FULL TABLES FROM info;
+---------------------------------------+------------+
| Tables_in_info | Table_type |
+---------------------------------------+------------+
| character_sets | VIEW |
| collation_character_set_applicability | VIEW |
| collations | VIEW |
| column_privileges | VIEW |
| columns | VIEW |
...
24.4.4.2. Процедура diagnostics()
SUPER
, потому что
управляет сеансовой переменной
sql_log_bin
, чтобы
отключить двоичное журналирование во время выполнения.diagnostics()
,
включают эту информацию:metrics
(см. раздел 24.4.3.21).sys
.ndbinfo
, если сервер MySQL
часть MySQL Cluster.diagnostics()
.
Этот вывод то же самое, как значения запуска, используемые для представления
дельты. Начальное представление включено, если опция
diagnostics.include_raw
ON
.diagnostics()
.
Этот вывод то же самое, как последние значения, используемые для
представления дельты. Полное представление всегда включается.metrics
,
дельта вычислена только между первыми и последними выводами.Параметры
in_max_runtime INT UNSIGNED
: Максимальное время сбора
данных в секундах. Использование NULL
собирает данные для
значения по умолчанию в 60 секунд. Иначе используйте значение больше 0.in_interval INT UNSIGNED
: Время сна между сборами данных в
секундах. Использование NULL
предписывает спать по умолчанию 30
секунд. Иначе используйте значение больше 0.in_auto_config ENUM('current', 'medium', 'full')
:
Конфигурация Performance Schema. Разрешенные значения:
current
: Используйте текущий
инструмент и потребительские настройки.medium
: Включить некоторые инструменты и потребители.full
: Включить все инструменты и потребителей.medium
и
особенно с full
, которая оказывает
большое исполнительное влияние.medium
или full
требует привилегии
SUPER
.current
, текущие настройки
восстановлены в конце процедуры.Опции
diagnostics()
может быть изменена, используя следующие параметры конфигурации или их
соответствующие определяемые пользователем переменные (см.
раздел 24.4.2.1):debug
, @sys.debug
.ON
, производится вывод отладки.
Значение по умолчанию OFF
.diagnostics.allow_i_s_tables
,
@sys.diagnostics.allow_i_s_tables
.
ON
, процедуре
diagnostics()
разрешают выполнить сканирование таблицы
INFORMATION_SCHEMA.TABLES
.
Это может быть долго, если есть много таблиц.
Значение по умолчанию OFF
.diagnostics.include_raw
,
@sys.diagnostics.include_raw
.
ON
, вывод процедуры
diagnostics()
включает сырой вывод из запросов к представлению
metrics
.
Значение по умолчанию OFF
.statement_truncate_len
,
@sys.statement_truncate_len
.
format_statement()
.
Более длинные запросы являются усеченными к этой длине.
Значение по умолчанию 64.Пример
mysql> CALL diagnostics(120, 30, 'current');
Чтобы получить вывод из процедуры diagnostics()
в файл,
используйте команды клиента mysql
tee
и filename
notee
(см. раздел 5.5.1.2):
mysql> tee diag.out;
mysql> CALL diagnostics(120, 30, 'current');
mysql> notee;
24.4.4.3.
Процедура execute_prepared_stmt()
sys_execute_prepared_stmt
как имя готового запроса. Если это имя запроса существует, когда процедуру
вызывают, его предыдущий контент разрушен.Параметры
in_query LONGTEXT CHARACTER SET utf8
:
Строка запроса, чтобы выполнить.Опции
execute_prepared_stmt()
может быть изменена, используя следующие параметры конфигурации
или их соответствующие определяемые пользователем переменные (см.
раздел 24.4.2.1):debug
, @sys.debug
.ON
, производится вывод отладки.
Значение по умолчанию OFF
.Пример
mysql> CALL execute_prepared_stmt('SELECT COUNT(*) FROM mysql.user');
+----------+
| COUNT(*) |
+----------+
| 15 |
+----------+
24.4.4.4.
Процедура ps_setup_disable_background_threads()
Параметры
Пример
mysql> CALL ps_setup_disable_background_threads();
+--------------------------------+
| summary |
+--------------------------------+
| Disabled 24 background threads |
+--------------------------------+
24.4.4.5.
Процедура ps_setup_disable_consumer()
Параметры
consumer VARCHAR(128)
: Значение перечисляет
потребительские имена, которые идентифицированы при использовании
%consumer%
как операнда для
LIKE
.''
соответствует всем потребителям.Пример
mysql> CALL ps_setup_disable_consumer('statement');
+----------------------+
| summary |
+----------------------+
| Disabled 4 consumers |
+----------------------+
24.4.4.6.
Процедура ps_setup_disable_instrument()
Параметры
in_pattern VARCHAR(128)
: Значение перечисляет
имена, которые идентифицированы при использовании
%in_pattern%
как операнда для
LIKE
.
Значение ''
соответствует всем инструментам.Пример
mysql> CALL ps_setup_disable_instrument('wait/lock/metadata/sql/mdl');
+-----------------------+
| summary |
+-----------------------+
| Disabled 1 instrument |
+-----------------------+
Отключите все mutex инструменты:
mysql> CALL ps_setup_disable_instrument('mutex');
+--------------------------+
| summary |
+--------------------------+
| Disabled 177 instruments |
+--------------------------+
24.4.4.7.
Процедура ps_setup_disable_thread()
Параметры
in_connection_id BIGINT
: Идентификатор соединения.
Это идентификатор соединения из столбца PROCESSLIST_ID
таблицы
Performance Schema threads
или столбца Id
вывода
SHOW PROCESSLIST
.
Пример
mysql> CALL ps_setup_disable_thread(225);
+-------------------+
| summary |
+-------------------+
| Disabled 1 thread |
+-------------------+
Отключите текущее соединение:
mysql> CALL ps_setup_disable_thread(CONNECTION_ID());
+-------------------+
| summary |
+-------------------+
| Disabled 1 thread |
+-------------------+
24.4.4.8.
Процедура ps_setup_enable_background_threads()
Параметры
Пример
mysql> CALL ps_setup_enable_background_threads();
+-------------------------------+
| summary |
+-------------------------------+
| Enabled 24 background threads |
+-------------------------------+
24.4.4.9.
Процедура ps_setup_enable_consumer()
Параметры
consumer VARCHAR(128)
: Значение перечисляет
имена, которые идентифицированы при использовании %consumer%
как операнд для LIKE
.
Значение ''
соответствует всем потребителям.Пример
mysql> CALL ps_setup_enable_consumer('statement');
+---------------------+
| summary |
+---------------------+
| Enabled 4 consumers |
+---------------------+
24.4.4.10.
Процедура ps_setup_enable_instrument()
Параметры
in_pattern VARCHAR(128)
: Значение перечисляет
имена, которые идентифицированы при использовании %in_pattern%
как операнд для LIKE
.
Значение ''
соответствует всем инструментам.Пример
mysql> CALL ps_setup_enable_instrument('wait/lock/metadata/sql/mdl');
+----------------------+
| summary |
+----------------------+
| Enabled 1 instrument |
+----------------------+
Включите все mutex инструменты:
mysql> CALL ps_setup_enable_instrument('mutex');
+-------------------------+
| summary |
+-------------------------+
| Enabled 177 instruments |
+-------------------------+
24.4.4.11.
Процедура ps_setup_enable_thread()
Параметры
in_connection_id BIGINT
: Идентификатор соединения.
Это ID соединения как в столбце PROCESSLIST_ID
таблицы
Performance Schema threads
или столбце Id
вывода
SHOW PROCESSLIST
.
Пример
mysql> CALL ps_setup_enable_thread(225);
+------------------+
| summary |
+------------------+
| Enabled 1 thread |
+------------------+
Включите текущее соединение:
mysql> CALL ps_setup_enable_thread(CONNECTION_ID());
+------------------+
| summary|
+------------------+
| Enabled 1 thread |
+------------------+
24.4.4.12.
Процедура ps_setup_reload_saved()
ps_setup_save()
.
Для получения дополнительной информации см. описание
ps_setup_save()
.SUPER
, потому что это
управляет сеансовой перменной
sql_log_bin
, чтобы
отключить двоичное журналирование во время выполнения.Параметры
24.4.4.13.
Процедура ps_setup_reset_to_default()
Параметры
in_verbose BOOLEAN
: Вывести ли на экран информацию о
каждом этапе во время выполнения процедуры. Это включает
выполненные запросы SQL.Пример
mysql> CALL ps_setup_reset_to_default(TRUE)\G
*************************** 1. row ***************************
status: Resetting: setup_actors
DELETE
FROM performance_schema.setup_actors
WHERE NOT (HOST = '%' AND USER = '%' AND ROLE = '%')
*************************** 1. row ***************************
status: Resetting: setup_actors
INSERT IGNORE INTO performance_schema.setup_actors
VALUES ('%', '%', '%')
...
24.4.4.14. Процедура ps_setup_save()
ps_setup_reload_saved()
.ps_setup_save()
приобретает блокировку sys.ps_setup_save
вызовом
функции GET_LOCK()
.
ps_setup_save()
берет параметр тайм-аута, чтобы указать, сколько секунд ждать, если
блокировка уже существует (это указывает, что у некоторого другого сеанса
есть сохраненная конфигурация). Если тайм-аут истекает, не получая
блокировку, ps_setup_save()
терпит неудачу.ps_setup_reload_saved()
позже в пределах того же самого
сеанса, что и
ps_setup_save()
, потому что конфигурация сохранена в таблицы
TEMPORARY
.
ps_setup_save()
удаляет временные таблицы и выпускает блокировку.
Если Вы заканчиваете свой сеанс без вызова
ps_setup_save()
,
таблицы и блокировка исчезают автоматически.SUPER
, потому что это
управляет сеансовой перменной
sql_log_bin
, чтобы
отключить двоичное журналирование во время выполнения.Параметры
in_timeout INT
: Сколько секунд ждать, чтобы получить
блокировку sys.ps_setup_save
. Отрицательное значение тайм-аута
означает бесконечный тайм-аут.Пример
mysql> CALL ps_setup_save(10);
...
make Performance Schema configuration changes
...
mysql> CALL ps_setup_reload_saved();
24.4.4.15. Процедура
ps_setup_show_disabled()
Параметры
in_show_instruments BOOLEAN
: Вывести ли на экран
отключенные инструменты. Это может быть длинным списком.in_show_threads BOOLEAN
: Вывести ли на
экран отключенные потоки.Пример
mysql> CALL ps_setup_show_disabled(TRUE, TRUE);
+----------------------------+
| performance_schema_enabled |
+----------------------------+
| 1 |
+----------------------------+
+---------------+
| enabled_users |
+---------------+
| '%'@'%' |
+---------------+
+-------------+----------------------+---------+-------+
| object_type | objects | enabled | timed |
+-------------+----------------------+---------+-------+
| EVENT | mysql.% | NO | NO |
| EVENT | performance_schema.% | NO | NO |
| EVENT | information_schema.% | NO | NO |
| FUNCTION | mysql.% | NO | NO |
| FUNCTION | performance_schema.% | NO | NO |
| FUNCTION | information_schema.% | NO | NO |
| PROCEDURE | mysql.% | NO | NO |
| PROCEDURE | performance_schema.% | NO | NO |
| PROCEDURE | information_schema.% | NO | NO |
| TABLE | mysql.% | NO | NO |
| TABLE | performance_schema.% | NO | NO |
| TABLE | information_schema.% | NO | NO |
| TRIGGER | mysql.% | NO | NO |
| TRIGGER | performance_schema.% | NO | NO |
| TRIGGER | information_schema.% | NO | NO |
+-------------+----------------------+---------+-------+
...
24.4.4.16.
Процедура ps_setup_show_disabled_consumers()
Параметры
Пример
mysql> CALL ps_setup_show_disabled_consumers();
+----------------------------------+
| disabled_consumers |
+----------------------------------+
| events_stages_current |
| events_stages_history |
| events_stages_history_long |
| events_statements_history |
| events_statements_history_long |
| events_transactions_history |
| events_transactions_history_long |
| events_waits_current |
| events_waits_history |
| events_waits_history_long |
+----------------------------------+
24.4.4.17.
Процедура ps_setup_show_disabled_instruments()
Параметры
Пример
mysql> CALL ps_setup_show_disabled_instruments()\G
*************************** 1. row ***************************
disabled_instruments: wait/synch/mutex/sql/TC_LOG_MMAP::LOCK_tc
timed: NO
*************************** 2. row ***************************
disabled_instruments: wait/synch/mutex/sql/LOCK_des_key_file
timed: NO
*************************** 3. row ***************************
disabled_instruments: wait/synch/mutex/sql/MYSQL_BIN_LOG::LOCK_commit
timed: NO
...
24.4.4.18.
Процедура ps_setup_show_enabled()
Параметры
in_show_instruments BOOLEAN
: Вывести ли на экран
отключенные инструменты. Это может быть длинным списком.in_show_threads BOOLEAN
: Вывести ли на
экран отключенные потоки.Пример
mysql> CALL ps_setup_show_enabled(FALSE, FALSE);
+----------------------------+
| performance_schema_enabled |
+----------------------------+
| 1 |
+----------------------------+
1 row in set (0.00 sec)
+---------------+
| enabled_users |
+---------------+
| '%'@'%' |
+---------------+
1 row in set (0.00 sec)
+-------------+---------+---------+-------+
| object_type | objects | enabled | timed |
+-------------+---------+---------+-------+
| EVENT | %.% | YES | YES |
| FUNCTION | %.% | YES | YES |
| PROCEDURE | %.% | YES | YES |
| TABLE | %.% | YES | YES |
| TRIGGER | %.% | YES | YES |
+-------------+---------+---------+-------+
5 rows in set (0.01 sec)
+-----------------------------+
| enabled_consumers |
+-----------------------------+
| events_statements_current |
| events_transactions_current |
| global_instrumentation |
| thread_instrumentation |
| statements_digest |
+-----------------------------+
24.4.4.19.
Процедура ps_setup_show_enabled_consumers()
Параметры
Пример
mysql> CALL ps_setup_show_enabled_consumers();
+-----------------------------+
| enabled_consumers |
+-----------------------------+
| events_statements_current |
| events_transactions_current |
| global_instrumentation |
| thread_instrumentation |
| statements_digest |
+-----------------------------+
24.4.4.20.
Процедура ps_setup_show_enabled_instruments()
Параметры
Пример
mysql> CALL ps_setup_show_enabled_instruments()\G
*************************** 1. row ***************************
enabled_instruments: wait/io/file/sql/map
timed: YES
*************************** 2. row ***************************
enabled_instruments: wait/io/file/sql/binlog
timed: YES
*************************** 3. row ***************************
enabled_instruments: wait/io/file/sql/binlog_cache
timed: YES
...
24.4.4.21.
Процедура ps_statement_avg_latency_histogram()
events_statements_summary_by_digest
.Параметры
Пример
* = 2 units
в гистограмме означает, что каждый
символ *
представляет 2 запроса.
mysql> CALL ps_statement_avg_latency_histogram()\G
*************************** 1. row ***************************
Performance Schema Statement Digest Average Latency Histogram:
. = 1 unit
* = 2 units
# = 3 units
(0 - 66ms) 88 | #############################
(66 - 133ms) 14 | ..............
(133 - 199ms) 4 | ....
(199 - 265ms) 5 | **
(265 - 332ms) 1 | .
(332 - 398ms) 0 |
(398 - 464ms) 1 | .
(464 - 531ms) 0 |
(531 - 597ms) 0 |
(597 - 663ms) 0 |
(663 - 730ms) 0 |
(730 - 796ms) 0 |
(796 - 863ms) 0 |
(863 - 929ms) 0 |
(929 - 995ms) 0 |
(995 - 1062ms) 0 |
Total Statements: 114; Buckets: 16; Bucket Size: 66 ms;
24.4.4.22.
Процедура ps_trace_statement_digest()
events_statements_summary_by_digest
, определите значение
MD5 столбца DIGEST
этой процедуре и укажите продолжительность и
интервал. Результат: сообщение обо всей статистике, прослеженной в пределах
Performance Schema для этого обзора в интервале.EXPLAIN
для самого длинного рабочего примера обзора во время интервала. Эта попытка
могла бы потерпеть неудачу, потому что Performance Schema усекает длинные
значения SQL_TEXT
. Следовательно,
EXPLAIN
потерпит неудачу.SUPER
, потому что это
управляет сеансовой переменной
sql_log_bin
, чтобы
отключить двоичное журналирование во время выполнения.Параметры
in_digest VARCHAR(32)
:
Идентификатор обзора запроса, чтобы проанализировать.in_runtime INT
: Сколько времени выполнить анализ в секундах.
in_interval DECIMAL(2,2)
: Аналитический интервал в секундах
(может быть дробным), в котором можно попытаться взять снимки.in_start_fresh BOOLEAN
: Усечь ли таблицы Performance Schema
events_statements_history_long
и
events_stages_history_long
перед запуском.in_auto_enable BOOLEAN
: Включить ли
автоматически необходимых потребителей.Пример
mysql> CALL ps_trace_statement_digest('891ec6860f98ba46d89dd20b0c03652c', 10, 0.1, TRUE, TRUE);
+--------------------+
| SUMMARY STATISTICS |
+--------------------+
| SUMMARY STATISTICS |
+--------------------+
1 row in set (9.11 sec)
+------------+-----------+-----------+-----------+---------------+------------+------------+
| executions | exec_time | lock_time | rows_sent | rows_examined | tmp_tables | full_scans |
+------------+-----------+-----------+-----------+---------------+------------+------------+
| 21 | 4.11 ms | 2.00 ms | 0 | 21 | 0 | 0 |
+------------+-----------+-----------+-----------+---------------+------------+------------+
1 row in set (9.11 sec)
+------------------------------------------+-------+-----------+
| event_name | count | latency |
+------------------------------------------+-------+-----------+
| stage/sql/checking query cache for query | 16 | 724.37 us |
| stage/sql/statistics | 16 | 546.92 us |
| stage/sql/freeing items | 18 | 520.11 us |
| stage/sql/init | 51 | 466.80 us |
...
| stage/sql/cleaning up | 18 | 11.92 us |
| stage/sql/executing | 16 | 6.95 us |
+------------------------------------------+-------+-----------+
17 rows in set (9.12 sec)
+---------------------------+
| LONGEST RUNNING STATEMENT |
+---------------------------+
| LONGEST RUNNING STATEMENT |
+---------------------------+
1 row in set (9.16 sec)
+-----------+-----------+-----------+-----------+---------------+------------+-----------+
| thread_id | exec_time | lock_time | rows_sent | rows_examined | tmp_tables | full_scan |
+-----------+-----------+-----------+-----------+---------------+------------+-----------+
|166646 | 618.43 us | 1.00 ms | 0 | 1 | 0 | 0 |
+-----------+-----------+-----------+-----------+---------------+------------+-----------+
1 row in set (9.16 sec)
# Truncated for clarity...
+-----------------------------------------------------------------+
| sql_text |
+-----------------------------------------------------------------+
| select hibeventhe0_.id as id1382_, hibeventhe0_.createdTime ... |
+-----------------------------------------------------------------+
1 row in set (9.17 sec)
+------------------------------------------+-----------+
| event_name | latency |
+------------------------------------------+-----------+
| stage/sql/init | 8.61 us |
| stage/sql/Waiting for query cache lock | 453.23 us |
| stage/sql/init | 331.07 ns |
| stage/sql/checking query cache for query | 43.04 us |
...
| stage/sql/freeing items | 30.46 us |
| stage/sql/cleaning up | 662.13 ns |
+------------------------------------------+-----------+
18 rows in set (9.23 sec)
+----+-------------+--------------+-------+---------------+-----------+---------+-------------+------+-------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+--------------+-------+---------------+-----------+---------+-------------+------+-------+
| 1 | SIMPLE | hibeventhe0_ | const | fixedTime | fixedTime | 775 | const,const | 1 | NULL |
+----+-------------+--------------+-------+---------------+-----------+---------+-------------+------+-------+
1 row in set (9.27 sec)
Query OK, 0 rows affected (9.28 sec)
24.4.4.23. Процедура ps_trace_thread()
.dot
(для языка описания графика
DOT). Каждый набор результатов, возвращенный из процедуры, должен
использоваться для полного графика.SUPER
, потому что это
управляет сеансовой переменной
sql_log_bin
, чтобы
отключить двоичное журналирование во время выполнения.Параметры
in_thread_id INT
: Поток, чтобы проследить.in_outfile VARCHAR(255)
: Имя выходного файла
.dot
.in_max_runtime DECIMAL(20,2)
: Максимальное количество секунд
(может быть дробным), чтобы собрать данные. Используйте NULL
для значения по умолчанию в 60 секунд.in_interval DECIMAL(20,2)
: Число секунд (может быть дробным),
которые спать между сборами данных. Используйте NULL
для значения по умолчанию в 1 секунду.in_start_fresh BOOLEAN
: Сбросить ли все данные
Performance Schema перед рассмотрением.in_auto_setup BOOLEAN
: Запретить ли все другие потоки и
включить ли все инструменты и потребители. Это также сбрасывает
настройки в конце выполнения.in_debug BOOLEAN
: Включать ли информацию
file:lineno
в график.Пример
mysql> CALL ps_trace_thread(25, CONCAT('/tmp/stack-', REPLACE(NOW(),
' ', '-'), '.dot'), NULL, NULL, TRUE, TRUE, TRUE);
+-------------------+
| summary |
+-------------------+
| Disabled 1 thread |
+-------------------+
1 row in set (0.00 sec)
+---------------------------------------------+
| Info |
+---------------------------------------------+
| Data collection starting for THREAD_ID = 25 |
+---------------------------------------------+
1 row in set (0.03 sec)
+-----------------------------------------------------------+
| Info |
+-----------------------------------------------------------+
| Stack trace written to /tmp/stack-2014-02-16-21:18:41.dot |
+-----------------------------------------------------------+
1 row in set (60.07 sec)
+-------------------------------------------------------------------+
| Convert to PDF |
+-------------------------------------------------------------------+
| dot -Tpdf -o /tmp/stack_25.pdf /tmp/stack-2014-02-16-21:18:41.dot |
+-------------------------------------------------------------------+
1 row in set (60.07 sec)
+-------------------------------------------------------------------+
| Convert to PNG |
+-------------------------------------------------------------------+
| dot -Tpng -o /tmp/stack_25.png /tmp/stack-2014-02-16-21:18:41.dot |
+-------------------------------------------------------------------+
1 row in set (60.07 sec)
+------------------+
| summary |
+------------------+
| Enabled 1 thread |
+------------------+
1 row in set (60.32 sec)
24.4.4.24.
Процедура ps_truncate_all_tables()
Параметры
in_verbose BOOLEAN
: Вывести ли на экран каждый
запрос TRUNCATE TABLE
прежде, чем выполнить это.Пример
mysql> CALL ps_truncate_all_tables(FALSE);
+---------------------+
| summary |
+---------------------+
| Truncated 44 tables |
+---------------------+
24.4.4.25.
Процедура statement_performance_analyzer()
SUPER
, потому что это
управляет сеансовой переменной
sql_log_bin
, чтобы
отключить двоичное журналирование во время выполнения.Параметры
in_action ENUM('snapshot', 'overall', 'delta',
'create_tmp', 'create_table', 'save', 'cleanup')
:
Действие. Эти значения разрешены:snapshot
: Сохранить снимок. Значение по умолчанию
должно сделать снимок текущего контента таблицы Performance Schema
events_statements_summary_by_digest
. Устанавливая
in_table
, это можно перезаписать, чтобы скопировать контент
указанной таблицы. Снимок сохранен во временной таблице
tmp_digests
sys
schema.overall
: Произвести анализ, основанный на контенте таблицы,
определенной in_table
. Для полного анализа in_table
может быть NOW()
, чтобы
использовать новый снимок. Это перезаписывает существующий снимок.
Используйте NULL
для in_table
, чтобы
использовать существующий снимок. Если in_table
NULL
и никакой снимок не существует, новый снимок создается.
Параметр in_views
и опция
statement_performance_analyzer.limit
влияют на эту процедуру.
delta
: Произвести анализ дельты. Дельта вычислена между
ссылочной таблицей, определенной in_table
, и снимком, который
должен существовать. Это действие использует временную таблицу
tmp_digests_delta
sys
schema.
Параметр in_views
и опция
statement_performance_analyzer.limit
влияют на эту процедуру.
create_table
: Составить регулярную таблицу, подходящую для
того, чтобы сохранить снимок для более позднего использования (например, для
того, чтобы вычислить дельты).create_tmp
: Составить временную таблицу, подходящую для
того, чтобы сохранить снимок для более позднего использования (например, для
того, чтобы вычислить дельты).save
: Сохранить снимок в таблице, определенной
in_table
. Таблица должна существовать и иметь правильную
структуру. Если никакой снимок не существует, новый снимок создается.cleanup
: Удалить временные таблицы, используемые
для снимка и дельты.in_table VARCHAR(129)
: Табличный параметр, используемый для
некоторых из действий, определенных параметром in_action
.
Используйте формат db_name.tbl_name
или
tbl_name
не используя обратный апостроф
(`
). Точка (.
) не поддержана в именах
базы данных и таблиц.
in_table
для каждого in_action
детализировано в описании in_action
.in_views SET ('with_runtimes_in_95th_percentile',
'analysis', 'with_errors_or_warnings',
'with_full_table_scans', 'with_sorting',
'with_temp_tables', 'custom')
:
Какие представления включать. Этот параметр SET
, таким образом,
это может содержать много имен представлений, отделенных запятыми. Значение
по умолчанию должно включать все представления, кроме custom
.
Следующие значения разрешены:
with_runtimes_in_95th_percentile
:
Используйте
statements_with_runtimes_in_95th_percentile
.analysis
: Используйте
statement_analysis
.
with_errors_or_warnings
: Используйте
statements_with_errors_or_warnings
.with_full_table_scans
: Используйте
statements_with_full_table_scans
.with_sorting
: Используйте
statements_with_sorting
.with_temp_tables
: Используйте
statements_with_temp_tables
.custom
: Используйте представление custom.
Это представление должно быть определено, используя опцию конфигурации
statement_performance_analyzer.view
, чтобы
назвать запрос или существующее представление.Опции
statement_performance_analyzer()
может быть изменена, используя
следующие параметры конфигурации или их соответствующие определяемые
пользователем переменные (см. раздел
24.4.2.1):debug
, @sys.debug
.ON
, произвести вывод отладки.
Значение по умолчанию OFF
.statement_performance_analyzer.limit
,
@sys.statement_performance_analyzer.limit
.
statement_performance_analyzer.view
,
@sys.statement_performance_analyzer.view
.
events_statements_summary_by_digest
.
Не может быть никакого LIMIT
в запросе или определение
представления, если параметр конфигурации
statement_performance_analyzer.limit
больше 0. Определяя
представление, используйте тот же самый формат, что касается
in_table
. Значение по умолчанию NULL
(никакого
пользовательского определенного представления).Пример
events_statements_summary_by_digest
с одноминутным периодом дельты:
mysql> CALL statement_performance_analyzer('create_tmp',
'mydb.tmp_digests_ini', NULL);
Query OK, 0 rows affected (0.08 sec)
mysql> CALL statement_performance_analyzer('snapshot', NULL, NULL);
Query OK, 0 rows affected (0.02 sec)
mysql> CALL statement_performance_analyzer('save', 'mydb.tmp_digests_ini',
NULL);
Query OK, 0 rows affected (0.00 sec)
mysql> DO SLEEP(60);
Query OK, 0 rows affected (1 min 0.00 sec)
mysql> CALL statement_performance_analyzer('snapshot', NULL, NULL);
Query OK, 0 rows affected (0.02 sec)
mysql> CALL statement_performance_analyzer('overall', NULL,
'with_runtimes_in_95th_percentile');
+-----------------------------------------+
| Next Output |
+-----------------------------------------+
| Queries with Runtime in 95th Percentile |
+-----------------------------------------+
1 row in set (0.05 sec)
...
mysql> CALL statement_performance_analyzer('delta', 'mydb.tmp_digests_ini', 'with_runtimes_in_95th_percentile');
+-----------------------------------------+
| Next Output |
+-----------------------------------------+
| Queries with Runtime in 95th Percentile |
+-----------------------------------------+
1 row in set (0.03 sec)
...
Создайте полное сообщение о запросах 95th percentile и
10 лучших запросах с полным сканированием таблицы:
mysql> CALL statement_performance_analyzer('snapshot', NULL, NULL);
Query OK, 0 rows affected (0.01 sec)
mysql> SET @sys.statement_performance_analyzer.limit = 10;
Query OK, 0 rows affected (0.00 sec)
mysql> CALL statement_performance_analyzer('overall', NULL,
'with_runtimes_in_95th_percentile,with_full_table_scans');
+-----------------------------------------+
| Next Output |
+-----------------------------------------+
| Queries with Runtime in 95th Percentile |
+-----------------------------------------+
1 row in set (0.01 sec)
...
+-------------------------------------+
| Next Output |
+-------------------------------------+
| Top 10 Queries with Full Table Scan |
+-------------------------------------+
1 row in set (0.09 sec)
...
Используйте пользовательское представление, показывая лучшие 10 запросов,
сортированных полным временем выполнения, освежая представление каждую
минуту, используя команду watch в Linux:
mysql> CREATE OR REPLACE VIEW mydb.my_statements AS
-> SELECT sys.format_statement(DIGEST_TEXT) AS query,
-> SCHEMA_NAME AS db, COUNT_STAR AS exec_count,
-> sys.format_time(SUM_TIMER_WAIT) AS total_latency,
-> sys.format_time(AVG_TIMER_WAIT) AS avg_latency,
-> ROUND(IFNULL(SUM_ROWS_SENT / NULLIF(COUNT_STAR, 0), 0)) AS
-> rows_sent_avg,
-> ROUND(IFNULL(SUM_ROWS_EXAMINED / NULLIF(COUNT_STAR, 0), 0))
-> AS rows_examined_avg,
-> ROUND(IFNULL(SUM_ROWS_AFFECTED / NULLIF(COUNT_STAR, 0), 0))
-> AS rows_affected_avg, DIGEST AS digest
-> FROM performance_schema.events_statements_summary_by_digest
-> ORDER BY SUM_TIMER_WAIT DESC;
Query OK, 0 rows affected (0.01 sec)
mysql> CALL statement_performance_analyzer('create_table',
'mydb.digests_prev', NULL);
Query OK, 0 rows affected (0.10 sec)
shell> watch -n 60 "mysql sys --table -e \"
> SET @sys.statement_performance_analyzer.view = 'mydb.my_statements';
> SET @sys.statement_performance_analyzer.limit = 10;
> CALL statement_performance_analyzer('snapshot', NULL, NULL);
> CALL statement_performance_analyzer('delta', 'mydb.digests_prev', 'custom');
> CALL statement_performance_analyzer('save', 'mydb.digests_prev', NULL);
> \""
Every 60.0s: mysql sys --table -e "... Mon Dec 22 10:58:51 2014
+----------------------------------+
| Next Output |
+----------------------------------+
| Top 10 Queries Using Custom View |
+----------------------------------+
+-------+----+------------+---------------+-------------+---------------+-------------------+-------------------+--------+
| query | db | exec_count | total_latency | avg_latency | rows_sent_avg | rows_examined_avg | rows_affected_avg | digest |
+-------+----+------------+---------------+-------------+---------------+-------------------+-------------------+--------+
...
24.4.4.26.
Процедура table_exists()
TEMPORARY
или представление. Процедура возвращает тип таблицы
в параметре OUT
. Если временная и постоянная таблицы существуют
с этим именем, вернется TEMPORARY
.Параметры
in_db VARCHAR(64)
: Название базы данных, в которой
можно проверить существование таблицы.in_table VARCHAR(64)
: Название таблицы, чтобы проверить.
out_exists ENUM('', 'BASE TABLE', 'VIEW', 'TEMPORARY')
:
Возвращаемое значение. Это параметр OUT
, таким образом, это
должна быть переменная, в которую может быть сохранен табличный тип. Когда
процедура возвращается, у переменной есть одно из следующих значений,
чтобы указать, существует ли таблица:
''
: Имя таблицы не существует как базовая таблица,
TEMPORARY
или представление.BASE TABLE
: Имя таблицы существует как
основная (постоянная) таблица.VIEW
: Имя таблицы существует как представление.TEMPORARY
: Имя таблицы существует как таблица
a TEMPORARY
.Пример
mysql> CREATE DATABASE db1;
Query OK, 1 row affected (0.01 sec)
mysql> USE db1;
Database changed
mysql> CREATE TABLE t1 (id INT PRIMARY KEY);
Query OK, 0 rows affected (0.03 sec)
mysql> CREATE TABLE t2 (id INT PRIMARY KEY);
Query OK, 0 rows affected (0.20 sec)
mysql> CREATE view v_t1 AS SELECT * FROM t1;
Query OK, 0 rows affected (0.02 sec)
mysql> CREATE TEMPORARY TABLE t1 (id INT PRIMARY KEY);
Query OK, 0 rows affected (0.00 sec)
mysql> CALL sys.table_exists('db1', 't1', @exists); SELECT @exists;
Query OK, 0 rows affected (0.01 sec)
+-----------+
| @exists |
+-----------+
| TEMPORARY |
+-----------+
1 row in set (0.00 sec)
mysql> CALL sys.table_exists('db1', 't2', @exists); SELECT @exists;
Query OK, 0 rows affected (0.02 sec)
+------------+
| @exists |
+------------+
| BASE TABLE |
+------------+
1 row in set (0.00 sec)
mysql> CALL sys.table_exists('db1', 'v_t1', @exists); SELECT @exists;
Query OK, 0 rows affected (0.02 sec)
+---------+
| @exists |
+---------+
| VIEW |
+---------+
1 row in set (0.00 sec)
mysql> CALL sys.table_exists('db1', 't3', @exists); SELECT @exists;
Query OK, 0 rows affected (0.00 sec)
+---------+
| @exists |
+---------+
| |
+---------+
1 row in set (0.00 sec)
24.4.5.
Хранимые функции sys Schema
sys
schema.24.4.5.1.
Функция extract_schema_from_file_name()
DATA_DIRECTORY
.
Параметры
path VARCHAR(512)
: Весь путь к файлу с данными, из
которого можно извлечь имя схемы.Возвращаемое значение
VARCHAR(64)
.Пример
mysql> SELECT extract_schema_from_file_name('/usr/local/mysql/data/world/City.ibd');
+-----------------------------------------------------------------------+
| extract_schema_from_file_name('/usr/local/mysql/data/world/City.ibd') |
+-----------------------------------------------------------------------+
| world |
+-----------------------------------------------------------------------+
24.4.5.2.
Функция extract_table_from_file_name()
Параметры
path VARCHAR(512)
: Весь путь к файлу с данными,
из которого можно извлечь имя таблицы.Возвращаемое значение
VARCHAR(64)
.Пример
mysql> SELECT extract_table_from_file_name('/usr/local/mysql/data/world/City.ibd');
+----------------------------------------------------------------------+
| extract_table_from_file_name('/usr/local/mysql/data/world/City.ibd') |
+----------------------------------------------------------------------+
| City |
+----------------------------------------------------------------------+
24.4.5.3. Функция format_bytes()
bytes
, KiB
(kibibytes), MiB
(mebibytes),
GiB
(gibibytes), TiB
(tebibytes) или PiB
(pebibytes).Параметры
bytes TEXT
: Значение байтов для формата.
Возвращаемое значение
TEXT
.Пример
mysql> SELECT format_bytes(512), format_bytes(18446644073709551615);
+-------------------+------------------------------------+
| format_bytes(512) | format_bytes(18446644073709551615) |
+-------------------+------------------------------------+
| 512 bytes | 16383.91 PiB |
+-------------------+------------------------------------+
24.4.5.4. Функция format_path()
datadir
tmpdir
slave_load_tmpdir
innodb_data_home_dir
innodb_log_group_home_dir
innodb_undo_directory
basedir
Значение, которое соответствует значению системной переменной
sysvar
заменено строкой
@@global.
.
sysvar
Параметры
path VARCHAR(512)
: Путь, чтобы отформатировать.
Возвращаемое значение
VARCHAR(512) CHARACTER SET utf8
.Пример
mysql> SELECT format_path('/usr/local/mysql/data/world/City.ibd');
+-----------------------------------------------------+
| format_path('/usr/local/mysql/data/world/City.ibd') |
+-----------------------------------------------------+
| @@datadir/world/City.ibd |
+-----------------------------------------------------+
24.4.5.5. Функция format_statement()
statement_truncate_len
,
и возвращает результат. Никакое усечение не происходит, если строка короче
statement_truncate_len
. Иначе средняя часть строки заменена
многоточием (...
).Параметры
statement LONGTEXT
: запрос для форматирования.
Опции
format_statement()
может быть изменена, используя следующие параметры конфигурации или их
соответствующие определяемые пользователем переменные (см.
раздел 24.4.2.1):statement_truncate_len
,
@sys.statement_truncate_len
.format_statement()
.
Более длинные запросы усечены к этой длине. Значение по умолчанию 64.
Возвращаемое значение
LONGTEXT
.Пример
format_statement()
усекает запросы, чтобы они были не больше 64
символов. Установка @sys.statement_truncate_len
изменяет длину усечения для текущего сеанса:
mysql> SET @stmt = 'SELECT variable, value, set_time, set_by
FROM sys_config';
mysql> SELECT format_statement(@stmt);
+----------------------------------------------------------+
| format_statement(@stmt) |
+----------------------------------------------------------+
| SELECT variable, value, set_time, set_by FROM sys_config |
+----------------------------------------------------------+
mysql> SET @sys.statement_truncate_len = 32;
mysql> SELECT format_statement(@stmt);
+-----------------------------------+
| format_statement(@stmt) |
+-----------------------------------+
| SELECT variabl ... ROM sys_config |
+-----------------------------------+
24.4.5.6. Функция format_time()
ns
(nanoseconds), us
(microseconds), ms
(milliseconds),
s
(seconds), m
(minutes), h
(hours), d
(days) или w
(weeks).Параметры
picoseconds TEXT
: Пикосекунды для форматирования.
Возвращаемое значение
TEXT
.Пример
mysql> SELECT format_time(3501), format_time(188732396662000);
+-------------------+------------------------------+
| format_time(3501) | format_time(188732396662000) |
+-------------------+------------------------------+
| 3.50 ns | 3.15 m |
+-------------------+------------------------------+
24.4.5.7. Функция list_add()
list_drop()
могут быть полезны для управления значением таких системных переменных, как
sql_mode
и
optimizer_switch
, которым нужен список разделенных запятой значений.Параметры
in_list TEXT
: Список, который будет изменен.in_add_value TEXT
: Значение, чтобы добавить к списку.
Возвращаемое значение
TEXT
.Пример
mysql> SELECT @@sql_mode;
+----------------------------------------+
| @@sql_mode |
+----------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES |
+----------------------------------------+
mysql> SET @@sql_mode = list_add(@@sql_mode, 'NO_ENGINE_SUBSTITUTION');
mysql> SELECT @@sql_mode;
+---------------------------------------------------------------+
| @@sql_mode |
+---------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION |
+---------------------------------------------------------------+
mysql> SET @@sql_mode = list_drop(@@sql_mode, 'ONLY_FULL_GROUP_BY');
mysql> SELECT @@sql_mode;
+--------------------------------------------+
| @@sql_mode |
+--------------------------------------------+
| STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION |
+--------------------------------------------+
24.4.5.8. Функция list_drop()
list_add()
.Параметры
in_list TEXT
: Список, который будет изменен.in_drop_value TEXT
: Значение, чтобы удалить из списка.
Возвращаемое значение
TEXT
.24.4.5.9.
Функция ps_is_account_enabled()
YES
или NO
, чтобы
указать, включена ли инструментовка Performance Schema для
указанной учетной записи.Параметры
in_host VARCHAR(60)
: Имя хоста учетной записи.in_user VARCHAR(32)
: Имя пользователя учетной записи.
Возвращаемое значение
ENUM('YES','NO')
.Пример
mysql> SELECT ps_is_account_enabled('localhost', 'root');
+--------------------------------------------+
| ps_is_account_enabled('localhost', 'root') |
+--------------------------------------------+
| YES |
+--------------------------------------------+
24.4.5.10.
Функция ps_is_consumer_enabled()
YES
или NO
, чтобы указать, включен
ли данный потребитель Performance Schema, или NULL
,
если параметр не допустимое потребительское имя.Параметры
in_consumer VARCHAR(64)
:
Имя потребителя, чтобы проверить.Возвращаемое значение
ENUM('YES','NO')
.Пример
mysql> SELECT ps_is_consumer_enabled('thread_instrumentation');
+--------------------------------------------------+
| ps_is_consumer_enabled('thread_instrumentation') |
+--------------------------------------------------+
| YES |
+--------------------------------------------------+
24.4.5.11.
The ps_is_instrument_default_enabled()
YES
или NO
, чтобы
указать, включен ли данный инструмент Performance Schema по умолчанию.Параметры
in_instrument VARCHAR(128)
:
Название инструмента, чтобы проверить.Возвращаемое значение
ENUM('YES','NO')
.Пример
mysql> SELECT ps_is_instrument_default_enabled('memory/innodb/row_log_buf');
+---------------------------------------------------------------+
| ps_is_instrument_default_enabled('memory/innodb/row_log_buf') |
+---------------------------------------------------------------+
| NO |
+---------------------------------------------------------------+
mysql> SELECT ps_is_instrument_default_enabled('statement/sql/alter_user');
+--------------------------------------------------------------+
| ps_is_instrument_default_enabled('statement/sql/alter_user') |
+--------------------------------------------------------------+
| YES |
+--------------------------------------------------------------+
24.4.5.12.
Функция ps_is_instrument_default_timed()
YES
или NO
, чтобы указать, рассчитан
ли данный инструмент Performance Schema по умолчанию.Параметры
in_instrument VARCHAR(128)
:
Название инструмента, чтобы проверить.Возвращаемое значение
ENUM('YES','NO')
.Пример
mysql> SELECT ps_is_instrument_default_timed('memory/innodb/row_log_buf');
+-------------------------------------------------------------+
| ps_is_instrument_default_timed('memory/innodb/row_log_buf') |
+-------------------------------------------------------------+
| NO |
+-------------------------------------------------------------+
mysql> SELECT ps_is_instrument_default_timed('statement/sql/alter_user');
+------------------------------------------------------------+
| ps_is_instrument_default_timed('statement/sql/alter_user') |
+------------------------------------------------------------+
| YES |
+------------------------------------------------------------+
24.4.5.13.
Функция ps_is_thread_instrumented()
YES
или NO
, чтобы указать,
включена ли инструментовка Performance Schema для данного соединения,
UNKNOWN
, если идентификатор неизвестен или NULL
,
если ID NULL
.Параметры
in_connection_id BIGINT UNSIGNED
: ID соединения. Это
ID из столбца PROCESSLIST_ID
таблицы Performance Schema
threads
или столбец
Id
вывода SHOW
PROCESSLIST
.Возвращаемое значение
ENUM('YES','NO','UNKNOWN')
.Пример
mysql> SELECT ps_is_thread_instrumented(43);
+-------------------------------+
| ps_is_thread_instrumented(43) |
+-------------------------------+
| UNKNOWN |
+-------------------------------+
mysql> SELECT ps_is_thread_instrumented(CONNECTION_ID());
+--------------------------------------------+
| ps_is_thread_instrumented(CONNECTION_ID()) |
+--------------------------------------------+
| YES |
+--------------------------------------------+
24.4.5.14. Функция ps_thread_account()
,
связанную с этим потоком.user_name
@host_name
Параметры
in_thread_id BIGINT UNSIGNED
: ID потока, для
которого нужно возвратить учетную запись. Значение должно соответствовать
столбцу THREAD_ID
из строки таблицы Performance Schema
threads
.Возвращаемое значение
TEXT
.Пример
mysql> SELECT ps_thread_account(ps_thread_id(CONNECTION_ID()));
+--------------------------------------------------+
| ps_thread_account(ps_thread_id(CONNECTION_ID())) |
+--------------------------------------------------+
| root@localhost |
+--------------------------------------------------+
24.4.5.15. Функция ps_thread_id()
NULL
.Параметры
in_connection_id BIGINT UNSIGNED
: ID соединения, для
которого нужно возвратить идентификатор потока. Это идентификатор соединения
как в столбце PROCESSLIST_ID
таблицы Performance Schema
threads
или столбце
Id
вывода
SHOW PROCESSLIST
.Возвращаемое значение
BIGINT UNSIGNED
.Пример
mysql> SELECT ps_thread_id(260);
+-------------------+
| ps_thread_id(260) |
+-------------------+
| 285 |
+-------------------+
24.4.5.16. Функция ps_thread_stack()
Параметры
in_thread_id BIGINT
: ID потока, чтобы проследить.
Значение должно соответствовать столбцу THREAD_ID
любой строки
таблицы Performance Schema threads
.in_verbose BOOLEAN
: Включать ли информацию
file:lineno
в событиях.Возвращаемое значение
LONGTEXT CHARACTER SET latin1
.Пример
mysql> SELECT ps_thread_stack(37, FALSE) AS thread_stack\G
*************************** 1. row ***************************
thread_stack: {"rankdir": "LR","nodesep": "0.10",
"stack_created": "2014-02-19 13:39:03", "mysql_version": "8.0.1-dmr-debug-log",
"mysql_user": "root@localhost","events": [{"nesting_event_id": "0",
"event_id": "10", "timer_wait": 256.35, "event_info": "sql/select",
"wait_info": "select @@version_comment limit 1\nerrors: 0\nwarnings: 0\nlock time:
...
24.4.5.17. Функция
ps_thread_trx_info()
events_transactions_current
и
events_statements_history
. Потребителям для тех таблиц нужно
позволить получить полные данные в объекте JSON.
{ "error": "Trx info truncated: Row 6 was cut by GROUP_CONCAT()" }
Подобные ошибочные объекты возвращены для других предупреждений,
и исключения подняты во время функционального выполнения.
Параметры
in_thread_id BIGINT UNSIGNED
: ID потока, для которого
нужно возвратить информацию о транзакции. Значение должно соответствовать
столбцу THREAD_ID
из некоторой строки таблицы Performance Schema
threads
.Опции
ps_thread_trx_info()
может быть изменена, используя следующие параметры конфигурации или их
соответствующие определяемые пользователем переменные (см.
раздел 24.4.2.1):ps_thread_trx_info.max_length
,
@sys.ps_thread_trx_info.max_length
.Возвращаемое значение
LONGTEXT
.Пример
mysql> SELECT ps_thread_trx_info(48)\G
*************************** 1. row ***************************
ps_thread_trx_info(48): [
{
"time": "790.70 us",
"state": "COMMITTED",
"mode": "READ WRITE",
"autocommitted": "NO",
"gtid": "AUTOMATIC",
"isolation": "REPEATABLE READ",
"statements_executed": [
{
"sql_text": "INSERT INTO info VALUES (1, \'foo\')",
"time": "471.02 us",
"schema": "trx",
"rows_examined": 0,
"rows_affected": 1,
"rows_sent": 0,
"tmp_tables": 0,
"tmp_disk_tables": 0,
"sort_rows": 0,
"sort_merge_passes": 0
},
{
"sql_text": "COMMIT",
"time": "254.42 us",
"schema": "trx",
"rows_examined": 0,
"rows_affected": 0,
"rows_sent": 0,
"tmp_tables": 0,
"tmp_disk_tables": 0,
"sort_rows": 0,
"sort_merge_passes": 0
}
]
},
{
"time": "426.20 us",
"state": "COMMITTED",
"mode": "READ WRITE",
"autocommitted": "NO",
"gtid": "AUTOMATIC",
"isolation": "REPEATABLE READ",
"statements_executed": [
{
"sql_text": "INSERT INTO info VALUES (2, \'bar\')",
"time": "107.33 us",
"schema": "trx",
"rows_examined": 0,
"rows_affected": 1,
"rows_sent": 0,
"tmp_tables": 0,
"tmp_disk_tables": 0,
"sort_rows": 0,
"sort_merge_passes": 0
},
{
"sql_text": "COMMIT",
"time": "213.23 us",
"schema": "trx",
"rows_examined": 0,
"rows_affected": 0,
"rows_sent": 0,
"tmp_tables": 0,
"tmp_disk_tables": 0,
"sort_rows": 0,
"sort_merge_passes": 0
}
]
}
]
24.4.5.18. Функция quote_identifier()
`
).Параметры
in_identifier TEXT
: Идентификатор, чтобы заключить в кавычки.
Возвращаемое значение
TEXT
.Пример
mysql> SELECT quote_identifier('plain');
+---------------------------+
| quote_identifier('plain') |
+---------------------------+
| `plain` |
+---------------------------+
mysql> SELECT quote_identifier('trick`ier');
+-------------------------------+
| quote_identifier('trick`ier') |
+-------------------------------+
| `trick``ier` |
+-------------------------------+
mysql> SELECT quote_identifier('integer');
+-----------------------------+
| quote_identifier('integer') |
+-----------------------------+
| `integer` |
+-----------------------------+
24.4.5.19. Функция
sys_get_config()
sys_config
или обеспеченное
значение по умолчанию (которое может быть NULL
), если опция
не существует в таблице.sys_get_config()
возвращает значение по умолчанию, и это значение NULL
,
ожидается, что вызывающий в состоянии обработать NULL
для данного параметра конфигурации.sys_get_config()
,
сначала проверят, существует ли соответствующая определяемая пользователем
переменная и она не NULL
. Если так, подпрограмма использует
переменное значение, не читая таблицу
sys_config
. Если переменная не существует или NULL
,
подпрограмма читает значение опции из таблицы и устанавливает определяемую
пользователем переменную в это значение. Для получения дополнительной
информации об отношениях между параметрами конфигурации и их соответствующими
определяемыми пользователем переменными см.
раздел 24.4.2.1.sys_get_config()
, Вы можете использовать
IFNULL(...)
(см. пример позже). Однако, это не должно быть
сделано в цикле (например, для каждой строки в наборе результатов), потому
что для повторных запросов, где назначение необходимо только в первой
итерации, используя IFNULL(...)
как ожидают, будет значительно
медленнее чем использование блока IF (...) THEN ... END IF;
(см. пример позже).Параметры
in_variable_name VARCHAR(128)
:
Название параметра конфигурации, для которого нужно возвратить значение.in_default_value VARCHAR(128)
: Значение по умолчанию, чтобы
возвратить, если параметр конфигурации не найден в таблице
sys_config
.Возвращаемое значение
VARCHAR(128)
.Пример
sys_config
, используя
128 как значение по умолчанию, если опция не присутствует в таблице:
mysql> SELECT sys.sys_get_config('statement_truncate_len', 128) AS Value;
+-------+
| Value |
+-------+
| 64 |
+-------+
Проверьте, установлена ли опция, в противном случае назначьте результат
IFNULL(...)
(использующий значение из таблицы
sys_config
):
mysql> SET @sys.statement_truncate_len =
-> IFNULL(@sys.statement_truncate_len,
-> sys.sys_get_config('statement_truncate_len', 64));
Пример блока IF (...) THEN ... END IF;
:
Проверьте, установлена ли опция, в противном случае назначьте значение из
таблицы sys_config
:
IF (@sys.statement_truncate_len IS NULL) THEN
SET @sys.statement_truncate_len = sys.sys_get_config('statement_truncate_len', 64);
END IF;
24.4.5.20. Функция version_major()
Параметры
Возвращаемое значение
TINYINT UNSIGNED
.Пример
mysql> SELECT VERSION(), version_major();
+---------------------+-----------------+
| VERSION() | version_major() |
+---------------------+-----------------+
| 8.0.1-dmr-debug-log | 8 |
+---------------------+-----------------+
24.4.5.21. Функция version_minor()
Параметры
Возвращаемое значение
TINYINT UNSIGNED
.Пример
mysql> SELECT VERSION(), version_minor();
+---------------------+-----------------+
| VERSION() | version_minor() |
+---------------------+-----------------+
| 8.0.1-dmr-debug-log | 0 |
+---------------------+-----------------+
24.4.5.22. Функция version_patch()
Параметры
Возвращаемое значение
TINYINT UNSIGNED
.Пример
mysql> SELECT VERSION(), version_patch();
+---------------------+-----------------+
| VERSION() | version_patch() |
+---------------------+-----------------+
| 8.0.1-dmr-debug-log | 1 |
+---------------------+-----------------+
Найди своих коллег! |
Вы можете
направить письмо администратору этой странички, Алексею Паутову.