Итак, есть задача организовать резервное копирование схемы и данных из Oracle 10g.
БД крутится на сервере под управлением Windows Server 2003 (он же PDC, AD, DNS/DHCP-сервер, файловый сервер),
Резервирование всех данных с сервера производится раз в 2 недели посредством Acronis True Image, а вот
резервирование базы нужно сделать ежедневное. Для этого пишем батник:
set CURDATE=%DATE%
set nls_lang=russian_cis.ru8pc866
md F:\INSP\ORABASE\%CURDATE:~0,2%%CURDATE:~3,2%%CURDATE:~8,2%
exp.EXE USERID=system(EXP_FULL_DATABASE GRANTS=Y)/*****@orabase FULL=Y FEEDBACK=1000
FILE=F:\INSP\ORABASE\%CURDATE:~0,2%%CURDATE:~3,2%%CURDATE:~8,2%
\full%CURDATE:~8,2%%CURDATE:~3,2%%CURDATE:~0,2%.dat
LOG=F:\INSP\ORABASE\%CURDATE:~0,2%%CURDATE:~3,2%%CURDATE:~8,2%
\full%CURDATE:~8,2%%CURDATE:~3,2%%CURDATE:~0,2%.log
copy F:\INSP\ORABASE\%CURDATE:~0,2%%CURDATE:~3,2%%CURDATE:~8,2%\ \\buhserver\backup_copy\
Как видно из текса, скрипт узнает дату, создает папку с именем, отображающим эту дату, производит экспорт в нее дампа базы, лога.
И на последнем этапе, копирует ее на другой компьютер.
При помощи планировщика windows этот скрипт запускается у меня каждый день в 9 вечера.
