EMS SQL Manager for InterBase/Firebird — разрабатывайте, отлаживайте и обслуживайте базы данных InterBase и Firebird

Выполняйте хранимые процедуры и триггеры по шагам, находите транзакцию, из-за которой не выполняется сборка мусора, создавайте резервные копии с помощью gbak или nbackup, проверяйте повреждённую базу данных и выдавайте привилегии — без необходимости запоминать параметры командной строки. Одно приложение работает с Firebird до версии 5.0, InterBase до версии 15 и Firebird Embedded.

Новое в версии 7.0: ИИ-ассистент, который анализирует ваш PSQL, планы выполнения и сообщения об ошибках и работает с выбранной вами моделью — облачного провайдера или развёрнутой в вашей собственной сети.

Скачать бесплатную пробную версию

Главное окно EMS SQL Manager for InterBase для проектирования, изучения баз данных и управления ими

InterBase и Firebird: два сервера, один инструмент

У InterBase и Firebird общая история, но разные наборы возможностей. SQL Manager поддерживает особенности каждого из них, поэтому вам не нужен второй инструмент, когда вы переходите с одного сервера на другой.

ВозможностьInterBaseFirebird
Процедуры, триггеры, генераторы, исключения, домены, UDF, BLOB-фильтры✓✓
Триггеры базы данных на события подключения, отключения и транзакций—2.1+
DDL-триггеры—3.0+
Пакеты и столбцы-идентификаторы—3.0+
Сортировки ICU: без учёта регистра и диакритических знаков, числовой порядок сортировки—✓
Инкрементное резервное копированиеonline dump, 2009+nbackup, многоуровневое, 2.0+
Журналирование и восстановление на момент времени2009+ Server Edition—
Пользователи, хранящиеся внутри базы данных (Embedded User Authentication)7.5+—
Подключение к зашифрованным базам данных (System Encryption Password)✓—
Доверенная аутентификация Windows—2.1+
Встраиваемый сервер—✓
Мониторинг подключений, операторов и транзакций в реальном времени7+2.1+

Перед первым подключением функция Get Server Preferences определяет версию сервера, базу данных безопасности, подходящую клиентскую библиотеку (gds32.dll или fbclient.dll) и тип аутентификации.

Транзакции, Sweep и подключения под контролем

В InterBase и Firebird одна транзакция, оставленная открытой на несколько часов, может остановить сборку мусора, привести к росту базы данных и замедлить все запросы к затронутым таблицам. SQL Manager показывает цифры, которые это выявляют, и позволяет действовать на их основании.

Счётчики транзакций на одном экране. Монитор базы данных показывает следующую транзакцию рядом с самой старой интересующей (oldest interesting), самой старой активной и самой старой транзакцией-снимком, а также количество фиксаций, откатов, взаимоблокировок, конфликтов и состояние sweep. Увеличивающийся разрыв между следующей и самой старой активной транзакцией прямо указывает на проблему. 

Кто подключён и что выполняет. Просматривайте все подключения с указанием пользователя, роли, удалённого адреса, идентификатора процесса и количества активных транзакций, а также все операторы, выполняющиеся прямо сейчас. Из того же окна можно зафиксировать или откатить транзакцию, отменить оператор или отключить пользователя. 

Транзакции в подвешенном состоянии (in limbo). Транзакции, оставшиеся неразрешёнными после неудачной двухфазной фиксации, отображаются в мониторе; проверка базы данных может вывести их список, а при резервном копировании можно указать пропускать их. 

Особенности конкретного сервера. В Firebird можно проследить стек вызовов PSQL выполняющегося запроса вплоть до строки и столбца исходного кода. В InterBase можно увидеть, какие процедуры, триггеры и таблицы используются, со счётчиками страниц и записей, а также диаграмму пулов памяти. 

Параметры, влияющие на сборку мусора и надёжность. Изменяйте интервал sweep, принудительную запись, буферы страниц, интервал linger и режим «только для чтения» в свойствах базы данных; в InterBase также доступны групповая фиксация (group commit) и интервал освобождения (reclaim interval). 

Предупреждения до достижения лимита. InterBase и Firebird позволяют изменять структуру таблицы только 255 раз, после чего требуется резервное копирование и восстановление. Монитор изменений таблиц (Table Altering Monitor) показывает, сколько изменений уже использовано для каждой таблицы и представления. 

Оповещатели событий. Регистрируйте события, которые ваши процедуры и триггеры генерируют с помощью POST_EVENT, и наблюдайте за их поступлением в мониторе событий (Event Monitor) с отдельным счётчиком для каждого.

 

SQLManager for Interbase - Монитор базы данных

Пошаговая отладка PSQL

В PSQL нет консоли для вывода данных, поэтому без отладчика поиск ошибки в процедуре часто сводится к записи промежуточных значений в таблицу журнала. SQL Manager позволяет остановиться внутри кода и посмотреть, что происходит

Точки останова, которые умеют больше, чем просто останавливать. Задайте для точки останова условие, количество проходов или выражение, которое будет вычисляться при каждом прохождении через неё.

Просматривайте и изменяйте значения. Параметры и переменные отображаются списком с их текущими значениями; наведите курсор на имя в коде для быстрого просмотра, добавляйте наблюдаемые выражения (watches) или задавайте новое значение, в том числе NULL, чтобы принудительно перейти в другую ветку.

Следуйте по цепочке вызовов. Заходите во вложенные вызовы процедур, просматривайте стек вызовов с аргументами каждого вызова, а также последний выполненный оператор с его планом и временем выполнения и строки, которые уже вернула процедура выборки.

Не только процедуры. Отлаживайте триггеры, триггеры базы данных и SQL-функции таким же образом.

Узнайте, к чему обращается подпрограмма. Вкладка «Операции» (Operations) перечисляет все операторы SELECT, INSERT, UPDATE и DELETE внутри процедуры или триггера; щёлкните имя объекта в коде, удерживая Ctrl, чтобы открыть его в соответствующем редакторе.

SQLManager for Interbase - отладка процедур

ИИ-ассистент для PSQL, планов выполнения и ошибок

Ассистент — это чат-панель, закреплённая рядом с вашими редакторами. Собственной модели у него нет: подключите Anthropic, OpenRouter или любой OpenAI-совместимый сервис либо укажите Ollama, LM Studio или vLLM, запущенные в вашей сети.

Щёлкните правой кнопкой мыши в любом редакторе кода. В редакторах запросов и скриптов, а также в редакторах представлений, процедур, SQL-функций, триггеров и триггеров базы данных попросите ассистента объяснить, проверить, оптимизировать или переформатировать код.

Когда компиляция завершается ошибкой. Ошибка сервера и вызвавший её оператор передаются ассистенту вместе — из окна компиляции, редактора запросов или редактора скриптов — и вы получаете предлагаемое исправление.

Второе мнение о плане. Отправьте PLAN запроса, чтобы получить список узких мест и рекомендации.

Схема, а не данные. Добавьте в запрос DDL объекта или целой ветви дерева DB Explorer. Размер всего приложенного отображается в токенах до отправки, а строки таблиц никогда не покидают ваш компьютер.

Сравнение изменений до их применения. Предложение, заменяющее код в редакторе, открывается рядом с текущим текстом с подсветкой различий и применяется только после вашего подтверждения.

 

Почему запрос медленный: планы выполнения, чтение по индексам и селективность

План в виде дерева. Вкладка «План» (Plan) показывает, как сервер выполняет запрос: задействованные операции, таблицы, псевдонимы и поля. Её можно открывать автоматически после каждого выполнения, экспортировать план или отправлять его ИИ-ассистенту. У представлений есть собственная вкладка «План».

Чтение по индексу и без индекса для каждой таблицы. Анализ производительности (Performance Analysis) показывает на диаграммах для каждой таблицы запроса, сколько записей прочитано через индекс, а сколько полным сканированием, а также количество вставок, обновлений и удалений, время выполнения и объём памяти. Таблица с тысячами чтений без индекса — это место, где индекса не хватает или он не используется.

Поддерживайте селективность индексов в актуальном состоянии. Оптимизатор выбирает планы на основе селективности индексов, а после массовых загрузок или удалений она устаревает. Пересчитайте её с помощью SET STATISTICS для выбранных или всех индексов, включая системные, либо перестройте индексы, деактивировав и снова активировав их.

Статистика базы данных без gstat. Собирайте статистику заголовочной страницы, индексов, таблиц и системных таблиц с помощью мастера и сохраняйте отчёт в файл.

Большие таблицы остаются отзывчивыми. Загружаются только видимые строки, а сортировка и фильтрация выполняются на сервере, а не в сетке.

SQLManager for Interbase - анализ производительности

Резервное копирование, восстановление и ремонт

Все методы резервного копирования обоих серверов доступны из одного мастера — через Services API сервера или локальные утилиты, при этом файл резервной копии может храниться на сервере или на вашем компьютере.

Тип резервной копииСерверКак это работаетПараметры восстановления
Полная резервная копия (gbak)InterBase, FirebirdЛогическая копия метаданных и данных; переносима между платформамиВ новую или существующую базу данных; изменение размера страницы (до 16 КБ) и коэффициента заполнения; восстановление с деактивированными индексами
Многоуровневая инкрементная резервная копия (nbackup)Firebird 2.0+Физическая копия изменённых страниц; уровни 0, 1, 2…Выбор непрерывной цепочки уровней из истории резервного копирования
Online dumpInterBase 2009+Физический дамп, создаваемый во время работы пользователей; может обновляться только изменениямиВ исходный или новый файл базы данных
Архив журналаInterBase 2009+Дамп базы данных плюс файлы журналаВосстановление базы данных на выбранные дату и время

 

  • Имена файлов резервных копий с датой. Добавьте [Timestamp], [Date] или [Time] в имя файла, сожмите резервную копию и сохраните настройки мастера как шаблон, чтобы повторять задание в несколько щелчков.
  • Параметры gbak для сложных случаев. Создавайте резервную копию только метаданных, игнорируйте неверные контрольные суммы или транзакции в подвешенном состоянии (in limbo) при спасении повреждённой базы данных и решайте, выполнять ли сборку мусора во время резервного копирования.
  • Проверка и ремонт. Запустите проверку только для чтения либо исправьте структуры и фрагменты записей, подготовьте повреждённую базу данных к резервному копированию, удалите недоступные файлы теневых копий и очистите старые версии записей (sweep) — с записью журнала в файл.
  • Отключение и возврат в онлайн. Переводите базу данных в автономный режим принудительно, с запретом новых транзакций или с запретом новых подключений и с заданным тайм-аутом, а затем возвращайте её в онлайн. Мастера резервного копирования, восстановления, проверки, статистики и индексов могут делать это за вас до и после выполнения задания.
  • Безопасная очистка больших таблиц. Удаляйте данные таблицы, пока триггеры деактивированы на время операции, а правила удаления внешних ключей временно изменены, после чего пересчитываются статистика индексов и выполняется sweep базы данных.

Пользователи, роли и привилегии

  • Пользователи сервера. Добавляйте, изменяйте и удаляйте пользователей базы данных безопасности сервера в менеджере пользователей (User Manager).
  • Пользователи внутри базы данных. В InterBase 7.5 и более поздних версий управляйте учётными записями Embedded User Authentication с ролью по умолчанию, флагом активности и флагом владельца базы данных.
  • Роли и их участники в менеджере ролей (Role Manager).
  • Менеджер привилегий (Grant Manager). Выдавайте привилегии не только пользователям и ролям, но и представлениям, триггерам и процедурам: SELECT, INSERT, UPDATE, DELETE и REFERENCES для таблиц и представлений, вплоть до отдельных столбцов; EXECUTE для процедур; USAGE для генераторов и исключений; CREATE, ALTER и DROP для целых типов объектов. Отфильтруйте список, чтобы показать только объекты с выданными привилегиями.
  • Защищённые подключения. Подключайтесь к серверу через SSH-туннель или по SSL с клиентским сертификатом; в Firebird 2.1 и более поздних версий входите с использованием аутентификации Windows.
SQLManager for Interbase - менеджер привилегий

Запросы, данные и скрипты

  • Редактор запросов. Несколько запросов на вкладках, автодополнение кода, ссылки на объекты, параметры с историей использованных значений, журнал выполненных запросов со временем выборки, избранные запросы, хранящиеся в базе данных или на вашем компьютере, а также фиксация или откат транзакции по вашей команде.
  • Визуальный конструктор запросов с соединениями, UNION, подзапросами, выражениями CASE и условиями HAVING — для операторов SELECT, INSERT, UPDATE и DELETE.
  • Скрипты любого размера. Запускайте скрипт прямо из файла, не открывая его, переходите по его операторам с помощью обозревателя скриптов (Script Explorer) и отключайте разбор, чтобы ускорить выполнение.
  • Главная-подчинённая таблица в одной сетке. Открывайте связанные таблицы как вложенные уровни сетки, построенные по внешним ключам, переключайтесь в режим карточек, добавляйте итоги по столбцам и редактируйте BLOB как текст, форматированный текст, изображения, HTML или шестнадцатеричные данные.
  • Импорт и экспорт. Файлы Excel, Access, Word, RTF, HTML, PDF, CSV, TXT, XML, DBF и ODF с возможностью использовать шаблоны повторно; режимы импорта — от вставки всех записей до обновления или вставки.
  • Перенос данных на другой сервер. Экспортируйте данные таблицы в виде SQL-скрипта для DB2, SQL Server, MySQL, Oracle или PostgreSQL, при необходимости с оператором CREATE TABLE.

При покупке Вы получите также:

  • БЕСПЛАТНАЯ подписка на 1 год Сопровождения!
  • БЕСПЛАТНЫЕ Минорные и Мажорные обновления в период действия Обслуживания!
  • БЕСПЛАТНАЯ неограниченная техническая поддержка в период действия Сопровождения!
  • Разумные расценки на продление Сопровождения – всего от 35% в год!
  • Скидки при покупке двух и более лицензий одного продукта
  • Скидки на покупку сопутствующих продуктов
  • Гарантия возврата денег в течение 30 дней

Лицензии и Цены

Подписка — регулярные платежи, месячные или годовые. Обновления и техподдержка включены, пока активна подписка.

Лицензии Business

Подписка на 1 месяц
₽1 200 /мес
без НДС
Подписка на 1 год −17%
₽12 000 /год
без НДС

Частные лица и НКО

Подписка на 1 месяц
₽800 /мес
без НДС
Подписка на 1 год −17%
₽7 990 /год
без НДС

Постоянная лицензия — купите один раз и пользуйтесь программой всегда. Каждый вариант ниже включает 1–3 года сопровождения (обновления + поддержка). Выберите подходящий срок — продлить можно в любой момент.

Лицензии Business

1 год сопровождения включен
₽24 960
без НДС
2 года сопровождения включено −30%
₽34 944
без НДС
3 года сопровождения включено −43%
₽42 432
без НДС

Частные лица и НКО

1 год сопровождения включен
₽13 440
без НДС
2 года сопровождения включено −30%
₽18 816
без НДС
3 года сопровождения включено −43%
₽22 848
без НДС

SQL Manager for InterBase/Firebird

Начните работу с SQL Manager for InterBase/Firebird

Скачайте полнофункциональную 14-дневную бесплатную пробную версию и уже сегодня начните экономить время при управлении базами данных.

Скачать бесплатную пробную версию

Есть вопросы?

Если вам требуется какая-либо помощь, если у вас есть вопросы по нашим продуктам или по вариантам приобретения, просто свяжитесь с нами.

SQL Manager является частью SQL Management Studio

Выполняйте еще больше задач по разработке, администрированию и обслуживанию вашей базы данных, экономя до 55%!

Узнать подробнее

Сопутствующие продукты