27_SH43-0144-00 (1038594), страница 75
Текст из файла (страница 75)
МожноГлава 8. Восстановление базы данных351изменить место размещения активных и будущих архивных файловжурнала, изменив значение этого параметра конфигурации так, чтобыон указывал на новый каталог или на новое устройство. Если базаданных сконфигурирована для восстановления с повтором транзакций,архивные файлы журнала, хранящиеся в исходном каталоге, неперемещаются в новое положение.Поскольку можно изменять положение файлов журнала, те из них,которые необходимы для восстановления с повтором транзакций, могутнаходиться в разных каталогах или на разных устройствах.
Этотпараметр конфигурации можно изменять во время процесса повторатранзакций для обеспечения доступа к файлам журнала, находящимся вразличных положениях.Измененное значение newlogpath не применяется до тех пор, пока базаданных не перейдет в согласованное состояние. Состояние базы данныхуказывает информационный параметр конфигурации базы данныхdatabase_consistent. Дополнительную информацию об индикаторесостояния database_consistent смотрите в книге Руководствоадминистратора: Производительность. О том, какую роль файлыжурнала базы данных играют, когда база данных не находится всогласованном состоянии, смотрите в разделе “Особенности файловжурнала” на стр. 366.|||||||||Сохранение журнала (logretain)Этот параметр управляет сохранением архивных файлов журнала вкаталоге, определяемом путем к журналу базы данных.
Его включениепосредством задания для него значения “RECOVERY” позволяетменеджеру баз данных использовать метод восстановления с повторомтранзакций. Когда включен параметр конфигурации logretain, включатьuserexit не требуется. Для включения метода восстановления с повторомтранзакций достаточно одного из этих параметров.Использование этого параметра переопределяет используемую поумолчанию циклическую запись в журнал.Обработчик пользователя (userexit)Этот параметр заставляет менеджер баз данных вызывать программуобработчика пользователя для архивирования и вызова файловжурнала. При включенном обработчике пользователя восстановление сповтором транзакций разрешено. Когда включен параметрконфигурации userexit, включать logretain не требуется.
Для включенияметода восстановления с повтором транзакций достаточно одного изэтих параметров.Использование этого параметра переопределяет используемую поумолчанию циклическую запись в журнал. Userexit предполагаетlogretain, но не наоборот.352Руководство администратора: РеализацияИнформацию о программе обработчика пользователя смотрите вразделе “Приложение C.
Обработчик пользователя для восстановлениябаз данных” на стр. 441.При использовании параметра конфигурации userexit или параметраконфигурации logretain для разрешения восстановления с повтором транзакцийважен путь к активному журналу. При включенном параметре конфигурацииuserexit обработчик пользователя вызывается для архивирования файловжурнала по пути, отличному от пути к активному журналу. Когда дляпараметра конфигурации logretain задано значение “RECOVERY”, файлыжурнала остаются в положении, определяемым путем к активному журналу.Путь к активному журналу определяется либо значением в поле Путь к файламжурнала, либо Измененный путь к файлам журнала (newlogpath).Повтор транзакций для изменений в табличном пространствеЕсли в базе данных разрешено восстановление с повтором транзакций,появляется опция для резервного копирования, восстановления из резервнойкопии и повтора транзакций для табличных пространств вместо всей базыданных.
Применять стратегию восстановления отдельных табличныхпространств можно с целью экономии времени: восстановление части базыданных занимает меньше времени, чем восстановление всей базы данных.Например, если у вас есть плохой диск, содержащий только одно табличноепространство, можно восстановить это табличное пространство из резервнойкопии и выполнить для него повтор транзакций, не восстанавливая всю базуданных (и не мешая пользователям обращаться к остальной части базыданных). Кроме того, резервное копирование на уровне табличных пространствпозволяет делать резервные копии критичных частей базы данных чаще, чемостальных, и отнимает меньше времени, чем резервное копирование всей базыданных.|||||Если после последнего резервного копирования вы переименовали табличноепространство, при повторе транзакций для него надо использовать новое имя.Предыдущее имя табличного пространства не будет опознаваться.
Кроме того,повтор транзакций необходимо проводить до времени переименованиятабличного пространства или более позднего.Если в среде многораздельной базы данных некоторые из разделов базы данныхнаходятся в состоянии ожидания повтора транзакций, а в других разделах базыданных в этом состоянии находятся отдельные табличные пространства (но несами разделы), сначала необходимо выполнить повтор транзакций для разделовбазы данных, а потом - для табличных пространств.Если в таблице данные и объекты типа long находятся в отдельных табличныхпространствах и эта таблица была реорганизована, оба вида табличныхпространств должны быть совместно восстановлены из резервных копий, и дляГлава 8. Восстановление базы данных353них, также совместно, должен быть произведен повтор транзакций. Послереорганизации необходимо сделать резервную копию затронутых ей табличныхпространств.Для указания текущего статуса табличного пространства с табличнымпространством связываются различные состояния:v Табличное пространство будет переведено в состояние ожидания повторатранзакций после его восстановления из резервной копии или после ошибкиввода/вывода.
После исправления ошибки ввода/вывода для табличногопространства должен быть выполнен повтор транзакций для устранениясостояния ожидания повтора транзакций. Если табличное пространство быловосстановлено из резервной копии, для него должен быть выполнен повтортранзакций.v Табличное пространство будет переведено в состояние идет-повтортранзакций, когда для этого табличного пространства выполняется операцияповтора транзакций. Табличное пространство выйдет из состоянияидет-повтор-транзакций после успешного завершения ROLLFORWARD.||||Табличное пространство может также быть в состоянииидет-повтор-транзакций, если образ резервной копии был сделан воперативном режиме и операция повтора транзакций не завершена.v Табличное пространство будет переведено в состояние ожиданиявосстановления после операции ROLLFORWARD CANCEL илиROLLFORWARD, при которой произошла невосстановимая ошибка для этоготабличного пространства.
Табличное пространство следует сновавосстановить из резервной копии и повторить для него транзакции.v Табличное пространство будет переведено в состояние ожидания резервногокопирования после ROLLFORWARD до определенного момента времени илипосле операции LOAD NO COPY. Чтобы табличное пространство можно былоиспользовать, необходимо сделать его резервную копию.||||||||||После восстановления табличного пространства из резервной копии оно всегданаходится в состоянии ожидания повтора транзакций (то есть, если привосстановлении табличного пространства из резервной копии указать параметрWITHOUT ROLLING FORWARD, он игнорируется).
Чтобы сделать табличноепространство пригодным к использованию, для него надо выполнитьвосстановление с повтором транзакций. Можно выбрать восстановление сповтором транзакций до конца файлов журнала или до определенного моментавремени. Если вы собираетесь повторить транзакции для табличногопространства до определенного момента времени, обратите внимание наследующее:||||v Нельзя произвести повтор транзакций до определенного момента временидля таблиц системного каталога. Для них повтор транзакций долженвыполняться до конца файлов журнала для гарантии того, что все табличныепространства в базе данных останутся в согласованном состоянии.|||354Руководство администратора: Реализация|||v Табличное пространство, для которого будут повторяться транзакции доопределенного момента времени, должно быть восстановлено из резервнойкопии, снятой раньше времени, указанного для повтора транзакций.|||v Если вы не хотите повторять транзакции для табличного пространства,можно указать ROLLFORWARD STOP, что эквивалентно повтору транзакцийдля табличного пространства до времени снятия восстанавливаемой копии.|||||||||||||||||||||Примечание: Этого нельзя сделать, если образ резервной копии был сделанбез отключения.
В таком случае повторять транзакциинеобходимо по крайней мере до окончания резервногокопирования.v Если вы выполняете повтор транзакций до определенного момента времени итаблица располагается в нескольких табличных пространствах, повтортранзакций для всех этих табличных пространств должен выполнятьсяодновременно. Например, если данные таблицы содержатся в одномтабличном пространстве, а индекс для этой таблицы - в другом, для обоихтабличных пространств необходимо одновременно произвести повтортранзакций до одного и того же момента времени.v Перед повтором транзакций для табличного пространства используйтекоманду LIST TABLESPACES SHOW DETAIL.
Эта команда возвращаетинформацию о “Минимальном времени восстановления”, то есть о самомраннем моменте времени, до которого может быть выполнен повтортранзакций табличного пространства. Минимальное время восстановленияобновляется, когда выполняются операторы DDL для табличногопространства или таблиц в табличном пространстве. Повтор транзакцийтабличного пространства должен быть выполнен, как минимум, доминимального времени восстановления, чтобы оно было синхронизировано синформацией в таблицах системного каталога.|||||||||v Если вы переименовали табличное пространства, необходимо выполнитьповтор транзакций, по крайней мере, до времени переименования.v Если вы восстанавливаете табличное пространство, содержащее таблицу состолбцом идентификации до момента времени перед концом файлов журнала,может произойти разрыв в последовательности сгенерированных значений.Эта ситуация может заставить DB2 сгенерировать повторяющиеся значениядля некоторых из столбцов идентификации.