Дефрагментация внутренней базы данных для повышения быстродействия

По мере роста количества установленных экземпляров IBM Traveler и продолжительности их работы растет и внутренняя база данных. Это может сказаться на быстродействии системы. Для сжатия базы данных и оптимизации быстродействия можно выполнить дефрагментацию.

Функция дефрагментации может выполняться только во время начальной загрузки. Ниже указан порядок ее выполнения. В IBM Traveler 8.5.2.2 и более поздних выпусках команда defrag будет выполняться автоматически во время миграции базы данных при обновлении сервера. Для достижения оптимального функционирования системы рекомендуется выполнять дефрагментацию хотя бы раз в месяц.

Что такое внутренняя база данных IBM Traveler?

IBM Traveler хранит информацию о состоянии каждого устройства в базе данных Derby. Эта информация включает сведения об устройстве, его защите, а также данные, уведомляющие сервер IBM Traveler о необходимости синхронизации. Файлы этой базы данных хранятся в системе IBM Traveler в каталоге data\traveler\ntsdb. Для выяснения требуемой частоты дефрагментации можно проверять размер этой папки и отслеживать изменения в ней.
Важное замечание: Не удаляйте папку ntsdb в системе. Удаление информации о состоянии приведет к повторной синхронизации данных всех пользователей, а вы потеряете все данные о защите (в частности, сведения обустройствах, доступ которых был отклонен, очищенных устройствах или документах, исключенных из синхронизации).

Выполнение дефрагментации

Для проведения дефрагментации выполните следующие действия:
  1. Завершите на сервере задачи IBM Traveler и Domino HTTP на сервере.
    tell traveler quit
    tell http quit
  2. Убедитесь, что процессы HTTP и Traveler полностью остановлены.
  3. Запустите IBM Traveler с параметром defrag
    load traveler -defrag
  4. При запуске сервера будет выполнена команда defrag. Обычно сервер запускается после завершения операции defrag.
    Прим.: Операция дефрагментации может занять более получаса - это зависит от размера базы данных и от возможностей системы.
  5. Если IBM Traveler не запускает задачу Domino HTTP автоматически, то запустите ее вручную с помощью следующей команды.
    load http

Проведение дефрагментации по расписанию (версия 9.0.1.8 и выше)

Для выполнения дефрагментации по расписанию выполните следующие действия:
  1. С помощью команды tell DBMaint set interval укажите интервал больше 0. Например, следующая команда позволяет указать интервал 30 дней:
    tell traveler dbmaint set interval 30
  2. Команда tell DBMaint set auto on позволяет включить автоматическую дефрагментацию.
  3. Для выполнения дефрагментации в принудительном режиме, выполните команду tell traveler dbmaint run. При этом параметру NTS_DEFRAG_ONCE присваивается значение 1 и база данных Derby будет дефрагментирована при следующем запуске сервера IBM Traveler.

Проведение дефрагментации по расписанию (8.5.3.1 - 9.0.1.7)

Для настройки регулярной дефрагментации с помощью сервера IBM Traveler 8.5.3.1 - 9.0.1.7 выполните следующие действия:
  1. Добавьте NTS_DEFRAG_INTERVAL_DAYS в файл notes.ini. Например, для задания интервала в 30 дней добавьте:
    NTS_DEFRAG_INTERVAL_DAYS=30
  2. Перезапустите сервер IBM Traveler. Начиная с этого момента, если сервер IBM Traveler перезапускается и с прошлой дефрагментации прошло 30 дней, то выполняется операция defrag.
  3. Для принудительного выполнения дефрагментации просто удалите параметр NTS_LAST_DEFRAG из файла notes.ini и перезапустите сервер. Если параметр NTS_DEFRAG_INTERVAL_DAYS задан и информация о последней дефрагментации отсутствует, то сервер выполнит дефрагментацию и сбросит параметр NTS_LAST_DEFRAG. Сведения о том, как спланировать дефрагментацию базы данных в версиях ниже 8.5.3.1, приведены в разделе Дефрагментация базы данных IBM® Traveler для повышения производительности.