Книга: Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil
Получение статистики
Получение статистики
Существует много способов получить статистику Почти все универсальные инструменты, перечисленные в приложении "Инструменты администратора и разработчика InterBase", позволяют получить статистику базы данных с помощью нескольких нажатий мыши, однако часто случается так, что нужных инструментов не оказывается под рукой; поэтому мы рассмотрим, как получить результат, пользуясь только стандартными средствами. К таковым относится утилита командной строки gstat, которая входит в стандартную поставку InterBase 6.x и его клонов и позволяет получить вес вышеперечисленные виды статистики. Правда, есть важное ограничение - gstat должна выполняться на том же компьютере, где находится сервер InterBase, т. е. удаленное получение статистики при помощи gstat невозможно.
Формат использования gstat следующий:
gstac [options] database
Здесь database - имя и путь к базе данных, из которой будет извлекаться статистика, a [optionsj - набор опций, которые определяют, какую информацию на- ю получить Опции утилиты gstat описаны в таблице 4.12:
Табл 4.12. Опции gstat
Опция |
Описание опции |
-all |
Опция выбирается по умолчанию - приводит к извлечению статистики по страницам данных и индексам |
-data |
Извлекает статистику по страницам данных всех пользовательских таблиц в базе данных |
-header |
Извлекает только статистику заголовочной страницы |
-index |
Извлекает статистику по индексам в базе данных |
-log |
Извлекает только статистику о страницах протокола |
-password] |
Пароль пользователя, который запускает gstat для получения статистики |
-system |
Извлекает статистику по системным таблицам и индексам |
-user name |
Пользователь InterBase, который запускает gstat для получения статистики Только владелец базы данных или системный администратор SYSDBA может запускать gstat для получения статистики |
-z |
Печатать версию gstat |
Помимо использования утилиты gstat, статистику всегда можно получить, применяя Sen ices API, который реализован во всех версиях InterBase 6.x и его клонов в варианте SuperServei, а также в клоне Yaffil Classic Server. Воспользоваться Services API можно как на низком уровне, так и посредством специализированных библиотек доступа к InterBase, таких, как FIBPlus и IBX. При использовании Services API нет ограничения на то, чтобы клиент, запрашивающий статистику, обязательно находился на компьютере-сервере.
В наших примерах мы будем использовать утилиту gstat, как наиболее надежный и стандартный способ получения статистики. Пример получения полной статистики базы данных выглядит следующим образом:
gstat -all -user SYSDBA -password masterkey
С:Databasefirstbase.gdb
При этом будет выведена как общая информация о базе данных, так и подробная информация о таблицах в базе данных. Надо сказать, что результатом выполнения этой команды даже для небольшой базы данных будет довольно обширный отчет. Давайте более подробно рассмотрим информацию, извлекаемую утилитой gstat.
- Получение статистики
- Информация заголовочной страницы (Database header)
- Flags
- Checksum
- Generation
- Page size
- ODS version
- Oldest transaction
- Oldest active и Oldest snapshot
- Next transaction
- Bumped transaction
- Sequence number
- Next attachment ID
- Implementation ID
- Shadow count
- Page buffers
- Next header page
- Database dialect
- Creation date
- Attributes
- Shared Cache file
- Sweep interval
- Информация страниц данных
- Статистика страниц индексов
- Примеры получения статистики
- Получение статистики браузера
- 5.4. Получение информации о файлах
- 6.1.5. Получение сведений о часовом поясе
- Получение исходного кода ядра
- Использование статистики
- Глава 26. Получение повторных отзывов
- 10.13.6 Пример статистики
- 13.7. Получение ресурсов из библиотеки ресурсов
- 13.6. Получение фото и видео из библиотеки фотографий
- 8.14. Функция sysinfo(): получение системной статистики
- Получение статистики по индексу