LCK - процесс блокировки

RECO - процесс восстановления

СКРТ-процесс выполнения контрольных точек

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

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

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

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

Независимо от того, запущен или нет фоновый процесс СКРТ, контрольная точка выполняется, при заполнении одного из журнальных файлов.

 

Фоновый процесс восстановления запускается, если происходит сбой в распределенной транзакции (транзакция, в которой изменяются две или больше базы данных) и одна или больше баз данных требуют выполнить или фиксацию, или откат транзакции. RECO, если он запущен, пытается автоматически фиксировать или откатить транзакцию на локальной базе данных синхронно с процессами RECO на других базах данных. Oracle.

Не нужно запускать фоновый процесс восстановления, если не используются распределенные транзакции.

 

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

Может быть запущено до 10 фоновых процессов LCK, чтобы расшить узкое место синхронизации блокировок, однако одного обычно оказывается достаточно.

Не нужно запускать фоновые процессы LCK, если не используется параллельный сервер Oracle.

 

Listener - процесс прослушивания сети ("слушатель")

Listener — процесс, который направляет запросы, приходящие от машин-клиентов, к соответствующему экземпляру Oracle. Он взаимодействует с сетевым ПО, маршрутизируя запросы между сервером базы данных и машиной-клиентом (независимо от того, что работает на клиенте — инструментальное ПО Oracle или другой сервер базы данных).

Например, взаимодействие между машиной-клиентом, выполняющей приложение на PC с Windows, и сервером базы данных на UNIX машине с сетевым протокол TCP/IP, осуществлялось бы следующим образом:

1) Машина-клиент посылает оператор запроса SQL для выполнения к UNIX машине сервера базы данных.

2) He-Oracle процесс-слушатель TCP/IP получает запрос и распознает его как запрос для Oracle.

3) Запрос посылается слушателю Oracle Listener, который направляет запрос к соответствующему экземпляру на машине. (Машина могла бы выполнять много экземпляров для многих различных баз данных.)

4) Процесс экземпляра выполняет оператор.

5) Результаты затем посылаются обратно по сетевой связи машине-клиенту.

Слушатель Listener обрабатывает запросы для всех экземпляров, выполняющихся на машине. Можно запускать несколько слушателей, но это делают редко.