Если в процессе развертывания артефактов репликации обнаружена ошибка.
Следует отменить действия, выполненные в процессе развертывания отдельной
модели бизнес-величин, чтобы отменить все изменения.
Каждое развертывание выполняется в несколько этапов.
Далее описан типичный сценарий:
- Развертывание DDL
- Разверните state.ddl.
- Разверните runtime.ddl.
- Разверните datamart.ddl.
- Развертывание служб перемещения данных
- Разверните Источник_установки_службы_Из_базы_данных_состояний_в_рабочую_базу_данных.
- Разверните Приемник_установки_службы_Из_базы_данных_состояний_в_рабочую_базу_данных.
- Разверните Источник_установки_службы_Из_рабочей_базы_данных_состояний_в_базу_данных_хронологии.
- Разверните Приемник_установки_службы_Из_рабочей_базы_данных_состояний_в_базу_данных_хронологии.
Для определения необходимого действия следует определить,
в какой точке произошел сбой. Например, если произошел сбой state.ddl, тогда
для возврата в исходного состояние достаточно простого отката транзакции.
Однако в случае сбоя datamart.dll откат datamart.ddl вернет систему только
к моменту после успешного выполнения runtime.ddl.
Восстановление после сбоев в середине процесса развертывания служб
перемещения данных выполняется сложнее всего, однако не является
невозможным. Легче всего выполнить восстановление из первых развертываний,
далее следуют развертывания новых моделей и, наконец, развертывания
измененных моделей - самый сложный путь восстановления.
Восстановление после ошибок развертывания сценариев репликации включает в себя: определение, резервное копирование, восстановление или удаление и повторное развертывание.
Определение- Определите, какие произошли ошибки, и следует ли обращаться в службу поддержки IBM Support.
- Определите модель бизнес-величин, которая развертывалась на момент
возникновения ошибки.
- Определите таблицы, которые создавались или изменялись генератором схемы при возникновении ошибки.
- Определите артефакты, которые создавались или изменялись генератором схемы при
возникновении ошибки.
- Определите
последнюю верную версию модели бизнес-величин. в базе данных хранилища.
- Определите,
в случае развертывания управления изменениями, расположение артефактов,
которые были развернуты для предыдущих версий модели. Это обеспечит
структуры базы данных, их описания и взаимосвязи. Это может оказаться
важным в том случае, если требуется выполнить резервное копирование
данных и их восстановление в дальнейшем.
- Определите расположение текущих артефактов и файлов протоколов развертывания.
Эта информация важна для определения неполадок и, возможно, потребуется для
предоставления в службу поддержки
IBM Support.
- Определите, в случае развертывания управления изменениями, имеются ли
еще не обработанные данные в какой-либо из таблиц CCD. Для определения таблиц
CCD
(TGT_RM_APP_STG_TAB_NAME) с
именем проекта модели бизнес-величин
(OM_NAME) можно
использовать развернутую таблицу
WBIRMADM.RMMETADATA
(доступна в рабочей базе данных и базе данных хронологии). Строки, помеченные I или
U, могут еще
остаться необработанными, и следует выполнить их резервное копирование.
В поле SERVICE_NAME
содержится расположение таблицы CCD и целевой таблицы. На это указывает
имя после слова to.
Следует сохранить дорожку взаимосвязей к TGT_TAB_NAME
в том случае, если принято решение о полном удалении всех артефактов и
о создании совершенно нового набора. Это необходимо, генератор схемы не
может сгенерировать те же имена для таблиц CCD, и потребуется восстановление
этих данных в новые таблицы CCD после успешного развертывания.
Восстановление или удаление - Определите, будет ли проще восстановить предыдущую базу данных или удалить артефакты
вручную.
- Восстановление
Восстановление из резервной копии является хорошим решением в том случае, если
не существует других моделей бизнес-величин либо когда другие модели
бизнес-величин не активны. Восстановите предыдущий набор баз данных и для каждой базы
данных повторно присвойте соответствующие приложения, а также повторно
зарегистрируйте все основанные на Java хранимые процедуры и пользовательские
функции.
Прим.: - Дополнительная информация о резервном копировании и восстановлении базы
данных приведена в разделе Восстановление данных в документации
DB2.
- Для завершенных развернутых моделей
в таблице WBIRMADM.RMMETADATA
представлена информация о том, что не следует удалять. Однако при выполнении
развертывания, для того чтобы определить некоторые артефакты и взаимосвязи,
может потребоваться изучить протоколы развертывания для определения того, что
можно безопасно удалить.
- Удаление
- Репликация: база данных хронологии и рабочая база данных
- Остановите все серверы сбора данных, связанные с этой моделью бизнес-величин. (Серверы сбора данных на самом
деле выполняются в рабочей базе данных и базе данных состояний.)
- Остановите все серверы применения изменений, связанные с этой моделью
бизнес-величин.
- Удалите все
хранимые процедуры ETL для модели бизнес-величин.
- Удалите все промежуточные таблицы ETL, которые используются в модели
бизнес-величин.
- Удалите всю
управляющую информацию ETL из таблицы WBIRMADM.RMCONTROL в соответствующей
целевой базе данных для этой модели бизнес-величин.
- Удалите все хранимые процедуры ETL сокращения и триггеры, используемые в модели
бизнес-величин.
- Удалите все
таблицы, перечисленные в поле
TGT_RM_APP_STG_TAB_NAME
таблицы
WBIRMADM.RMMETADATA,
имеющие суффикс _BKUP и
_M, а также имеющие
соответствующее
Имя_службыRuntime_to_Historical
для хронологии и
State_to_Runtime для
рабочей базы данных этой модели бизнес-величин. Оставьте таблицу в TGT_RM_APP_STG_TAB_NAME,
поскольку она будет удалена позже.
- С помощью
DB2
Replication Center, удалите всех участников набора подписки применения
изменений, обслуживающих эту модель бизнес-величин.
- Если набор подписки применения изменений пуст, удалите его.
- Если сервер применения изменений не имеет наборов подписки, удалите этот сервер.
- Удалите из таблицы WBIRMADM.RMMETADATA все записи метаданных, связанные с
моделью бизнес-величин. Также потребуется удалить эти же записи из таблицы WBIRMADM.RMMETADATA в рабочей базе данных при обработке базы данных хронологии, и из базы данных состояния при обработке рабочей базы данных. Следует удалить только строки для модели бизнес-величин и строки в имени службы
Runtime_to_Historical при
обработке базы данных хронологии и
State_to_Runtime для
рабочей базы данных.
- Репликация: база данных состояний и рабочая база данных
- Остановите все сервера сбора данных, обслуживающие модель бизнес-величин.
- Удалите все триггеры, связанные с таблицами CD сбора данных для модели
бизнес-величин.
- Удалите
информацию об управлении сокращением таблиц из таблицы WBIRMADM.RMPRUNECTRL для
триггеров сокращения таблиц, которые применяются для модели бизнес-величин.
- С помощью
DB2
Replication Center удалите все подписки для всех таблиц, связанных с моделью
бизнес-величин.
- Удалите из
таблицы WBIRMADM.RMMETADATA все записи метаданных, связанные с моделью
бизнес-величин.
- Схема базы данных: В основном, в случае возникновения ошибки при генерации схемы откат выполняется
до начала развертывания измененной модели. Текущий набор артефактов репликации это не затрагивает.
Повторное развертывание
Когда все артефакты, поддерживающие модель бизнес-величин, будут удалены, можно
будет снова запустить генератор схемы, выбрав опцию
Игнорировать предыдущие
развертывания. Если схема создана успешно, то не разворачивайте сценарии DDL,
а просто опять разверните сценарии репликации.