2009-11-18 11 views
2

Вот хороший для всех гуру Oracle. Я работаю над веб-страницей, которая динамически настраивает параметры резервного копирования Oracle DB в закрытой среде. Прямо сейчас у меня есть все, чтобы создать запланированные задания, которые запускают заранее определенные скрипты RMAN, которые уже существуют на диске сервера базы данных. Это работает, но я хочу сделать еще один шаг.Запуск скриптов RMAN с планировщиком заданий (Oracle)

Есть ли способ создать задания с планировщиком, который будет запускать скрипты RMAN, которые ранее не были записаны на диск? Например, можно ли запустить сценарий резервного копирования RMAN непосредственно из планировщика, используя какой-то канал? Я нашел некоторую неопределенную информацию о RMAN Pipe Interface, но я не могу понять, как я могу создать частный канал, упаковать его с помощью RMAN-команд, а затем передать его RMAN на одном запуске ... Любые мысли будут очень очень признателен.

ответ

1

Во всем, что связано с резервным копированием/восстановлением базы данных, я рекомендую вам использовать средства ОС для выполнения запланированных заданий (cron/at on unix, Запланированные задачи в Windows). Преимущество состоит в том, что они независимы от экземпляра oracle, и вы можете лучше обрабатывать случаи, когда экземпляр oracle не работает или работает неправильно. Интерфейс «RMAN pipe» предназначен для использования вместе с оболочкой операционной системы.

Однако выполнение сценариев непосредственно из базы данных также возможно: AskTom

+0

Ну, я думаю, проблема здесь в том, что веб-сервер и сервер баз данных часто находятся на разных физических машинах. Это означает, что я могу только планировать задания на веб-сервере, поэтому не очень полезно использовать планировщик ОС. Я действительно чувствую, что есть способ заставить Трубы работать, но я просто не могу получить все маленькие кусочки вместе. –

+0

Отлично, пожалуйста, прочтите мой ответ в AskTom и оцените, помогло ли оно вам. – Juraj

0

Если вы хотите использовать DBMS_SCHEDULER то скрипт должен находиться на сервере базы данных.
Но если вы устанавливаете клиента Oracle на веб-сервере, вы можете запустить RMAN и подключиться к базе данных TARGET. Например:

rman 'usr/[email protected]_str AS SYSDBA' CMDFILE /home/www/db/backup-full.rman 

В этом случае сценарий может находиться на веб-сервере.
Надеюсь, это поможет.