11.8.1 Утилита collectDiagnostics
Утилита отладки и диагностики util.debug.collectDiagnostics() позволяет собирать диагностические данные о вашем сервере MySQL.
О утилите
Диагностический отчет генерируется в виде файла zip в локальный каталог или указанный путь.
util.debug.collectDiagnostics() позволяет собирать необработанные диагностические данные с автономных серверов, членов топологий репликации, InnoDB кластеров и систем баз данных MySQL HeatWave Service.
Утилита генерирует файлы в формате TSV и YAML.
Требования и ограничения
Следующие требования применяются к экспорту с помощью утилиты сбора диагностики:
Требуется MySQL 5.7 или более поздняя версия.
Утилита должна запускаться от имени root.
Запуск утилиты
Утилита диагностики имеет следующий синтаксис:
util.debug.collectDiagnostics("path/",{options})-
": вы можете указать путь, имя файла или путь и имя файла.path"Если имя файла не указано, файл записывается в указанное местоположение и используется имя файла
mysql-diagnostics-.YYYYMMDD-HHMMSS.zipЕсли имя файла указано без пути, файл записывается в текущий каталог.
-
options: словарь опций, который можно опустить, если он пустой. Смотрите Параметры для сбора диагностики для доступных опций.Если опции не определены, утилита генерирует набор по умолчанию диагностических данных. Каждая опция добавляет один или несколько отчетов в выходные данные.
Следующий пример, запущенный 6 апреля 2022 г. в 10:02:06, генерирует набор диагностических данных по умолчанию, mysql-diagnostics-20220406-100206.zip, в каталоге C:/Temp/:
util.debug.collectDiagnostics("C:/Temp/") Следующий пример генерирует набор диагностических данных по умолчанию в файл под названием myDiagnostics.zip в каталоге C:/Temp/:
util.debug.collectDiagnostics("C:/Temp/myDiagnostics.zip") Конечный слеш (/) необходим для определения пути. Если вы его опустите, утилита создаст файл под названием Temp.zip в указанном пути. C:/Temp.zip, например. Перезапись существующего файла невозможна.
Информация о хосте (host_info) собирается только с localhost. Нет возможности собрать информацию о хосте с удаленного хоста. Если ваш сервер MySQL работает на удалённом хосте, собирается только информация о сервере MySQL.
На платформах Microsoft Windows информация о хосте собирается с помощью утилиты MSInfo. Это вызывает дополнительное диалоговое окно выполнения, пока утилита работает.
Параметры для сбора диагностики
-
allMembers: [true|false] -
Значение по умолчанию
false. Если установлено вtrue, генерирует диагностику для всех членов управляемой топологии, такой как InnoDB Cluster, и посылает запрос ping каждому члену топологии. Каждая диагностика префиксна числом, 1 (один) для сервера, к которому подключена MySQL Shell, и увеличивается для каждого обнаруженного члена.Результаты ping (
ping.txt) генерируются только в том случае, если Shell подключен к члену топологии на локальном хосте. Нет возможности запросить результаты ping с удаленного хоста.allMembers: trueне создает дополнительных отчетов. Все собранные данные включаются в стандартные отчеты. -
innodbMutex: [true|false] -
Значение по умолчанию
false. Если установлено вtrue, собирает вывод .Эта опция генерирует следующие дополнительные отчеты:
innodb_mutex: отображает вывод .
ПримечаниеЭта опция может повлиять на производительность.
-
schemaStats: [true|false] -
Значение по умолчанию
false. Если установлено вtrue, собирает статистику размера схемы.Эта опция генерирует следующие дополнительные отчеты:
schema_object_overview: отображает содержимое представления.top_biggest_tables: отображает самые большие таблицы на подключенном сервере и показатели низкой производительности.
-
slowQueries: [true|false] -
Значение по умолчанию
false. Если установлено вtrue, собирает информацию о медленных запросах из .Для этой опции требуется включить
slow_logна целевом сервере и настроить его вывод наTABLE.Эта опция генерирует следующие дополнительные отчеты:
slow_log: отображает содержимое таблицыmysql.slow_log.
-
ignoreErrors: [true|false] Значение по умолчанию
false. Если установлено вtrue, игнорирует любые ошибки, сгенерированные запросами, используемыми для генерации диагностических отчетов.-
customSql:array -
Одна или несколько SQL-команд для выполнения.
Например:
{"customSql": ["statement1", "statement2", "statement3"]} -
customShell:array -
Одна или несколько команд оболочки (DOS, BOURNE и т. д.) для выполнения.
Например:
{"customShell": ["command1", "command2", "command3"]}ВажноЭти команды выполняются с привилегиями пользователя, запускающего MySQL Shell, и должны использоваться с осторожностью.
© 2025 Oracle
Licensed under the GPLv2 License.