Задача: Провести реимпорт данных с удаленного сервера. Задача осложняется слабым каналом, а также версией Oracle - Standart Edition One, которая не поддерживает datapump опции compression = all.
Имя схемы передается в качестве параметра (%1) для пакетного файла.
rem Считаем, что имя хоста совпадает с именем базы в TNS
set rem_hst=REMOTE
rem rem_dir - это data_pump_dir на удаленной машине.
set rem_dir=oracle\ora11\RDBMS\log
rem Login и пароль для net use'a
set rem_usr=localhost\dbax
set rem_psw=p@S$w0Rd
rem Экспорт дампа и архивирование его через wmic.
expdp dbax/p@S$w0Rd@%rem_hst% dumpfile=%1.dmp schemas=%1 logfile=%1.log reuse_dumpfiles=yes
wmic /node:"%rem_hst%" /user:%rem_usr% /password:"%rem_psw%" process call create "zip E:\%rem_dir%\%1.zip E:\%rem_dir%\%1.dmp"
rem Копирование с возобновлением в случае падения сети.
net use \\%rem_hst%\e$ /user:%rem_usr% %rem_psw%
:copy
copy \\%rem_hst%\e$\%rem_dir%\%1.zip c:\app\oracle\datapump\ /z
if %ERRORLEVEL% NEQ 0 goto :copy
net use \\%rem_hst%\e$ /delete
rem Распаковка и импорт данных на локальной машине.
unzip -j c:\app\oracle\admin\orcl\dpdump\%1.zip -d c:\app\oracle\admin\orcl\dpdump\
impdp dbax/p@S$w0Rd dumpfile=%1.dmp schemas=%1 logfile=%1.log directory=DataPump
rem Удаляем дамп и архив.
del c:\app\oracle\admin\orcl\dpdump\%1.zip
wmic /node:"%rem_hst%" /user:%rem_usr% /password:"%rem_psw%" process call create "cmd /c del E:\%rem_dir%\%1.zip E:\%rem_dir%\%1.dmp"
Имя схемы передается в качестве параметра (%1) для пакетного файла.
rem Считаем, что имя хоста совпадает с именем базы в TNS
set rem_hst=REMOTE
rem rem_dir - это data_pump_dir на удаленной машине.
set rem_dir=oracle\ora11\RDBMS\log
rem Login и пароль для net use'a
set rem_usr=localhost\dbax
set rem_psw=p@S$w0Rd
rem Экспорт дампа и архивирование его через wmic.
expdp dbax/p@S$w0Rd@%rem_hst% dumpfile=%1.dmp schemas=%1 logfile=%1.log reuse_dumpfiles=yes
wmic /node:"%rem_hst%" /user:%rem_usr% /password:"%rem_psw%" process call create "zip E:\%rem_dir%\%1.zip E:\%rem_dir%\%1.dmp"
rem Копирование с возобновлением в случае падения сети.
net use \\%rem_hst%\e$ /user:%rem_usr% %rem_psw%
:copy
copy \\%rem_hst%\e$\%rem_dir%\%1.zip c:\app\oracle\datapump\ /z
if %ERRORLEVEL% NEQ 0 goto :copy
net use \\%rem_hst%\e$ /delete
rem Распаковка и импорт данных на локальной машине.
unzip -j c:\app\oracle\admin\orcl\dpdump\%1.zip -d c:\app\oracle\admin\orcl\dpdump\
impdp dbax/p@S$w0Rd dumpfile=%1.dmp schemas=%1 logfile=%1.log directory=DataPump
rem Удаляем дамп и архив.
del c:\app\oracle\admin\orcl\dpdump\%1.zip
wmic /node:"%rem_hst%" /user:%rem_usr% /password:"%rem_psw%" process call create "cmd /c del E:\%rem_dir%\%1.zip E:\%rem_dir%\%1.dmp"
Комментарии
Отправить комментарий