Для большинства задач резервного копирования, настроек по умолчанию, таких как тип резервного копирования (диск или лента), количество каналов и степень параллелизма, вполне достаточно. Но для более сложных задач, может понадобиться дополнительно, настроить окружение RMAN. Сделать это можно двумя способами:

  • Установить параметры конфигурации постоянными для всех сеансов RMAN.
  • Изменить параметры только для определённого задания резервного копирования или восстановления.

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

4-1. Просмотр параметров конфигурации RMAN

Для вывода текущих значений параметров конфигурации, в RMAN используется команда SHOW. Если требуется вывести значение только одного конкретного параметра, то для этого достаточно указать его имя сразу после ключевого слова этой команды:

RMAN> show controlfile autobackup;

using target database control file instead of recovery catalog
RMAN configuration parameters are:
CONFIGURE CONTROLFILE AUTOBACKUP OFF;

Для вывода значений всех параметров RMAN, вместо имени параметра указывается ключевое слово ALL:

RMAN> show all;

RMAN configuration parameters are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
CONFIGURE BACKUP OPTIMIZATION OFF;
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE SBT_TAPE TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DEVICE TYPE SBT_TAPE PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE SBT_TAPE TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE SBT_TAPE TO 1; # default
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=oracle.disksbt 
ENV=(BACKUP_DIR=/u01/app/oracle/admin/orcl/backup)';
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 
'/u01/app/oracle/product/10.2.0/db_1/dbs/snapcf_orcl.f'; # default

Как видно из листинга, RMAN осуществляет вывод значений параметров в формате команд конфигурации. Это очень удобно, если планируется использовать данную конфигурацию на другой базе данных. Слово # default в конце строки означает, что данное значение параметра является значением по умолчанию.

Ниже перечислены некоторые опции команды SHOW:

ОпцияОписание
all Показывает значения всех параметров
archivelog deletion policy Показывает политику удаления журнальных файлов.
archivelog backup copies Показывает число резервных копий журналов.
auxname Показывает имя вспомогательного экземпляра.
backup optimization Показывает использование оптимизации при резервном копировании.
[auxiliary] channel Показывает конфигурацию канала.
channel for device type [disk | ] Показывает характеристики канала.
controlfile autobackup Показывает, включено ли автоматическое копирование контрольного файла.
controlfile autobackup format Показывает формат автоматического копирования контрольного файла.
datafile backup copies Показывает число сохраняемых резервных копий файла данных.
default device type Показывает тип устройства по умолчанию.
encryption algorithm Показывает алгоритм шифрования, используемый в настоящее время.
encryption for [database | tablespace] Показывает шифрование для базы данных и каждого табличного пространства.
exclude Показывает табличные пространства, исключённые из резервного копирования.
maxsetsize Показывает максимальный размер для резервных наборов. Значение по умолчанию неограниченно.
retention policy Показывает политику удержания для резервных копий.
snapshot controlfile name Показывает снимок контрольного файла

Для вывода значений параметров конфигурации RMAN команда SHOW запрашивает контрольный файл базы данных. Данные параметры всегда хранятся в этом файле независимо от того, используется ли каталог восстановления или нет. После того, как была произведена конфигурация окружения RMAN, настройки сохраняются в репозитарии контрольного файла, пока не будут изменены следующей командой конфигурации. Такое хранение требует, чтобы целевая база данных была смонтирована или открыта при выполнении команды SHOW.

Ниже перечислены самые важные из настроек отображаемые командой SHOW ALL:

  • configure retention policy to redundancy 1 - RMAN сохраняет только один набор резервных копий.
  • configure backup optimization off – оптимизация при резервном копировании выключена.
  • configure default device type to disk - устройство по умолчанию для резервного копирования диск.
  • configure controlfile autobackup off – автоматическое резервное копирование контрольного файла выключено.
  • configure device type disk parallelism 1 backup type to backupset – по умолчанию для устройства резервного копирования диск включена степень параллелизма 1, и образующаяся резервная копия будет по умолчанию резервным набором.
  • configure datafile backup copies for device type disk to 1 – по умолчанию RMAN делает одну копию файлов данных.
  • configure maxsetsize to unlimited – по умолчанию максимальный размер резервного набора не определён.
  • configure encryption for database off – по умолчанию режим шифрования базы данных при резервном копировании выключен.

Настройки не по умолчанию можно так же посмотреть в динамическом представлении V$RMAN_CONFIGURATION:

SQL> SELECT * FROM V$RMAN_CONFIGURATION;
 
CONF# NAME                   VALUE                                            
----- ---------------------- ------------------------------------------------
1     RETENTION POLICY       TO REDUNDANCY 1                                  
2     CHANNEL                DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=oracle.disksbt
ENV=(BACKUP_DIR=/u01/app/oracle/admin/orcl/backup)'
3     CONTROLFILE AUTOBACKUP OFF                    
4     BACKUP OPTIMIZATION    OFF      

4-2. Конфигурирование RMAN

Любой из постоянных параметров конфигурации RMAN влияющих на резервное копирование и восстановление можно изменить, используя для этого команду конфигурации CONFIGURE:

RMAN> configure [ ];

Данную команду можно выполнить как из командной строки, тем самым изменив единственный параметр, так и объединив несколько команд конфигурации в блок RUN, что позволит изменить сразу несколько настроек:

RMAN> run
2> {
3> CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
4> CONFIGURE BACKUP OPTIMIZATION OFF;
5> CONFIGURE DEFAULT DEVICE TYPE TO DISK;
6> }

old RMAN configuration parameters:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
new RMAN configuration parameters:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1;
new RMAN configuration parameters are successfully stored

old RMAN configuration parameters:
CONFIGURE BACKUP OPTIMIZATION OFF;
new RMAN configuration parameters:
CONFIGURE BACKUP OPTIMIZATION OFF;
new RMAN configuration parameters are successfully stored

old RMAN configuration parameters:
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
new RMAN configuration parameters:
CONFIGURE DEFAULT DEVICE TYPE TO DISK;
new RMAN configuration parameters are successfully stored

При выполнении команды CONFIGURE установленные значения параметров будут применяться ко всем следующим сеансам RMAN, пока не будут очищены или изменены этой же командой.

4-3. Восстановление значений параметров по умолчанию

Если команда конфигурации не будет явно использоваться, чтобы определить значение каких- либо параметров RMAN, то RMAN будет использовать для этих параметров значения по умолчанию. При использовании команды configure ... clear, можно возвратить изменённое значение отдельного параметра конфигурации в значение по умолчанию:

RMAN> configure backup optimization clear;

old RMAN configuration parameters:
CONFIGURE BACKUP OPTIMIZATION OFF;
RMAN configuration parameters are successfully reset to default value

Данной командой невозможно очистить отдельные параметры, влияющие на определенный компонент RMAN. Например, если сконфигурирован канал с несколькими опциями, невозможно стереть отдельные опции командой configure ... clear, таким образом, следующая команда не выполниться:

RMAN> configure channel device type sbt maxpiecesize 100m clear;

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00558: error encountered while parsing input commands
RMAN-01009: syntax error: found "clear": expecting one of: "connect, debug, format, 
kbytes, maxopenfiles, maxpiecesize, parms, readrate, rate, ;, send, to, trace"
RMAN-01007: at line 1 column 53 file: standard input

RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-00558: error encountered while parsing input commands
RMAN-01009: syntax error: found ";": expecting one of: "allocate, alter, backup, 
beginline, blockrecover, catalog, change, connect, copy, convert, create, crosscheck, 
configure, duplicate, debug, delete, drop, exit, endinline, flashback, host, {, library, 
list, mount, open, print, quit, recover, register, release, replace, report, renormalize, 
reset, restore, resync, rman, run, rpctest, set, setlimit, sql, switch, spool, startup, 
shutdown, send, show, test, transport, upgrade, unregister, validate"
RMAN-01007: at line 1 column 58 file: standard input

Вместо неё можно использовать следующую команду:

RMAN> configure channel device type sbt clear;

old RMAN configuration parameters:
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS  'SBT_LIBRARY=oracle.disksbt 
ENV=(BACKUP_DIR=/u01/app/oracle/admin/orcl/backup)';
old RMAN configuration parameters are successfully deleted

4-4. Включение и выключение автоматического резервирования контрольного файла

Изменения, помещаемые RMAN в контрольный файл и содержание инициализационного файла параметров, могут критично влиять на возможность восстановления базы данных. Для того чтобы не потерять эту важную информацию, в RMAN имеется возможность автоматического резервного сохранения этих двух файлов при операциях резервного копирования. Включить такой режим можно следующей командой:

RMAN> configure controlfile autobackup on;

old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters are successfully stored

Выключить:

RMAN> configure controlfile autobackup off;

old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
new RMAN configuration parameters are successfully stored

или сбросить значение параметра в режим по умолчанию:

RMAN> configure controlfile autobackup clear;

old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP ON;
RMAN configuration parameters are successfully reset to default value

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

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

При включенном режиме RMAN поддержит автоматическое сохранение контрольного файла в следующих случаях:

  • При успешном завершении команд BACKUP или COPY.
  • После того как из командной строки RMAN выполнена команда CREATE CATALOG.
  • При любых структурных изменениях базы данных модифицирующих содержимое контрольного файла.

Резервируемые файлы сохраняются в отдельный резервный набор.

Что касается последнего случая, то здесь необходимо уточнить, что любые изменения в физической структуре базы данных, даже если они делаются, к примеру, через SQL*Plus инициируют автоматическое сохранение контрольного файла. Эти изменения могут включать в себя, например добавление табличного пространства или файла данных, удаление файла данных, переключение табличного пространства в офлайн или онлайн, добавление оперативного журнала, переименование файла данных и т.д. После того как изменение произошло, серверный процессc Oracle (не процесс RMAN) автоматически создаст копию контрольного файла и двоичного файла инициализационных параметров (spfile).

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

Следующие шаги демонстрируют этапы этого восстановления:

  1. Вначале RMAN восстановит серверный файл параметров из местоположения, где он был сохранён автоматически.
  2. Затем RMAN запустит экземпляр базы данных, используя этот файл параметров.
  3. Потом восстанавливается контрольный файл из того же местоположения, где и файл параметров.
  4. Как только контрольный файл смонтировался, RMAN будет соединяться с целевой базой данных в nocatalog режиме и использовать репозитарий RMAN из контрольного файла, чтобы восстановить файлы данных и базу данных.
  5. Здесь можно создать новый каталог восстановления и зарегистрировать в нём целевые базы данных.
  6. RMAN скопирует все записи репозитария RMAN из контрольных файлов целевых баз данных в новый каталог восстановления.

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

4-5. Определение каталога и имени файла при автоматическом резервировании контрольного файла

Если контрольный файл или файл параметров инициализации утеряны, RMAN может легко восстановить базу данных в случае включенного режима автосохранения этих файлов. По умолчанию, при включенной флэш-области восстановления, RMAN сохраняет резервные копии этих файлов в данную область. Когда область отключена, RMAN записывает копии в зависящее от операционной системы специфическое местоположение ($ORACLE_HOME/dbs для Unix и %ORACLE_HOME %\database для Windows). Местоположение можно переопределить, используя для этого команду конфигурирования:

RMAN> configure controlfile autobackup format for device type disk to 
'/u01/app/oracle/admin/orcl/backup_%F';                                        

old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F';
new RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 
'/u01/app/oracle/admin/orcl/backup_%F';
new RMAN configuration parameters are successfully stored

Определяя имя файла, следует включать переменную %F в имя файла. Её использование позволяет получить уникальную комбинацию, состоящую из ID базы данных, дня, месяца, года и последовательности, что не позволит затереть более старые копии.

Для получения путей местоположения по умолчанию, достаточно очистить параметр следующей командой:

RMAN> configure controlfile autobackup format for device type disk clear;

old RMAN configuration parameters:
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 
'/u01/app/oracle/admin/orcl/backup_%F';
RMAN configuration parameters are successfully reset to default value

You have no rights to post comments