stringtranslate.com

Журнал повторов

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

Например, если пользователь UPDATEвводит значение зарплаты в таблицу, содержащую данные о сотрудниках, СУБД генерирует запись повтора, содержащую векторы изменений, которые описывают изменения в блоке сегмента данных для таблицы. И если пользователь затем COMMITвводит обновление, Oracle генерирует еще одну запись повтора и назначает изменению «системный номер изменения» (SCN).

Всякий раз, когда что-то изменяется в файле данных, Oracle записывает изменения в журнал повторов. Название журнала повторов указывает на его цель : если база данных выходит из строя, СУБД может повторно выполнить (повторно обработать) все изменения в файлах данных, что вернет данные базы данных в состояние, в котором они были, когда была записана последняя запись повторов. Администраторы баз данных используют представления V$LOG, V$LOGFILEи для поиска информации о журнале повторов базы данных. Каждый файл журнала повторов принадлежит ровно одной группе (из которых должно быть не менее двух). Ровно одна из этих групп является CURRENT группой (ее можно запросить с помощью столбца status v$log). Oracle использует эту текущую группу для записи записей журнала повторов. Когда группа заполнена, происходит переключение журнала , делающее другую группу текущей. Каждое переключение журнала вызывает контрольную точку, однако обратное неверно: контрольная точка не вызывает переключение журнала повторов. Также можно вручную вызвать переключение журнала повторов с помощью команды .V$LOG_HISTORYV$THREADALTER SYSTEM SWITCH LOGFILE

Классификация

Файлы журнала повторного выполнения бывают двух типов: [1]

Использование

Прежде чем пользователь получит сообщение « Фиксация завершена », система должна сначала успешно записать новые или измененные данные в файл журнала повторного выполнения.

Сначала СУРБД записывает все изменения, включенные в транзакцию, в буфер журнала в системной глобальной области (SGA). Использование памяти таким образом для первоначального захвата направлено на сокращение дискового ввода-вывода. Конечно, когда транзакция фиксируется, буфер журнала повторов должен быть сброшен на диск, поскольку в противном случае восстановление для этого коммита не может быть гарантировано. Процесс LGWR (Log Writer) выполняет эту очистку.

Наличие журнала повторов позволяет воспроизводить SQL-выражения. Перед тем, как база данных Oracle изменит данные в файле данных, она записывает изменения в журнал повторов. Если что-то случится с одним из файлов данных, процедура восстановления может восстановить резервную копию файла данных, а затем воспроизвести повтор, записанный с момента резервного копирования; это возвращает файл данных в состояние, в котором он был до того, как стал недоступным. Резервные базы данных в среде Oracle Data Guard используют ту же технику: одна база данных (основная база данных) записывает все изменения и отправляет их в резервную базу данных (базы данных). Каждая резервная база данных применяет (воспроизводит) полученный повтор, что приводит к синхронизации с основной базой данных. [5]

Если база данных выходит из строя, процесс восстановления должен применить все транзакции, как незафиксированные, так и зафиксированные, к файлам данных на диске, используя информацию в файлах журнала повторов. Oracle должен повторно выполнить все транзакции журнала повторов, которые имеют как и BEGINзапись COMMIT(прокрутить вперед), и он должен отменить все транзакции, которые имеют BEGINзапись, но не имеют COMMITзаписи (откат). [6] (Повторное выполнение транзакции в этом контексте просто означает применение информации в файлах журнала повторов к базе данных; система не перезапускает саму транзакцию.) Таким образом, система повторно создает зафиксированные транзакции, применяя записи «после образа» в файлах журнала повторов к базе данных, и отменяет незавершенные транзакции, используя записи «до образа» в табличном пространстве отмены .

Сбор данных об изменениях может считывать журналы повторного выполнения.

В конфигурациях Oracle Data Guard резервные журналы повторов напоминают эквивалентные им онлайн-журналы повторов, но служат для хранения данных повторов, переданных из другой базы данных. [7]

Подразумеваемое

Учитывая многословность журналирования, корпорация Oracle предоставляет методы архивирования журналов повторного выполнения (архивных журналов), которые, в свою очередь, могут использоваться в сценариях резервного копирования данных и резервных базах данных .

Существование подробной серии индивидуально зарегистрированных транзакций и действий обеспечивает основу для нескольких улучшений управления данными, таких как Oracle Flashback , log-mining и point-in-time recovery . Концепция воплощения базы данных [8] может влиять на использование повтора при восстановлении базы данных.

Для настройки базы данных и эффективной обработки журналов повторного выполнения требуется большой и быстродоступный диск.

Смотрите также

Ссылки

  1. ^ Кайт, Томас; Кун, Дарл (2014-11-10). Архитектура базы данных эксперта Oracle. Голос эксперта в Oracle (3-е изд.). Apress (опубликовано в 2014 г.). стр. 9. ISBN 9781430262992. Получено 2015-02-19 . Я упомянул два типа файла журнала повторного выполнения: онлайн и архивный.
  2. ^ Бах, Мартин (2013-11-23). ​​Экспертная консолидация в Oracle Database 12c. SpringerLink : Bücher. Apress (опубликовано в 2013). стр. 318. ISBN 9781430244288. Получено 2015-07-12 . Резервные журналы повторов (SRL) на сайте аварийного восстановления действуют как аналог онлайн-журналов повторов (ORL) основной базы данных и позволяют удаленному сайту получать повторы более эффективно.
  3. ^ Фогель, Стив (май 2006 г.). "Руководство администратора базы данных Oracle, 10g, выпуск 2 (10.2)". docs.oracle.com . Oracle . Получено 19.02.2015 . Текущий журнал повторов всегда находится в сети, в отличие от архивных копий журнала повторов. Поэтому онлайн-журнал повторов обычно называют просто журналом повторов.
  4. ^ Райс, Стив (2013-02-22). Oca Oracle Database 11g Администрирование баз данных I: Руководство по сертификации в реальном мире. Packt Publishing Ltd (опубликовано в 2013 году). ISBN 9781849687317. Получено 2015-02-19 . [...] когда происходит переключение журнала, содержимое текущего журнала повторов записывается в архивный журнал повторов процессом ARCn. Эти журналы также называются автономными журналами повторов или просто архивными журналами.
  5. ^ Лю, Генри Х. (2011-11-22). Производительность и масштабируемость базы данных Oracle: количественный подход. Серия «Количественная программная инженерия». Том 12. John Wiley & Sons (опубликовано в 2011 г.). С. 238–239. ISBN 9781118056998. Получено 2015-02-19 . Первичная и физическая резервные базы данных синхронизируются с помощью службы Redo Apply , которая восстанавливает данные повтора из первичной базы данных и применяет их к резервной базе данных. [...] Синхронизация между первичной и [логической] резервной базами данных достигается с помощью службы SQL Apply, которая преобразует данные повтора из первичной базы данных в операторы SQL, а затем выполняет операторы SQL в резервной базе данных.
  6. ^ Гринвальд, Рик; Стаковяк, Роберт; Стерн, Джонатан (2013-09-06). Oracle Essentials: Oracle Database 12c (5-е изд.). O'Reilly Media, Inc. (опубликовано в 2013 г.). ISBN 9781449343170. Получено 2015-02-19 . Восстановление экземпляра состоит из двух фаз: откат вперед и откат назад.
  7. ^ Шупманн, Вивиан (2008). "Oracle Data Guard: Концепции и администрирование: 10g Release 2 (10.2)". Oracle . Получено 2015-02-19 . Резервный журнал повторов похож на онлайн-журнал повторов, за исключением того, что резервный журнал повторов используется для хранения данных повторов, полученных из другой базы данных.
  8. ^ Бах, Мартин (2013-11-23). ​​Экспертная консолидация в Oracle Database 12c. SpringerLink : Bücher. Apress (опубликовано в 2013). стр. 378. ISBN 9781430244288. Получено 2015-02-04 . Согласно документации Oracle, воплощение представляет собой отдельную версию базы данных.

Внешние ссылки