Фев 072011
 

Параметр force_logging влияет на количество информации об изменениях в БД, попадающей в redo logs. Отключение этого режима позволит повысить производительность некоторых операций, например, создание/изменение индексов, загрузку данных с помощью SQL*Loader, изменение таблиц (ALTER TABLE…), и некоторых других, а также уменьшит объём redo.

Проблемы появятся, если мы попытаемя создать standby - сервер для основной базы, на которой отключён этот режим. В таком случае, на резервную БД попадут не все изменения, и при switchover/failover запросто можно получить базу с повреждёнными данными, восстановление которых может быть нетривиальной задачей.

Поэтому перед созданием standby надо включить этот режим:

ALTER DATABASE FORCE LOGGING;

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

Проверить, включён ли force logging, можно так:

-- Для всей БД
SELECT force_logging FROM v$database;
 
-- Для каждого из табличных пространств по отдельности
SELECT tablespace_name, force_logging FROM dba_tablespaces;

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre lang="" line="" escaped="" cssfile="">

(обязательно)

(обязательно)