-
Способы восстановления Oracle из резервной копии RMAN
-
Восстановление Oracle из резервной копии RMAN
-
Как упростить резервное копирование и восстановление Oracle?
-
Часто задаваемые вопросы о восстановлении Oracle из RMAN
-
Заключение
Восстановление данных представляет собой набор методов возврата утраченной информации. Оно может потребоваться после случайного удаления файлов, неправильного форматирования диска или сервера, системного сбоя либо кибератаки. Резервное копирование и восстановление являются одними из наиболее эффективных способов предотвращения потери данных. Перед выполнением описанных ниже действий ознакомьтесь с пошаговым руководством по резервному копированию базы данных Oracle с помощью RMAN.
В этой статье рассматривается восстановление базы данных Oracle из резервных копий RMAN в различных ситуациях, аварийное восстановление с помощью встроенного инструмента Oracle и альтернативное решение с упрощенной процедурой.
Способы восстановления Oracle из резервной копии RMAN
При физическом восстановлении Oracle сначала необходимо вернуть файл данных или управляющий файл из резервной копии. Чтобы привести восстановленный файл данных в согласованное состояние, необходимо применить оперативные и архивные журналы повторного выполнения, содержащие изменения, внесенные после создания резервной копии.
Физические файлы Oracle можно восстановить двумя способами:
Восстановить базу данных Oracle с помощью RMAN.
Восстановить файлы средствами операционной системы, а затем выполнить команду RECOVER в SQL*Plus.
Восстановление Oracle из резервной копии RMAN
1. Запустите клиент RMAN и подключитесь к целевой базе данных, чтобы проверить соединение.
$ rman target / Recovery Manager: Release 10.2.0.3.0 - Production on Wed Sep 28 14:10:30 2022 Copyright (c) 1982, 2005, Oracle. All rights reserved. connected to target database: DEVDB (DBID=111111) RMAN>
2. Определите файлы, которые необходимо восстановить.
Потеря единственной доступной копии управляющего файла может привести к остановке базы данных. Если утрачена только одна из нескольких копий, восстановление из резервной копии может не потребоваться. Процедура восстановления управляющего файла приведена в шаге 6.
Проверьте базу данных и найдите отсутствующие или поврежденные файлы:
RMAN> VALIDATE DATABASE;
3. Просмотрите резервные копии, которые RMAN планирует использовать.
RMAN> RESTORE DATABASE PREVIEW;
Для получения сокращенной сводки выполните:
RMAN> RESTORE DATABASE PREVIEW SUMMARY;
4. Проверьте возможность восстановления из резервных копий.
RMAN> RESTORE DATABASE VALIDATE;
Эта команда проверяет, может ли RMAN восстановить базу данных из доступных резервных копий, не выполняя фактическое восстановление.
RMAN> VALIDATE BACKUPSET ALL;
Команда проверяет целостность доступных наборов резервных копий.
5. Укажите пароль для зашифрованной резервной копии.
RMAN> SET DECRYPTION IDENTIFIED BY password;
6. Восстановите управляющий файл из резервной копии RMAN.
Если все копии управляющего файла недоступны, его необходимо восстановить, а затем смонтировать базу данных. После восстановления файлов следует выполнить RECOVER DATABASE и открыть базу данных с параметром RESETLOGS.
Если RMAN подключен к каталогу восстановления, используйте сведения из него для восстановления текущего управляющего файла. Если имя базы данных не является уникальным, предварительно укажите DBID.
Если каталог восстановления недоступен, восстановите управляющий файл из автоматической резервной копии.
1) Определите DBID. Обычно он содержится в имени автоматической резервной копии управляющего файла после ctl_c-.
RMAN> SET DBID 00000;
2) Запустите базу данных Oracle в режиме NOMOUNT.
RMAN> STARTUP NOMOUNT;
3) Восстановите управляющий файл из автоматической резервной копии RMAN.
RMAN> RESTORE CONTROLFILE FROM AUTOBACKUP;
4) После восстановления управляющего файла смонтируйте базу данных.
RMAN> ALTER DATABASE MOUNT;
5) Восстановите базу данных, примените журналы повторного выполнения и откройте ее с новым набором журналов.
RMAN> RESTORE DATABASE; RMAN> RECOVER DATABASE; RMAN> ALTER DATABASE OPEN RESETLOGS;
7. Восстановите архивные журналы повторного выполнения. База данных должна быть смонтирована или открыта.
Восстановление в расположение по умолчанию:
RMAN> RESTORE ARCHIVELOG ALL;
Восстановление в другое расположение:
RMAN> SET ARCHIVELOG DESTINATION TO 'LOCATIONPATH'; RMAN> RESTORE ARCHIVELOG ALL;
Восстановление архивных журналов с последовательными номерами от 100 до 200:
RMAN> RESTORE ARCHIVELOG FROM SEQUENCE 100 UNTIL SEQUENCE 200;
8. Восстановите базу данных Oracle из полной резервной копии RMAN.
RMAN> RESTORE DATABASE;
После возвращения файлов из резервной копии выполните RECOVER DATABASE, чтобы применить необходимые журналы и привести базу данных в согласованное состояние.
9. Восстановите одно или несколько табличных пространств.
1) Переведите нужное табличное пространство в автономный режим.
SQL> ALTER TABLESPACE users OFFLINE IMMEDIATE;
2) Выполните SHOW ALL, чтобы просмотреть предварительно настроенные каналы. Если каналы отсутствуют, настройте их с помощью CONFIGURE.
3) Восстановите нужные табличные пространства.
RMAN> RESTORE TABLESPACE EXAMPLE; RMAN> RESTORE TABLESPACE EXAMPLE1, EXAMPLE2;
Чтобы восстановить файл данных в другое расположение, предварительно укажите новое имя:
RMAN> SET NEWNAME FOR DATAFILE 'PATH1' TO 'PATH2';
10. Восстановите один или несколько файлов данных.
RMAN> RESTORE DATAFILE 'FILENAME'; RMAN> RESTORE DATAFILE 'FILENAME1', 'FILENAME2';
RMAN поддерживает множество команд для восстановления базы данных Oracle в разных ситуациях. Они предоставляют широкие возможности, но ошибки в параметрах или последовательности действий могут привести к дополнительным проблемам. Перед восстановлением производственной базы данных проверьте команды и резервные копии в тестовой среде.
Как упростить резервное копирование и восстановление Oracle?
RMAN является встроенным и широко используемым средством резервного копирования Oracle. Однако настройка и выполнение сложных заданий восстановления требуют знания команд и архитектуры базы данных. Для автоматизации операций можно использовать профессиональное решение для защиты данных.
Vinchin Backup & Recovery поддерживает резервное копирование и восстановление виртуальных сред, а также баз данных Oracle, MySQL, SQL Server, MariaDB, Postgres Pro и PostgreSQL. Решение предлагает автоматизированные процедуры, гибкие стратегии, централизованное управление и защиту резервных копий от программ-вымогателей.
Для создания задания резервного копирования Oracle необходимо выполнить четыре шага:
1. Выберите базы данных для резервного копирования.

2. Выберите хранилище резервных копий.

3. Настройте стратегию резервного копирования.

4. Отправьте задание на выполнение.

Для восстановления Oracle также можно создать задание с помощью четырехэтапного мастера. Доступны два режима: Override Original Database для восстановления данных на исходный производственный сервер и Create New Database для создания новой базы данных.
Помимо защиты баз данных, решение поддерживает резервное копирование и восстановление ВМ, 15-секундное мгновенное восстановление, межплатформенную миграцию V2V, архивирование данных и другие функции, которые можно оценить в течение 60-дневного пробного периода.
Часто задаваемые вопросы о восстановлении Oracle из RMAN
Вопрос 1. Можно ли восстановить отдельную таблицу из резервной копии RMAN?
Ответ: Да. Необходимо иметь полные резервные копии табличных пространств undo, SYSTEM и SYSAUX, а также табличного пространства, содержащего нужные таблицы или разделы таблиц. Подробная процедура приведена в официальном руководстве Oracle.
Вопрос 2. Чем отличаются RESTORE и RECOVER в RMAN?
Ответ: Эти операции выполняют разные задачи. RESTORE и RECOVER используются последовательно: RESTORE возвращает файлы базы данных из резервной копии, а RECOVER применяет изменения из оперативных и архивных журналов повторного выполнения, чтобы привести базу данных к согласованному состоянию.
Вопрос 3. Можно ли выполнить восстановление RMAN на определенный момент времени?
Ответ: Да, RMAN поддерживает восстановление базы данных на определенный момент времени. Подробные инструкции приведены в официальной документации Oracle.
Заключение
RMAN является мощным инструментом для восстановления Oracle из резервных копий, но его использование требует технических знаний и осторожности. Перед выполнением операций в производственной среде убедитесь в целостности резервных копий и проверьте процедуру восстановления. Vinchin Backup & Recovery автоматизирует задания и позволяет централизованно управлять резервными копиями через единую консоль.