Универсальное программное обеспечение для резервного копирования для пк и серверов. Вводная информация о резервном копировании баз данных Oracle

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).

Бэкап 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 скрипт бэкапа удобным визуализированным решением.
  • Получайте отчёты о задачах бэкапа и просматривайте журналы работы в окне программы или по электронной почте, с настраиваемой периодичностью отправки.

  • Пользуйтесь сетевыми решениями Handy Backup для бэкапа Oracle на удалённых машинах с центральной административной панели.

Как сделать бэкап 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-дневный бесплатный пробный период!

Основные характеристики:

Образ Диска, Бэкап на NAS, Бэкап Открытых Файлов (VSS), Бессрочная Лицензия
Starting from € 29

FREE BACKUP SOFTWARE FOR SERVER AND WORKSTATIONS

BACKUP FREE AND PROFESSIONAL SOLUTIONS

Iperius is a complete Windows utility for data backup. You can use the Freeware version (also for Windows Server) to back up files to NAS, external disks, RDX drives, etc. without any time limitation - or choose an enterprise version, with plenty of backup functions and advanced features: copy of open files (VSS), Drive Image for disaster recovery, backup of ESXi and Hyper-V virtual machines, SQL Server and MySQL database backup, Exchange Server backup, backup to LTO Tape, backup to Cloud (Google Drive, Amazon S3, etc.), backup to FTP/SFTP . Starting from Iperius Free, a trial of the Full version can be activated to test all the features of the software.

Iperius Console

KEEP UNDER CONTROL ALL THE BACKUPS IN A SHOT

Iperius Console is the advanced tool for centralized management and monitoring of your computers and backup. Using either the dedicated desktop application or just the web portal, you can view the results of your backup operations, examine the details of any errors, set and customize the backup schedulings and also run backup jobs remotely. The console integrates perfectly with all the products of Iperius Suite, allowing also to remotely update Iperius Backup to the latest version. The large amount of information provided keeps users updated about the status of every PC and Server where Iperius is installed, making Iperius Console an extremely useful IT Monitoring tool, both for your customers and your company.

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

  • Используя средства операционной системы.
  • Используя утилиты самой базы данных.

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

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

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

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

Утилита RMAN появилась в версии 8g и совершенствовалась в последующих. Настроим эту утилиту для регулярного создания резервных копий нашей базы данных.

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

  • табличные пространства;
  • управляющие файлы;
  • журналы повторного выполнения;
  • файлы данных (init.ora, spfile, tnsnames.ora, listener.ora, orapwd);

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

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

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

Select log_mode from v$database; от любого пользователя с правами sysdba. Если запрос вернул archivelog то всё в порядке переходим к следующему пункту, если noarchivelog то нужно перезапустить базу в режиме archivelog. Для этого нужно перезапустить базу в режиме mount командой:
startup mount immediate и выполнить команду
alter database archivelog; она активирует режим archivelog, после этого остаётся только открыть базу данных командой:
alter database open;

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

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

Select name, value from v$parameter where name like "db_recovery_file_dest%"; если не заданы то задаём командами:
alter system set db_recovery_file_dest_size=50G scope=both; задаёт максимальный размер области пакетного восстановления и
alter system set db_recovery_file_dest="/storage/recovery_area" scope=both; задаёт расположение области пакетного восстановления в файловой системе. Создание области пакетного восстановления необходимо для того что бы rman мог самостоятельно удалять устаревшие копии, а так же отслеживать оставшееся свободное дисковое пространство и предупреждать если его остаётся мало.

После настройки экземпляра можно переходить к настройке самой утилиты rman, для этого подключившись к rman последовательностью команд

Rman connect target user/pass@sid выполняем команду
show all;

первым делом конфигурируем параметры сохранности резервных копий это делается либо параметром CONFIGURE RETENTION POLICY либо устанавливается количество копий которые одновременно хранятся, либо указывается период в который копия считается актуальной. Установим параметр recovery window равный 7 дням командой:

CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS; включим автобэкап контрл файла при каждом создании резервной копии будет создаваться копия контрл файла:
CONFIGURE CONTROLFILE AUTOBACKUP ON; активируем оптимизацию что бы rman не создавал копии файлов уже существуют резервные копии идентичные существующей:
CONFIGURE BACKUP OPTIMIZATION ON; и распараллелим на 2 канала процесс создания резервной копии:
CONFIGURE DEVICE TYPE DISK PARALLELISM 2; Параметры устройства на которое сохраняется информация, шифрования, сжатия, формат автобэкапа контрл файла и максимальный размер файла копии мы менять не будем.

После этой настройки остаётся только создать в операционной системе файлы выполнения для rman и добавить их в планировщик задач.

Для воскресения:

#!/bin/bash export ORACLE_HOME=/u01/11g/ export NLS_LANG=american_america.AL32UTF8 export ORACLE_SID=kagu1251 rman connect target user/pass BACKUP INCREMENTAL LEVEL 0 DATABASE; BACKUP DATAFILE "/oradata/db/admin/kagu/pfile/ init.ora.6302012163819"; BACKUP DATAFILE "/u01/11g/network/admin/ listener.ora"; BACKUP DATAFILE "/u01/11g/network/admin/ tnsnames.ora"; BACKUP DATAFILE "/u01/11g/dbs/spfilekagu.ora"; BACKUP DATAFILE "/u01/11g/dbs/orapwkagu1251";

Для остальных дней:

#!/bin/bash export ORACLE_HOME=/u01/11g/ export NLS_LANG=american_america.AL32UTF8 export ORACLE_SID=kagu1251 rman connect target user/pass BACKUP INCREMENTAL LEVEL 1 DATABASE; BACKUP DATAFILE "/oradata/db/admin/kagu/pfile/ init.ora.6302012163819"; BACKUP DATAFILE "/u01/11g/network/admin/ listener.ora"; BACKUP DATAFILE "/u01/11g/network/admin/ tnsnames.ora"; BACKUP DATAFILE "/u01/11g/dbs/spfilekagu.ora"; BACKUP DATAFILE "/u01/11g/dbs/orapwkagu1251";

Для восстановления всей базы данных после полного их изчезновения применяется команда RESTORE DATABASE, после её выполнения необходимо синхронизировать данные с помощью архивных журналов командой RECOVER DATABASE, восстановление происходит в режиме mount.

Для восстановления конкретного табличного пространства необходимо сначало перевести его в режим OFFLINE командой:

ALTER TABLESPACE user OFFLINE;

После этого выполнить его восстановление и синхронизацию:

RESTORE TABLESPACE user; RECOVER TABLESPACE user; По завершении перевести его в режим online командой:
ALTER TABLESPACE user ONLINE;

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

SET UNTIL TIME "Jan 29 2013 20:00:00";

Это восстановление нужно делать когда база данных находится в режиме mount, а при открытии указать опцию RESETLOGS, что бы не выполнялись изменения сохранённые в журналах повторного выполнения созданные после точки восстановления.

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



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

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

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