Oracle резервное копирование. Бэкап базы Oracle с Bacula Enterprise

Здравствуйте, уважаемые читатели блога сайт! Представляю вашему вниманию статью о бэкапе и воссатновлении бд Oracle. Думаю, этот материал будет полезен для админов, выполняющих бэкапы и восстановление на сервере Оракл посредством Менеджера Восстановления (RMAN).

Бэкап и Восстановление

Для понимания статьи желательно иметь представление в следующих областях:

  • Концепции реляционных баз данных и основы администрирования.
  • Среда ОС, под которой запущена база Оракл.

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

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

Итак, что же такое бэкап и восстановление? Бэкап и восстановление подразумевает под собой различные стратегии и процедуры, связанные с защитой вашей бд от потери информации и восстановления бд после какой-либо разновидности потери данных.

Физические и Логические Бэкапы

Бэкап – это копия данных из вашей БД, которая может быть использована для восстановления. Бэкапы можно разделить на физические бэкапы и логические бэкапы .

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

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

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

Далее термин “бэкап” в данной статье о бэкапе и восстановлении будет означать прежде всего именно физические бэкапы (если не конкретизировано, о каких бэкапах идет речь), и сделать бэкап части или всей бд будет означать – сделать один из видов физического бэкапа. Акцент в статье делается в основном на физических бэкапах.

Ошибки и Сбои, требующие Восстановление из Бэкапа

Тогда как существует несколько типов проблем, которые могут прервать нормальное функционирование бд Oracle или операции ввода-вывода, обычно только две из них требуют вмешательства админа (DBA) и восстановления носителей: собственно сбои носителей (жестких дисков и т.п.), и ошибки пользователей.

Другие сбои могут потребовать вмешательства DBA для перезагрузки базы (после сбоя экземпляра) или выделения дополнительного дискового пространства (после сбоя при выполнении sql предложения из-за, например, переполненного файла данных), но эти ситуайции не приведут, вообще говоря, к потере данных и не потребуют восстановления из бэкапа.

Ошибки пользователей

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

Выход из строя носителей информации

Сбой носителя – это сбой при чтении или записи файла на диске, который требуется для работы базы, из-за физической проблемы с диском. например выъод из строя головки. Любой файл БД может быть поврежден из-за сбоя носителя.

Подходящий способ восстановления после сбоя носителя зависит от того, на какие файлы повлиял сбой, а также от типов доступных бэкапов.

Решения Oracle для Бэкапа и Восстановления: RMAN и Пользовательские Бэкапы

Для выполнения бэкапа и восстановления, основанных на физическом резервном копировании, в вашем распоряжении есть два решения:

  • Менеджер Восстановления – инструмент (работает из командной строки, либо из графического интерфейса Enterprise Manager), который интегрируется с сессиями, запущенными на сервере Oracle для выполнения ряда действий, связанных с бэкапом и восстановлением, а также для поддержания хранения истории о ваших бэкапах
  • Традиционный пользовательский бэкап и восстановление (т.е. осуществляемый и контролируемый самим пользователем), когда Вы напрямую управляете файлами, составляющими вашу бд, используя при этом команды ОС и возможности SQL*Plus, связанные с бэкапом и восстановлением

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

Большая часть статьи будет фокусироваться на бэкапе и восстановлении посредством RMAN. Пользовательские методы бэкапа и восстановления я планирую описать в будущих статьях о бэкапе и восстановлении.

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

Спасибо за внимание! Не пропустите продолжение темы о бэкапе и восстановлении в будущих статьях, которые я постараюсь написать в ближайшем будущем. Удачи!.

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

Содержание:
  • Структура базы данных Oracle Database


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

    Итак, для сохранения, архивирования или бэкапа базы данных 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 можно создать двумя способами:

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

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

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

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

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

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

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

    Для этого:


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

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

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

    • Установите импортированную базу данных


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

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

      Для этого:


      Для примера, восстановления файлов базы данных описан процесс восстановления файлов *.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):


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


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


  • Бэкап Oracle должен выполняться эффективно и быстро, так как серверы БД Oracle обычно применяются в наиболее нагруженных операциях в коммерческом сегменте. Handy Backup организует резервирование бэкапов Oracle через стандартную утилиту Oracle backup RMAN.

    Преимущества использования Oracle RMAN Backup с Handy Backup

    Специализированный плагин бэкапа Oracle в Handy Backup выступает как графическая надстройка (GUI) над стандартной программой Backup RMAN, с сохранением всех функций и возможностей, предоставляемых утилитой RMAN Backup Oracle.

    Бэкап БД Oracle в Handy Backup может выполняться по расписанию в заданное время и через заданные интервалы (от одной минуты до нескольких месяцев включительно), а также при наступлении системного события (вход пользователя в систему, подключение хранилища USB).

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

    С помощью Handy Backup вы можете выполнить смешанный, дифференциальный или инкрементальный бэкап Oracle, сохранить несколько версий бэкапа БД Oracle из одного исходного набора данных, зашифровать или сжать полученный бэкап RMAN и т.д.

    Хранилища для бэкапа базы Oracle

    С помощью Handy Backup можно настроить для утилиты RMAN резервирование бэкапов на разнообразные хранилища данных, включая такие современные носители информации, как:

    • Локальные диски, устройства хранения данных на USB, прикреплённые сетевые диски;
    • Общие сетевые папки, устройства NAS, серверы FTP, SFTP, FTPS, частные облака;
    • Облачные сервисы Яндекс Диск, Google Диск, Amazon S3, Dropbox, OneDrive и другие;
    • Специализированное надёжное хранилище HBDrive, подходящее для бэкапов БД Oracle.

    На заметку: серверные решения Handy Backup Office Expert и Handy Backup Server Network содержат "из коробки" все доступные плагины хранилищ информации, позволяя организовать бэкап базы Oracle в наиболее удобное и надёжное хранилище данных для конкретной задачи.

    Почему удобно использовать бэкап RMAN через Handy Backup?

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

    • Запускайте другие приложения до и после задачи, эффективно заменяя типичный Oracle PL SQL скрипт бэкапа удобным визуализированным решением.
    • Получайте отчёты о задачах бэкапа и просматривайте журналы работы в окне программы или по электронной почте, с настраиваемой периодичностью отправки.

    Как сделать бэкап Oracle с помощью Handy Backup

    Здесь вы найдёте краткую инструкцию по созданию бэкапа базы данных Oracle через Handy Backup. Программа берёт на себя всю работу по взаимодействию с утилитой бэкапа RMAN, позволяя выполнить бэкап БД Oracle и восстановление базы данных из бэкапа автоматически.

    1. для работы с функциями резервного копирования.
    2. Создайте новую задачу в Handy Backup с помощью меню или кнопки "Новая задача".
    3. На Шаге 1 выберите задачу резервного копирования. Нажмите "Далее".
    4. На Шаге 2 выберите плагин Oracle в группе Database на левой панели.

    1. Дважды щёлкните на названии плагина или нажмите ">>".
    2. Откроется диалог выбора данных. Отметьте "галочками" базы данных для бэкапа Oracle.

    1. Нажмите ОК и вернитесь к Шагу 2. Продолжайте БД:

    • Выберите подходящее хранилище на Шаге 3.
    • Выберите создание полного/инкрементального бэкапа Oracle на Шаге 4.

    • Настройте сжатие и/или шифрование на Шаге 5.
    • Задайте расписание работы по времени или по событию на Шаге 6.
    • Запускайте другие программы, команды или пакеты до и/или после задачи на Шаге 7.
    • На Шаге 8 дайте имя вашей задаче и завершите работу мастера новых задач.

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

    Восстановление Oracle из бэкапа

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

    1. Выберите на Шаге 1 задачу восстановления. Перейдите к Шагу 2.
    2. Откройте хранилище данных, найдите каталог бэкапа БД Oracle, а в нём файл backup.hbi.

    1. Дважды щёлкните на имени файла или нажмите "Далее".
    2. Если вы хотите дать Oracle восстановить базу из бэкапа в исходное место, просто нажимайте кнопку "Далее" вплоть до конца работы мастера задач.
    3. Если вы хотите изменить место восстановления, щёлкните на кнопке "Изменить место".

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

    Попробуйте плагин бэкапа Oracle RMAN в работе, скачав и установив прямо сейчас Handy Backup со всеми доступными функциями и плагинами на 30-дневный бесплатный пробный период!

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

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

    В процессе работы экземпляр базы данных 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;

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

      Конфигурационные файлы базы данных Oracle имеют расширение *.ora и расположены в папке:


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

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


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

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

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

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

      SELECT member FROM v$logfile;

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


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

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

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


    • Файл паролей (*.ora) .

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

      Например: PWDXE.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 (backup) можно сделать двумя способами:

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

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

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

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

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

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

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

    Для этого:


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


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

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

    Для этого:


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

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

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

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


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


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



    Есть вопросы?

    Сообщить об опечатке

    Текст, который будет отправлен нашим редакторам: