27_SH43-0144-00 (1038594), страница 83
Текст из файла (страница 83)
Дополнительную информацию об этом параметреконфигурации смотрите в книге Руководство администратора:Производительность.DB2 продолжает допускать доступ к таблице даже в том случае, когда данныестолбца DATALINK могут быть неверными. Если вы хотите предотвратитьдоступ к таблице, в которой значения столбца DATALINK могут бытьГлава 8. Восстановление базы данных389несовместимыми, введите SET CONSTRAINTS для имя_таблицы в командеDATALINK RECONCILE PENDING. Значения DATALINK можно исправить так:v При помощи оператора SQL UPDATE установите для части столбцаDATALINK с положениями данных URL нулевой длины, если этот столбец недопускает пустых значений, и NULL, если допускает.v Восстановите файлы на необходимых серверах связей данных. Затемзапустите прикладную программу, которая выполняет операторы SELECTдля чтения значений столбца DATALINK и операторы UPDATE дляобновления столбца DATALINK при помощи тех же самых значений.Обратите внимание на то, что во время изменения значений столбцаDATALINK должно быть включено состояние Datalink_Reconcile_Not_Possible(синхронизация Datalink невозможна).
После завершения операцииобновления файлы будут помечены, как связанные на соответствующихсерверах связей данных.Затем отмените состояние Datalink_Reconcile_Not_Possible (синхронизацияDatalink невозможна), введя следующую команду:SET CONSTRAINTS FOR имя_таблицы DATALINK RECONCILE PENDING IMMEDIATE UNCHECKEDСинхронизация связей данныхДля синхронизации связей данных используется утилита синхронизации. Этаутилита запускается из DB2 и затрагивает все серверы связей данных сработающими Менеджерами связей данных DB2, на которые есть ссылки взначениях столбцов DATALINK.
Она проверяет, что упомянутые файлы либосуществуют на сервере связей данных, либо эти связи могут бытьпереустановлены. В следующих разделах описано, как DB2 определяет, надо ливам синхронизировать связи данных, и как это сделать.Если ссылка на файл на сервере связей данных не существует или ее невозможнопереустановить, утилита синхронизации помещает строки с ошибками, а такжепричины всех ошибок в таблицу исключений (если она указана), а затеммодифицирует эти строки.
Если таблица исключений не указана, значениястолбцов DATALINK, для которых невозможно восстановить ссылку на файл,копируются в файл отчета об исключениях вместе с ID столбца и причиной.Информацию из таблицы исключений (если она указана) или из отчета можноиспользовать для необходимого исправления строк. Таблица исключений,используемая с утилитой синхронизации, идентична таблице исключений,используемой утилитой Load. Дополнительную информацию об утилите Loadсмотрите в книге Data Movement Utilities Guide and Reference. Имя отчета имеетвид отчет.exp (расширение .exp добавляет утилита синхронизации).
Например,можно вызвать утилиту синхронизации при помощи следующего оператора:db2 RECONCILE dept DLREPORT/u/scottba/report FOR EXCEPTION excptabЭта команда синхронизирует таблицу с именем dept и записывает исключения втаблицу исключений excptab, которая была создана пользователем.390Руководство администратора: РеализацияИнформация о файлах, для которых во время синхронизации были разорванысвязи, записывается в файл report.ulk, создаваемый в каталоге /u/scottba.Если не указано FOR EXCEPTION excptab, информация об исключенияхзаписывается в файл report.exp, который создается в каталоге /u/scottba.Дополнительную информацию об утилите синхронизации смотрите в книгеCommand Reference.|||||||||||Обнаружение ситуации, требующей синхронизацииДалее приводятся несколько ситуаций, в которых может потребоваться запускутилиты синхронизации:v Вся база данных восстановлена, и для нее произведен повтор транзакций доопределенного момента времени.
Поскольку для всей базы данных былвыполнен повтор транзакций до принятой транзакции, ни одна из таблиц небудет находиться в состоянии ожидания проверки (из-за реляционных илипроверочных ограничений). Все данные в базе данных приведены всогласованное состояние. Тем не менее, столбцы DATALINK могут быть несинхронизированы с метаданными в Менеджере связей данных DB2, итребуется синхронизация.В этом случае таблицы с данными столбцов DATALINK уже будут всостоянии Datalink_Reconcile_Pending (ожидание синхронизации Datalink). Длякаждой из этих таблиц необходимо воспользоваться утилитой синхронизации.v Один из серверов связей данных, на котором запущен DB2 Data Links Manager,теряет след своих метаданных.
Это может произойти по несколькимпричинам. Например:– После холодного старта сервера связей данных.– После восстановления метаданные сервера связей данных до более раннегосостояния.В некоторых ситуациях, например, при выполнении операторов SQL UPDATEи DELETE DB2 может быть в состоянии обнаружить ошибку метаданных насервере связей данных. В таких ситуациях DB2 не сможет обработатьоператор SQL. Вам придется перевести таблицу в состояниеDatalink_Reconcile_Pending (ожидание стабилизации Datalink) при помощиоператора SET CONSTRAINTS, а затем запустить утилиту синхронизации дляэтой таблицы.v Файловая система недоступна (например, из-за отказа диска) и невосстанавливается до текущего состояния.
В этой ситуации могутотсутствовать отдельные файлы.Обычно такие ошибки обнаруживаются прикладной программой, когда онане может получить доступ к файлу, ссылку на который взяла из базы данных.Вам надо перевести таблицу в состояние Datalink_Reconcile_Pending(ожидание стабилизации Datalink) и запустить утилиту синхронизации для нее.Некоторые из файлов могут быть восстановлены с архивного сервера, если всоответствующих им столбцах DATALINK задано RECOVERY=YES. Влюбом случае утилита синхронизации запишет эти исключения в таблицуГлава 8. Восстановление базы данных391исключений или в отчет об исключениях. Вы можете восстановить эти файлыили выполнить оператор SQL UPDATE, чтобы исправить столбец.Обзор процедуры синхронизацииПри необходимости синхронизации связей данных из-за восстановления доопределенного момента времени или из-за несоответствия управляющейинформации на серверах связей данных с запущенным Менеджером связейданных DB2 и в DB2:|||||||1.
Вам придется перевести таблицу в состояние Datalink_Reconcile_Pending(ожидание стабилизации Datalink) при помощи оператора SETCONSTRAINTS. (В некоторых случаях за вас это сделает DB2.)2. Используйте утилиту синхронизации для разрешения связей и выполнитенеобходимые действия в отношении исключений в таблице исключений или вотчете об исключениях.||||| Tivoli Storage ManagerПри вызове команд BACKUP и RESTORE необходимо указать, что дляобработки резервной копии базы данных или табличного пространства выхотите использовать программный продукт Tivoli Storage Manager (TSM)(прежнее название - Tivoli ADSM). С DB2 можно использовать клиент TivoliADSM Версии 3.1.x.3 и более новых. Дополнительная информация содержится вследующих темах:v Настройка клиента Tivoli Storage Manager для платформ на основе UNIXv Настройка клиента Tivoli Storage Manager для других платформ|||||||||v Особенности использования Tivoli Storage Manager.Настройка клиента Tivoli Storage Manager для платформ на основеUNIX|||||||||||||||||Чтобы менеджер баз данных смог использовать опцию TSM, необходимовыполнить следующие настройки:1.
В средах SunOS и Solaris выполните следующие действия. (На другихплатформах на основе UNIX начинайте с шага 2 на стр. 393.)a. Убедитесь, что установлен необходимый уровень операционной системы:SunOS 5.5.1 или Solaris 2.5.1.b. Установите клиент Tivoli ADSM Версии 3.1.x.3 или более новой. Передустановкой этой версии клиента убедитесь, что вы удалили всепредыдущие программные пакеты TSM.c. Убедитесь, что TSM установлен в каталоги /opt/IBMDSMap5,/opt/IBMDSMba5 и /opt/IBMDSMsa5.d. Создайте следующие символические связи в каталоге /usr/lib, если ониеще не существуют:libApiDS.so -> libApiDS.so.1libApiDS.so.1 -> /opt/IBMDSMap5/api/libApiDS.so.2392Руководство администратора: Реализация|||2.
Создайте или модифицируйте файл опций конфигурации пользователя TSM/usr/sbin/dsm.opt и файл опций конфигурации системы TSM/usr/sbin/dsm.sys, соответствующие вашей среде.|||||||3. В средах SunOS и Solaris выполните следующие действия. (На другихплатформах на основе UNIX продолжайте с шага 4.)a. Скопируйте /usr/sbin/dsm.opt и /usr/sbin/dsm.sys в каталог/opt/IBMDSMap5.b. Скопируйте /opt/IBMDSMap5/solaris/dsmaptica в каталог/opt/IBMDSMap5.4. Установите используемые TSM переменные среды:|||DSMI_DIRПримечание: Для сред SunOS и Solaris следуетустанавливать /opt/IBMDSMap5.|||||||DSMI_CONFIGидентифицирует путь к пользовательскому каталогу сфайлом dsm.opt, в котором содержатся опции пользователяTSM.
В отличие от двух других переменных эта переменнаядолжна содержать полное имя файла с путем к нему.Примечание: Для сред SunOS и Solaris следуетустанавливать /opt/IBMDSMap5/dsm.opt.|||||идентифицирует путь к пользовательскому каталогу, вкотором расположен файл доверенного агента API(dsmapicta или dsmtca).идентифицирует путь к пользовательскому каталогу, вкотором будет создаваться журнал ошибок (dsierror.log).5.