Журнальные файлы


Управляющие файлы

Чтобы защититься от потери управляющего файла, СУБД Oracle может поддерживать больше одной копии этого файла, для чего достаточно сделать согласованные копии существующего управляющего файла и изменить параметры INIT.ORA. Дублирование незначительно влияет на производительность базы данных. Если все копии управляющего файла потеряются, можно вручную восстановить их, используя команду

CREATE CONTROLFILE

 

В журнал записывают все изменения в блоках данных базы данных. Если база данных функционирует в режиме ARCHIVELOG и потеряны только автономные журнальные файлы, следует закрыть базу данных и выполнить резервное копирование всех трех наборов файлов БД.

Если, однако, потеряны оперативные журнальные файлы, можно потерять часть работы, поскольку некоторая часть информации, необходимой для воспроизведения изменений файлов базы данных, находится в журнальных оперативных файлах. Чтобы это предотвратить, можно мультиплексировать (дублировать) оперативные журнальные файлы таким же образом, как управляющий файл. Когда программное обеспечение СУБД записывает изменения в один из журнальных файлов, та же информация записывается в точную копию этого файла.

 

Глава 17. Распределенные базы данных

 

Распределенная база данных — одна логическая база данных, которая реализована как две или больше физические базы данных на одной машине или на разных машинах на большом расстоянии одна от другой. Разработчики системы решают, где должны быть физически расположены таблицы.

Каждая база данных имеет собственный экземпляр и наборы файлов; машины, на которых базы данных располагаются, соединяются через сеть. Расположение таблиц может быть сделано прозрачным для приложения с помощью связей базы данных и синонимов.

Oracle разрешает выполнение транзакций, и даже единственный оператор может обратиться к таблицам двух или больше распределенных баз данных. Для этого от разработчиков приложения не требуется какого-либо дополнительного программирования.

Распределенная транзакция - транзакция, которая изменяет таблицы нескольких баз данных и затем ожидает фиксации всех изменений. Если где-либо происходит сбой, все изменения на всех базах данных отменяются. Двухфазный механизм фиксации транзакций Oracle управляет синхронизацией фиксаций во всех базах данных и может автоматически отменять изменения во всех базах данных, если происходит какой-либо сбой. Фоновый процесс RECO синхронизирует эту операцию.

В дополнение к этим функциональным возможностям, Oracle также может копировать таблицы из одной базы данных в другую. Эта процедура называется созданием снимка таблицы.

Снимок создается для той базы данных, какую нужно скопировать. СУБД Oracle автоматически посылает какие-либо изменения, сделанные в главной копии таблицы, в каждую из копий-снимков через определенные пользователем интервалы времени без какого-либо ручного вмешательства.

Механизм снимка допускает модификации в снимке таблицы, при этом изменения посылаются из таблицы-копии обратно в главную таблицу.