Резервное копирования и восстановление данных базы Oracle Database

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

Структура базы данных Oracle Database

Перейти к просмотру
Методы восстановления базы данных MySQL, MSSQL и Oracle ⚕️👨‍💻🖥️

Методы восстановления базы данных MySQL, MSSQL и Oracle ⚕️👨‍💻🖥️


Перейти к просмотру
Восстановление удаленной или поврежденной базы данных 1C: крах, ошибки 💥 🥇 ⚕️

Восстановление удаленной или поврежденной базы данных 1C: крах, ошибки 💥 🥇 ⚕️

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

  • Файлы данных и табличных пространств (*.DBF).

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

    SELECT t.name “Tablespace”, f.name “Datafile” FROM v$tablespace t, v$datafile f WHERE t.ts# = f.ts# ORDER BY t.name;

    В результате работы этого запроса получится подобный отчет:

    SQL Command Line
    *.DBF файлы базы
  • Файлы конфигурации базы данных (*.ora).

    Конфигурационные файлы базы данных Oracle имеют расширение *.ora и расположены в папке:
    C:\oraclexe\app\oracle\product\11.2.0\server\dbs

    *.ora файлы базы
  • Управляющие файлы базы данных (*.DBF).

    Самый простой способ определить путь и названия управляющих файлов, это найти в конфигурационном файле *.ORA строку control_files, в которой будут перечислены используемые этим экземпляром управляющие файлы.

    Определить путь и названия управляющих файлов с Notepad++

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

    SELECT value FROM v$parameter WHERE name = ‘control_files’;

    Запуск SQL Command Line
  • Файлы журналов транзакций (*.LOG).

    Чтобы узнать имена онлайновых журналов транзакций и пути к ним, необходимо в SQL Plus выполнить следующий запрос:

    SELECT member FROM v$logfile;

    В результате работы этого запроса получится подобный отчет:

    SQL Command Line: Файлы журналов транзакций (*.LOG)

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

    SELECT destination FROM v$archive_dest where status=’VALID’;

    В результате работы этого запроса получится отчет:

    SQL Command Line: пути к папкам, где хранятся архивные журналы
  • Файл паролей (*.ora).

    Как правило, это файлы с расширением *.ora, имя которых начинается с символов PWD.
    Например: PWDXE.ora

    Путь: C:\oraclexe\app\oracle\product\11.2.0\server\database

    Файл паролей *.ora

Итак, для сохранения, архивирования или бэкапа базы данных Oracle Database, копии именно указанных групп файлов следует создавать, а это:

  • *.DBF – файлы данных, табличных пространств и управляющие файлы базы данных. Расположены:
    C:\oraclexe\app\oracle\oradata\XE
  • *.ora – файлы конфигурации базы данных и файлы паролей.
    Файлы конфигурации:
    C:\oraclexe\app\oracle\product\11.2.0\server\dbs
    Файлы паролей (PW…ora):
    C:\oraclexe\app\oracle\product\11.2.0\server\database
  • *.LOG – файлы журналов транзакций:
    C:\oraclexe\app\oracle\fast_recovery_area\XE\ONLINELOG

где, ХЕ – это название базы данных в нашем случае.

Резервная копия базы данных Oracle Database

Резервную копию базы данных Oracle Database можно создать двумя способами:

  • Архивации средствами операционной системы.
  • Используя встроенные инструменты Oracle Application Express – Import / Export.

Архивация средствами операционной системы

Архивация средствами операционной системы подразумевает «ручное» копирование всех рабочих файлов базы данных, таких как:

  • Файлы табличных пространств.
  • Управляющие файлы.
  • Файлы журналов транзакций.
  • Файлы конфигурации.

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

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

Архивация и восстановление при помощи инструментов Export / Import

Архивацию и восстановление базы данных Oracle Database можно производить с помощью стандартных механизмов Экспорта и Импорта в Oracle. Для повышения надежности сохранности данных необходимо периодически, в зависимости от интенсивности работы с базой, производить полный экспорт. При достаточно интенсивном внесении изменений в данные, необходимо делать экспорт один раз в неделю.

Для этого:

  • Откройте Oracle Application Express и выберите меню Application Builder / Export

    Откройте Oracle Application Express
  • Укажите тип экспорта: рабочее пространство полностью или одну из его составляющих

    Oracle Application Express: Укажите тип экспорта
  • Установите формат файла для экспорта данных и нажмите кнопку Export Workspace (справа)

    Oracle Application Express: Установите формат файла для экспорта
  • После указания места сохранения файла экспорта данных, они будут сохранены в SQL-файле.

Импорт файла, созданного раннее архива, осуществляется аналогичным образом:

  • Откройте Oracle Application Express и выберите меню Application Builder / Import

    Oracle Application Express: Импорт файла архива
  • Выберите файл для импорта и укажите его тип

    Резервное копирования и восстановление данных базы Oracle Database
  • Установите импортированную базу данных

    Oracle Application Express: Выберите файл для импорта и укажите его тип

Восстановление утерянной базы данных Oracle Database

В случае удаления или утери по какой-то из причин базы данных Oracle Database, её можно восстановить, восстановив файлы с помощью Hetman Partition Recovery и восстановить их способом, описанном в разделе «Архивация средствами операционной системы».

Инструмент восстанавливает файлы с любых устройств, независимо от причины потери данных.

Для этого:

  • Запустите Hetman Partition Recovery и проанализируйте с её помощью диск на котором находилась база данных

    Hetman Partition Recovery. Тип анализа
  • Дождитесь окончания процесса анализа и перейдите с помощью программы в папку с необходимыми файлами базы Oracle Database

    Hetman Partition Recovery: Дождитесь окончания процесса анализа и перейдите с помощью программы в папку с необходимыми файлами базы Oracle Database
  • Восстановите их

    Hetman Partition Recovery. Восстановить
  • Замените файлы базы Oracle Database на восстановленные.

Для примера, восстановления файлов базы данных описан процесс восстановления файлов *.DBF. Но учтите, что для восстановления всех данных работоспособной базы, также необходимо восстановить соответствующие *.ORA и *.LOG файлы.

Резервирование и восстановление базы данных с помощью Oracle Recovery Manager (RMAN)

Oracle Recovery Manager (RMAN) – это ещё один инструмент создания резервной копии базы данных Oracle Database. Отличается он от других инструментов тем, что с его помощью создаётся полная копия всей базы данных, а не только данных из неё. А также, что немаловажно, Oracle Recovery Manager совмещает в себе функциональность SQL Command Line одновременно освобождая пользователя от полной зависимости от её команд. Устанавливается данный инструмент на компьютер одновременно и вместе с установкой Oracle Database.

Чтобы создать резервную копию базы с помощью Oracle Recovery Manager (RMAN):

  • Запустите файл Backup.bat в папке
    C:\oraclexe\app\oracle\product\11.2.0\server\bin

    C - oraclexe - app - oracle - product - 11.2.0 - server - bin

    или выберите Backup Database среди приложений в меню Пуск

    Пуск: Backup Database
  • Дождитесь окончания выполнения бэкапа базы данных инструментом RMAN

    Дождитесь окончания выполнения бэкапа базы данных инструментом RMAN
  • В результате в папке с названием даты создания резервной копии базы будет создан файл бэкапа с расширением *.BKP

    В результате будет создан файл бэкапа с расширением *.BKP

Чтобы восстановить базу данных из резервной копии базы с помощью Oracle Recovery Manager (RMAN):

  • Запустите файл Restore.bat в папке
    C:\oraclexe\app\oracle\product\11.2.0\server\bin

    C - oraclexe - app - oracle - product - 11.2.0 - server - bin

    или выберите Restore Database среди приложений в меню Пуск

    Пуск: Restore Database
  • Дождитесь окончания выполнения базы данных из созданного раннее бэкапа инструментом RMAN

    Дождитесь окончания выполнения базы данных из созданного раннее бэкапа инструментом RMAN

К слову, в случае утери или удаления файла бэкапа базы данных Oracle Database, *.BKP файл бэкапа можно также восстановить с помощью Hetman Partition Recovery, после чего восстановить описанным выше способом в базе данных используя Oracle Recovery Manager (RMAN).

Hetman Partition Recovery. Восстановить
Vladimir Mareev

Автор: , Технический писатель

Владимир Мареев - автор и переводчик технических текстов в компании Hetman Software. Имеет тринадцатилетний опыт в области разработки программного обеспечения для восстановления данных, который помогает ему создавать понятные статьи для блога компании. Спектр публикаций довольно широк и не ограничивается только лишь темой программирования. Статьи включают также разнообразные обзоры новинок рынка компьютерных устройств, популярных операционных систем, руководства по использованию распространенных и специфических программ, примеры решений возникающих системных или аппаратных проблем и многие другие виды публикаций.

Michael Miroshnichenko

Редактор: , Технический писатель

Мирошниченко Михаил – одни из ведущих программистов в Hetman Software. Опираясь на пятнадцатилетний опыт разработки программного обеспечения он делится своими знаниями с читателями нашего блога. По мимо программирования Михаил является экспертом в области восстановления данных, файловых систем, устройств хранения данных, RAID массивов.

Рекомендуем для вас

Вас приветствует ассистент Hetman Software, созданный на основе искусственного интеллекта.
Начать Чат