Що робить LGWR під час здійснення транзакції?
Процес LGWR також відповідає за наступне: Запис записів фіксації у файл журналу коли транзакція фіксується. Кілька комітів (відомих як групові коміти) можуть бути записані в одній операції, коли активність бази даних висока.
Зміни даних для здійсненої транзакції, що зберігаються в буферах бази даних SGA, не обов’язково відразу записуються у файли даних фоновим процесом записувача бази даних (DBWn).
Процес запису журналу (LGWR) записує послідовно переміщувати записи журналу повторів із буфера журналу повторів до онлайнового журналу повторів. Якщо база даних має мультиплексований журнал повторення, LGWR записує однакові записи журналу повторення для всіх членів групи файлів журналу повторення.
База даних Oracle дозволяє автоматично відкочувати транзакції та містить параметри для контролю такої поведінки. Блокування рядків — це блокування одного рядка таблиці. Транзакція отримує блокування рядка для кожного рядка, зміненого одним із таких операторів: INSERT, UPDATE, DELETE, MERGE та SELECT…
Завершення транзакції Транзакція завершується, коли відбувається будь-яка з наведених нижче дій: Користувач видає оператор COMMIT або ROLLBACK без пропозиції SAVEPOINT. Під час фіксації користувач явно чи неявно просив зробити зміни в транзакції постійними.
Зміни, внесені оператором(ами) SQL транзакції, стають постійними та видимими для інших користувачів лише після того, як ця транзакція зафіксується. У запитах, які надходять після фіксації транзакції, відображатимуться зареєстровані зміни.