Firebird 2.1 — Таблицы мониторинга

В ходе решения задачи с подвисанием ФБ процессов нарыто следующее описание.

Взято на: http://firebird21-database.blogspot.com/2008/08/firebird-21.html

Оригинальная документация: http://www.firebirdsql.org/rlsnotesh/rlsnotes210.html

В Firebird 2.1 появилось 7 таблиц мониторинга.Это виртуальные таблицы, с их помощью можно получить данные об активности сервера, информацию о выполняющихся запросах, активных подключениях, а так же собрать статистику базы данных Firebird. Все таблицы доступны только на чтение. Для таблицы MON$STATEMENTS можно применять оператор DELETE для отмены запросов.

MON$DATABASE
В данной таблице содержится информация о текущей базе данных:

* Путь к базе данных.
* Дата создания.
* Диалект.
* Номера транзакций.
* Размер страницы.
* Версия ODS.
* И т.п.

MON$ATTACHMENTS
В таблице отображаются активные на данные момент подключения к серверу Firebird. С помощью MON$ATTACHMENTS можно прочитать информацию о подключившемся клиенте: путь, PID процесса, имя хоста, протокол, пользователь, состояние подключения и т.д.

В релизе Firebird 2.1 таблица только на чтение. Возможность удалять зависшие коннекты из данной таблицы появится в Firebird 2.5

MON$TRANSACTIONS
Информация о запущенных транзакциях: тип, уровень изоляции, режим autocommit, состояние (idle или active), ссылка на подключение и т.п.

MON$STATEMENTS
Информация о выполняющихся и подготовленных запросах SQL и GDML. В FB 2.1 вы можете выполнить операцию DELETE над этой таблицей для отмены выполняющегося запроса:

delete from mon$statements
where mon$attachment_id <> current_connection

MON$CALL_STACK
MON$CALL_STACK — Информация об активных запросах PSQL, т.е. о выполняемых в данный момент хранимых процедурах и триггерах.

MON$IO_STATS
MON$IO_STATS — Статистика ввода вывода, число прочитанных/записанных страниц и т.п.

MON$RECORD_STATS
MON$RECORD_STATS — Статистика уровня записей: число удаленных, добавленных, вставленных записей, число записей прочитанных по индексу и последовательным перебором и т.д.

Ну и тут же родился логирующий скрипт. Написан для линукса. Оборачивается в файл .sh

#!/bin/bash
isql=/opt/firebird/bin/isql
tmp=~/tmp/log_db_system_info.tmp
db=localhost:/db/test.fdb
logPath=~/tmp

user=sysdba
password=masterkey

executeSelect ()
{
echo «$1;»  > $tmp
echo «commit;»  >> $tmp
echo «quit;»  >> $tmp

# echo $isql -i $tmp $db -u $user -p $password
echo ----- ---- — — — >> $logPath/$2.log
date +%y.%m.%Y_%H:%M:%S >> $logPath/$2.log
$isql -i $tmp $db -u $user -p $password >> $logPath/$2.log
return
}

executeSelect «select * from MON\$DATABASE» mon_database
executeSelect «select * from MON\$ATTACHMENTS» mon_attachments
executeSelect «select * from MON\$TRANSACTIONS» mon_transactions
executeSelect «select * from MON\$STATEMENTS» mon_statements
executeSelect «select * from MON\$CALL_STACK» mon_callstack
executeSelect «select * from MON\$IO_STATS» mon_iostats
executeSelect «select * from MON\$RECORD_STATS» mon_recordstats

Popularity: 93%

Метки:firebird, Работа, ремонт баз данных, скрипт

Связанные записи

Tags: , ,

22 комментария на “Firebird 2.1 — Таблицы мониторинга”

  1. бесплатные объявления пишет:

    Интересные посты — читаются на одном дыхании. Пишите больше. От души респектую.

  2. визитер пишет:

    Про Apex еще интересно, продолжайте будем ждать

  3. passwords пишет:

    А я считаю, что все это верно и очень точно подмечено!

  4. онлайн мультфильмы бесплатно пишет:

    За статью премного благодарен, все по делу, достаточно много кто это использует

  5. шерлок холмс пишет:

    Спасибо. Прочитал с интересом. Блог в избранное занес=)

  6. скачать пишет:

    Чёрт возьми! Круто!

  7. заправка картриджей lexmark пишет:

    Спасибо! Супер статья! Блог в ридер однозначно

  8. High-Tech пишет:

    Круто. Добавлю блог в избранное и друзьям посовету. Ждите новых читателей :)

  9. Экономик пишет:

    Информация бесспорно интересная. Уверен что любой читатель не сможет остаться равнодушным к тексту

  10. Бренд пишет:

    А не намекнете, где можно почитать подробнее, господа?

  11. Сонник пишет:

    Интересно и позновательно, а будет еще что-то по этой теме?

  12. сервер пишет:

    Мне кажется идея в этой статье раскрыта не до конца. Автор, может что-то добавишь к этому ?

  13. admin пишет:

    Как обычно. Документация ))

  14. alconavt пишет:

    спасибо! хороший пост! занесу ваш блог к себе в ридер :)

  15. VoIP пишет:

    Спасибо! а еще посты на эту тему будут?

  16. N-BOOKаньер пишет:

    Спасибо! а еще посты на эту тему будут?

  17. Умник пишет:

    Давно искала эту информацию, спасибо.

  18. Ученый пишет:

    Занятно-занятно, нигде раньше на такое не натыкался.

  19. Candino пишет:

    Очень интересно, но все в будущем хотелось бы еще побольше узнать об этом. Очень понравилась ваша статья!

  20. Фактор пишет:

    Да уж. В этом блоге хоть комментаторы нормальные... А то пишут обычно в комментарии ерунду всякую.

  21. Carkessence пишет:

    почему так редко блог обновляете

  22. Carkessence пишет:

    у вас нашел именно то, что искал. огромное человеческое спасибо!

Ответить

Господа. Блог переводится в режим nofollow. Адрес сайта сохраняться не будет.



анализ сайта