Миграция хранилища Jazz после обновления Jazz Team Server

Миграция хранилища - это процесс преобразования содержимого базы данных из одного формата в другой. Миграция хранилища требуется в случае обновления Jazz Team Server версии X до версии Y, если версия Y содержит изменения схемы.

Прежде чем начать

Если версии Jazz Team Server содержат разные схемы, то требуется миграция данных. Предварительно необходимо распаковать сжатые файлы Jazz Team Server версий X и Y.

Об этой задаче

Как правило, миграция данных состоит из двух этапов:

диаграмма миграции хранилища

Операции экспорта и импорта можно выполнить с помощью приложения repotools.
Прим.: В процессе миграции хранилища сервер Jazz Team Server должен быть остановлен. В зависимости от конфигурации системы, операционной системы, базы данных и других параметров миграция может занять продолжительное время. Рекомендуется предварительно выбрать время простоя.

Миграция каталога всего текста

Jazz Team Server управляет каталогом, расположенным вне базы данных, в котором хранятся все данные, необходимые для обработки запросов ко всему тексту. Расположение этого каталога указано в файле teamserver.properties в свойстве com.ibm.team.fulltext.indexLocation. Для применения предыдущего каталога, на основе которого был создан индекс, в ходе миграции базы данных необходимо указать в параметре -rebuildTextIndices то же расположение, которое использовал сервер. При запуске сервера или выполнении команды -rebuildTextIndices в файлах протоколов регистрируется полный путь к каталогу всего текста. Оба каталога можно сравнить в файле протокола сервера и в файле протокола repotools_rebuildTextIndicies.
Совет: Если в файле teamserver.properties указан относительный путь к каталогу, то в файл протокола будет добавлено предупреждение. В этом свойстве рекомендуется указать полный путь к каталогу.
Дополнительная информация о создании индекса по всему тексту приведена в разделе -rebuildTextIndices.

Выполнение миграции Jazz Team Server может занять продолжительное время в зависимости от размера обрабатываемых данных. Ниже приведены рекомендации, позволяющие избежать общих неполадок.

Операционная система:
  • В Windows® убедитесь, что переключатель "записывать кэш на диск" включен для всех задействованных дисков
  • В Windows отключите переключатель "Служба индексации Windows"
  • Убедитесь, что временный каталог, база данных и файл .tar расположены на самом быстром диске.
  • В случае Linux® (для DB2) убедитесь, что вы правильно настроили ядро, в соответствии с инструкциями из административного раздела DB2: http://publib.boulder.ibm.com/infocenter/db2luw/v9r5/topic/com.ibm.db2.luw.qb.server.doc/doc/t0008238.html
Настройка Jazz Team Server:
  • Настройте следующие свойства (в файле teamserver.properties) для обеспечения доступа к самому быстрому диску:
    com.ibm.team.repository.tmpdir
    com.ibm.team.scm.vcs.tmpdir
    com.ibm.team.scm.tmpdir
    com.ibm.team.fulltext.indexLocation
DB2:
  • По умолчанию DB2 пытается увеличить размер пула буфера до необходимого значения. Если вы не отключили эту опцию, то DB2 должен работать без каких-либо модификаций.
  • Для проверки пула буферов выполните следующие действия:
    1. Подключитесь к базе данных Jazz, в которую вы хотите импортировать, введя следующую команду в командной строке:
      db2 connect to <имя-базы-данных> 
    2. Затем выполните следующую команду:
      db2 "select bufferpoolid, bpname from syscat.bufferpools"
      Будет показан идентификатор пула буферов в следующем формате:
      BUFFERPOOLID BPNAME
      ------------ ----------------------------------
                 1 IBMDEFAULTBP
      
        Выбрано записей: 1.
    3. В предыдущем примере пулу буферов присвоен идентификатор 1. Затем выполните следующую команду:
      db2mtrk -d
      Будет показана информация, аналогичная следующей:
      Tracking Memory on: 2009/06/04 at 22:19:17
      
      Memory for database: <имя-базы-данных>
         utilh pckcacheh other catcacheh bph (1) bph (S32K)
         64.0K       384.0K      128.0K      128.0K      95.4M       832.0K
      
         bph (S16K) bph (S8K) bph (S4K) shsorth lockh dbh
         576.0K      448.0K      384.0K      64.0K       2.5M        20.8M
      
         apph (269)  apph (268)  apph (267)  apph (266)  apph (265)  apph (262)
         64.0K       64.0K       64.0K       64.0K       64.0K       64.0K
      
         appshrh
         128.0K
      Полужирным выделен размер пула буферов базы данных.
Oracle:
  • Выключите корзину (корзина отслеживает все удаляемые элементы, расходует дисковую память и может вызвать неполадки). Выполните следующие команды с помощью sqlplus:
    "ALTER SYSTEM SET RECYCLEBIN" = 'OFF' 
    "PURGE RECYCLEBIN"
  • Выключите функцию сохранения хронологии статистики - она отслеживает выполнение предыдущих методов:
    "exec dbms_stats.ALTER_STATS_HISTORY_RETENTION (0)"
    "exec dbms_stats.PURGE_STATS ( current_timestamp )"
  • Убедитесь, что табличное пространство Oracle занимает только один файл.

Для того чтобы запустить миграцию выполните следующие действия:

Процедура

  1. Остановите Jazz Team Server версии X. Для того чтобы остановить Jazz Team Server, запустите server.shutdown.sh в Linux или server.shutdown.bat в Windows, включенный в [installDir]/jazz/server.
  2. Создайте резервную копию хранилища Jazz. Резервное копирование - это мера предосторожности на случай неполадок в ходе миграции.
    1. В случае Derby создайте архивную копию всего каталога базы данных.
    2. В случае DB2 с помощью команды резервного копирования DB2 создайте архивный файл с информацией о дате и времени в указанном целевом каталоге.
  3. Создайте резервную индекса всего текста. Расположение индекса указано в свойстве com.ibm.team.fulltext.indexLocation в файле teamserver.properties.
  4. Экспортируйте данные из хранилища с помощью команды repotools. Сценарии repotools.sh для Linux и repotools.bat для Windows содержатся в каталоге [installDir]/jazz/server.

    Пример: repotools -export toFile=./file_name.tar

    Прим.: Информационные сообщения и сообщения об ошибках отображаются на консоли и в файле протокола. Файл протокола содержит информацию о числе экспортированных элементов, времени экспорта элементов, ошибках и другую важную информацию. Файл протокола по умолчанию создается в том же каталоге, в котором расположен сценарий repotools. Расположение файла протокола можно изменить с помощью параметра logFile.
    Содержимое хранилища экспортировано в файл TAR.
  5. Скопируйте файл teamserver.properties из каталога [установочный-каталог]/jazz/server версии of X в каталог [установочный-каталог]/jazz/server версии Y.
  6. В версии Y запустите команду repotools для импорта данных из файла TAR в хранилище.
    Пример: repotools -import fromFile=./file_name.tar
    Важное замечание: Перед запуском инструмента импорта необходимо создать новую базу данных (если не применяется база данных Derby).
    Прим.: Параметр -import позволяет регистрировать информацию об импортированных и пропущенных элементах, а также об ошибках в ходе импорта.

Дальнейшие действия

Теперь можно запустить Jazz Team Server версии Y.

Комментарии