Oracle DBA Forum  

Вернуться   Oracle DBA Forum > Oracle University Official Study Notes (RUS) > База данных Oracle 10g Администрирование > База данных Oracle 10g Администрирование II

Ответ
 
Опции темы Опции просмотра
  #1  
Старый 02.10.2009, 19:22
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию 03 Использование Recovery Manager

__________________
Чат форума (требуется аккаунт на github или twitter)
Ответить с цитированием
  #2  
Старый 02.10.2009, 19:23
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Рассматриваемые вопросы



Рассматриваемые вопросы

Recovery Manager (RMAN) - это компонент базы данных Oracle 10g, используемый для выполнения операций резервирования и восстановления. Enterprise Manager (ЕМ) предоставляет графический интерфейс к наиболее часто используемым функциональным возможностям утилиты RMAN.

На занятиях курса База данных Oracle: Администрирование I демонстрировались основные операции RMAN, выполняемые с помощью ЕМ Database Control Console. Поэтому в этом уроке графический интерфейс к RMAN не будет подробно рассматриваться.
__________________
Чат форума (требуется аккаунт на github или twitter)
Ответить с цитированием
  #3  
Старый 02.10.2009, 19:26
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Ввод команд утилиты Recovery Manager



Ввод команд утилиты Recovery Manager

Recovery Manager имеет свой собственный язык команд. Существует несколько путей ввода команд RMAN с использованием интерфейса командной строки (command-line interface - CLI).

Для ввода команд в интерактивном режиме запустите RMAN. Затем вводите команды в интерфейсе командной строки.

Пример:

Код:
$ rman TARGET sys/[email protected] 
RMAN> BACKUP DATABASE;
Можно записать команды в файл, а затем их выполнить, задав имя этого файла в строке вызова утилиты. Это принято называть пакетным режимом обработки (batch mode processing). Файл должен содержать команды, которые обычно вводятся в командной строке.

Пример выполнения командного файла:

Код:
С:\> rman TARGET SYS/[email protected] @'/oracle/backup_all_10.rcv'
В пакетном режиме RMAN читает командный файл и пишет выходные сообщения в журнальный файл (если он задан). RMAN производит синтаксический разбор всего командного файла перед компиляцией и выполнением команд. В файле можно не указывать команду выхода exit, так как RMAN завершает работу при достижении конца файла.

Интерфейс канала (pipe interface) утилиты RMAN предоставляет альтернативный метод ввода команд для утилиты RMAN и получения выходных данных этих команд. RMAN получает команды и передает выходные данные с помощью пакета PL/SQL
DBMS_PIPE.

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

Пример:

Код:
% rman PIPE abc TARGET SYS/[email protected]
RMAN открывает два канала в целевой базе данных: ORA$RMAN_ABC_IN, используемый для приема команд утилитой RMAN, и ORA$RMAN_ABC_OUT - для передачи всех выходных результатов обратно из RMAN. Все сообщения входного и выходного каналов имеют тип VARCHAR2.

При использовании интерфейса канала RMAN не читает и не пишет данные, используя командный процессор (shell) операционной системы. Каналы можно применять для взаимодействия с другим сеансом или с ожидающим сообщения приложением, например программой в UNIX. С помощью этой возможности можно написать переносимый программный интерфейс к RMAN.

Дополнительные сведения об использовании каналов в RMAN см. в документе Oracle Database Backup and Recovery Advanced User's Guide.

Дополнительные сведения о пакете DBMS_PIPE и создании каналов в базе данных см. в документе PL/SQL Packages and Types Reference.
__________________
Чат форума (требуется аккаунт на github или twitter)

Последний раз редактировалось Marley; 04.03.2010 в 08:49.
Ответить с цитированием
  #4  
Старый 02.10.2009, 19:29
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Команды RMAN



Команды RMAN

В RMAN используются два типа команд: одиночные (stand-alone) и работы (job).

Одиночные вводятся после приглашения RMAN и обычно самодостаточные.

Примеры одиночных команд:

CHANGE
CONNECT
CREATE CATALOG, RESYNC CATALOG
CREATE SCRIPT, DELETE SCRIPT, REPLACE SCRIPT

Команды работ обычно группируются и RMAN выполняет их внутри командного блока ("run") последовательно. Если какая-либо команда блока завершается с ошибкой, RMAN прекращает обработку и последующие команды блока не выполняются. Однако результаты уже выполненных команд остаются в силе и никаким образом не отменяются.

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

Некоторые команды (например, BACKUP DATABASE) могут быть введены как одиночные после приглашения RMAN или же выполнены внутри блока, определяемого командой RUN. При вводе подобных одиночных команд RMAN выделяет необходимые каналы, используя возможность автоматического выделения каналов.
Пользователь может выполнять одиночные команды и работы в диалоговом или пакетном режимах.
__________________
Чат форума (требуется аккаунт на github или twitter)
Ответить с цитированием
  #5  
Старый 02.10.2009, 19:30
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Пример работы



Пример работы

В отличие от одиночных команд команды работы должны заключаться в скобки команды RUN.

Примеры команд работы:

ALLOCATE CHANNEL
SWITCH

RMAN выполняет команды внутри командного блока RUN последовательно. Если какая-либо команда блока завершается с ошибкой, RMAN прекращает обработку и последующие команды блока не выполняются.

Команда RUN определяет блок выполняемых команд. После завершения последней команды блока RUN Oracle освобождает все ресурсы на стороне сервера (например, буферы ввода-вывода или подчиненные процессы ввода-вывода), которые были выделены внутри блока.
__________________
Чат форума (требуется аккаунт на github или twitter)
Ответить с цитированием
  #6  
Старый 02.10.2009, 19:32
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Обзор команд RMAN



Обзор команд RMAN

Обычно при работе с целевой базой данных используются следующие команды RMAN:

- BACKUP выполняется на целевой или резервной БД для резервирования базы данных, табличного пространства, файла данных (текущего или копии), управляющего файла (текущего или копии), SPFILE, архивных журналов и резервных наборов. Резервирование резервных наборов представляет собой простой способ их перемещения с диска на ленту.
- DUPLICATE создает клон БД (clone database) или резервную БД (standby database) на основе резервных объектов (резервных наборов или копий образов) целевой БД.
- FLASHBACK выполняет операции отката БД (Flashback Database), которые возвращают базу данных к заданному целевому моменту времени (или непосредственно перед ним), SCN или номеру оперативного журнала.
- RECOVER для восстановления и RESTORE для копирования файлов из резервных наборов или копий образов.


RMAN предоставляет следующие команды получения отчетов:

-LIST запрашивает каталог восстановления или управляющий файл для получения списков резервных наборов, копий архивных журналов и инкарнаций БД.
-REPORT детально анализирует каталог восстановления или управляющий файл.


RMAN предоставляет набор команд для сопровождения каталога восстановления:

- CROSSCHECK проверяет статус резервного набора или копии на диске или ленте.
- DELETE выдает список резервных объектов и запрашивает подтверждение перед их удалением.
- CHANGE используется для изменения статуса резервных объектов в репозитарии.
- LIST отражает результат выполнения команды CROSSCHECK и объекты, которые будут удалены по команде DELETE EXPIRED.
__________________
Чат форума (требуется аккаунт на github или twitter)
Ответить с цитированием
  #7  
Старый 02.10.2009, 19:35
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Команда BACKUP



Команда BACKUP

Backup - это копия данных из вашей БД, используемая для воссоздания данных. В результате операции резервирования, выполняемой с использованием RMAN, могут быть созданы либо копии образов, либо резервные наборы. Копия образа (image сору) совпадает с точностью до бита с копией файла данных. RMAN может также хранить свои бэкапы в собственном формате, называемом резервным набором (backup set). Резервный набор - это совокупность файлов, называемых резервными фрагментами (backup pieces), в каждом из которых могут быть зарезервированы один или несколько файлов БД.

При выполнении резервирования с использованием RMAN можно указать следующее:

Тип резервирования. Можно выполнять полное (FULL) или инкрементальное (INCREMENTAL) резервирование. RMAN автоматически резервирует управляющий файл и текущий файл серверных параметров после команд BACKUP, если включен режиме автоматического резервирования управляющего файла (CONFIGURE CONTROLFILE AUTOBACKUP ON).
Что резервировать. Можно задать такие правильные значения: DATABASE, DATAFILE, TABLE SPACE, ARCHIVELOG, CURRENT CONTROLFILE, SPFILE.
Создавать ли копию образа (AS COPY) или резервный набор (AS BACKUPSET).
Формат имен файлов и местоположение резервных фрагментов (FORMAT).
Какие файлы данных или архивные журналы исключить из резервного набора (SKIP).
Максимальный размер резервного набора (MAXSETSIZE).
Удаление входных файлов после удачного создания резервного набора (DELETE INPUT).
__________________
Чат форума (требуется аккаунт на github или twitter)
Ответить с цитированием
  #8  
Старый 02.10.2009, 19:37
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Ограничения резервирования



Ограничения резервирования

При выполнении резервирования с использованием утилиты Recovery Manager необходимо следующее:

Целевая база данных должна быть смонтирована для того, чтобы с ней можно было установить соединение из утилиты Recovery Manager.
Не поддерживается резервирование оперативных журналов.
Если целевая БД в режиме NOARCHIVELOG, могут быть получены только "чистые" бэкапы табличных пространств и файлов данных (т.е. бэкапы табличных пространств 'только для чтения' или переведенных в автономное состояние с параметром NORMAL). Бэкап базы может быть получен только, если база данных вначале была чисто остановлена и затем запущена в режиме MOUNT.
Если целевая БД в режиме ARCHIVELOG, только "текущие" файлы данных могут быть зарезервированы (при восстановлении выполняется копирование из бэкапа).
Если используется каталог восстановления, БД каталога восстановления должна быть открыта.
__________________
Чат форума (требуется аккаунт на github или twitter)
Ответить с цитированием
  #9  
Старый 02.10.2009, 19:40
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Распараллеливание резервных наборов



Распараллеливание резервных наборов

Администратор может задать конфигурацию параллельного резервирования с помощью параметра PARALLELISM (значение больше 1) в команде CONFIGURE или при ручном выделении каналов. RMAN распараллеливает операции и пишет одновременно в резервные наборы. Файлы назначаются и распределяются между серверными сеансами, выполняющими резервирование.




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

Код:
BACKUP DEVICE TYPE sbt DATAFILE  '/home/oracle/systemOl.dbf'; BACKUP DEVICE TYPE sbt  DATAFILE  1;

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

Распараллеливание операций по созданию резервных наборов достигается:

определением в команде CONFIGURE для параметра PARALLELISM значения, большего 1, или выделением нескольких каналов;
заданием наборов резервируемых файлов.


Пример:

Имеется 9 файлов, которые необходимо зарезервировать (файлы данных с 1 по 9).
Файлы данных аккуратно распределены таким образом, что каждый набор имеет приблизительно одинаковое число блоков данных для резервирования (из соображений эффективности).
- файлы данных 1, 4 и 5 приписаны к резервному набору 1;
- файлы данных 2, 3 и 9 приписаны к резервному набору 2;
- файлы данных 6, 7 и 8 приписаны к резервному набору 3.
Примечание: можно также использовать параметр FILESPERSET для ограничения количества файлов данных, включаемых в один резервный набор.
__________________
Чат форума (требуется аккаунт на github или twitter)
Ответить с цитированием
  #10  
Старый 02.10.2009, 19:42
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Сжатые резервные наборы



Сжатые резервные наборы

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


Следующая команда создает сжатый резервный набор базы данных:

Код:
RMAN> BACKUP AS COMPRESSED BACKUPSET DATABASE;

Сжатые резервные наборы нельзя создавать в базах данных, предшествовавших версии 10g. Параметр инициализации базы данных COMPATIBILITY должен иметь значение не ниже 10.0.0.0. Сжать можно только резервные наборы, но не копии образов.


Автоматическое получение сжатых резервных наборов конфигурируется следующей командой CONFIGURE DEVICE TYPE утилиты RMAN:

Код:
RMAN> CONFIGURE DEVICE TYPE DISK PARALLELISM 2 2> BACKUP TYPE TO COMPRESSED BACKUPSET;
По умолчанию сжатие отключено.
__________________
Чат форума (требуется аккаунт на github или twitter)
Ответить с цитированием
Ответ

Метки
recovery manager, rman
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 08:10. Часовой пояс GMT +3.


Powered by vBulletin®