Эта страница переведена машинным переводом. Читайте английский оригинал. English

IBSurgeon Free Tools - это набор из трех утилит для Windows для администраторов Firebird и InterBase: измерение времени отклика запросов, проверка заполнения файла базы данных и чтение длинных серверных журналов. Набор бесплатен, а также входит в состав HQbird Standard.

Что входит в набор

Response Checker

Запускайте реальный SELECT по расписанию и стройте графики среднего и пикового времени отклика, чтобы видеть, когда база данных работает медленно.

DBInfo

Читает файл базы данных (сервер не требуется) и показывает, сколько места занимают данные, индексы, BLOB-поля и другие типы страниц, а также выявляет поврежденные страницы.

Log Viewer

Открывает длинные файлы firebird.log / interbase.log, позволяет перемещаться по записям и выявлять пики и ошибки проверки целостности.

Response Checker

Конечные пользователи говорят «медленно» или «достаточно быстро» - это и есть время отклика. Измеряйте его с помощью тяжелого SELECT из вашего реального приложения, выполняемого на рабочей базе или близкой к ней тестовой копии. Абстрактные тесты без этого запроса не покажут, когда ждут ваши пользователи.

Response Checker выполняет этот запрос через заданные интервалы, записывает продолжительность каждого выполнения и строит график, чтобы вы могли видеть периоды замедления. Сопоставьте эти окна со статистикой HQbird (IBAnalyst, мониторинг транзакций, трассировка), чтобы найти причину. Для полного решения обратитесь к сервису оптимизации.

  1. Запустите IBSurgeon → FreeTools → IBSurgeon Response Checker.
  2. Вставьте реальный SELECT (не INSERT/UPDATE/DELETE).
  3. Задайте интервал (по умолчанию 10 секунд) и количество сохраняемых точек (по умолчанию 17 280 ≈ 48 часов).
  4. Включите Отключаться после каждой проверки, чтобы каждый запуск использовал новое соединение, что ближе к поведению конечного пользователя.
  5. Нажмите Начать проверку и выберите базу данных. Наблюдайте за графиком, чтобы увидеть периоды замедления.

Результаты хранятся только в рамках текущего сеанса: нажмите Остановить проверку, затем снова Начать проверку, чтобы очистить предыдущий запуск.

IBSurgeon Response Checker с запросом SELECT и интервалом проверки
Запрос, интервал и опция отключения.
График времени отклика запросов Firebird в Response Checker
Временная шкала времени отклика - периоды замедления хорошо видны.

DBInfo

DBInfo открывает файл базы данных напрямую (только для чтения, без клиентской библиотеки) и показывает размер страницы, размер файла, формат ODS и соотношение страниц данных, индексов, BLOB-полей и других типов. Красный цвет на диаграммах означает поврежденные страницы, а не «интересный» процент BLOB-полей - остальные цвета носят лишь визуальный характер.

IBSurgeon DBInfo, показывающий процентное соотношение типов страниц в базе данных Firebird или InterBase
Соотношение типов страниц и размер - с первого взгляда.
Какие версии поддерживаются?
InterBase 4.0 и все последующие версии InterBase, а также Firebird начиная с 1.0. Утилита читает файл; сервер запускать не требуется.
Удаленный сервер или Linux?
Windows Win32. Файл должен быть доступен локально или через сетевую папку (возможно использование Wine). Утилита не может взаимодействовать с удаленным сервером по протоколу Firebird.
Можно ли использовать, пока сервер работает?
Да, но полное сканирование файла нагружает диск - избегайте пиковых нагрузок. Если файл в этот момент записывается, DBInfo может выдать ложное предупреждение о повреждении.
Может ли утилита записывать или повредить файл?
Нет. Файл открывается только для чтения.
Обнаружены поврежденные страницы?
Запустите gfix и FirstAID Diagnostician и отправьте журнал на [email protected]. Мы можем восстановить базу с помощью сервиса восстановления, или вы можете приобрести лицензию FirstAID.
Место по таблицам или индексам?
Используйте IBAnalyst (входит в HQbird Standard) для статистики по отношениям и рекомендаций по настройке.
«Не использовать файловый кэш Windows»?
Включено по умолчанию. Кэширование сканирования файла размером в несколько гигабайт может вытеснить другие процессы в виртуальную память. Отказ от кэша предотвращает замедление всей системы при сканировании больших файлов (1-100 ГБ).

Log Viewer

firebird.log / interbase.log часто остаются непрочитанными, хотя именно они объясняют зависания, ошибки ввода-вывода и ошибки ядра. Log Viewer был создан внутри компании для навигации по очень длинным журналам; в версии 2.0 появились описания записей для сообщества.

Откройте журнал из папки Firebird (обычно C:\Program Files\Firebird\Firebird_n_n\). Следите за количеством записей в день - всплеск является подсказкой - затем обращайте внимание на необычные строки, особенно internal gds consistency check или internal Firebird consistency check.

IBSurgeon Log Viewer, показывающий записи журнала Firebird с описаниями
Навигация по длинным журналам и чтение описаний известных записей.

Если что-то выглядит неправильно, отправьте письмо на [email protected] и приложите журнал.