Wednesday, January 21, 2009

export in Windows (.bat file) and Linux (.sh file)

How to create a batch file in Windows to take full DB backup:-

exp utility: -


for /f "tokens=1,2" %%u in ('date /t') do set d=%%v
for /f "tokens=1" %%u in ('time /t') do set t=%%u
if "%t:~1,1%"==":" set t=0%t%
set timestr=%d:~6,4%%d:~0,2%%d:~3,2%_%t:~0,2%%t:~3,2%
set copydmp=filename_%timestr%_%computername%.dmp
set copylog=filename_%timestr%_%computername%.log
set ORACLE_SID=(sid_name)
exp username/password file=E:\%copydmp% log=E:\%copylog% full=y

expdp utility: -

for /f "tokens=1,2" %%u in ('date /t') do set d=%%v
for /f "tokens=1" %%u in ('time /t') do set t=%%u
if "%t:~1,1%"==":" set t=0%t%
set timestr=%d:~6,4%%d:~0,2%%d:~3,2%_%t:~0,2%%t:~3,2%
set copydmp=filename_%timestr%_%computername%.dmp
set copylog=filename_%timestr%_%computername%.log
set ORACLE_SID=(sid_name)
expdp username/password directory=data_pump_dir dumpfile=%copydmp% logfile=%copylog% full=y

How to write a shell to take full DB backup:-

exp utility: -

export ORACLE_SID=sid_name
export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
echo $ORACLE_HOME
echo $ORACLE_SID
echo 'EXPORTING FULL DB'
exp system/password@sid_name file=full_expdp_dbname_`date +%d%m%H%M`.dmp log=full_expdp_dbname_`date +%d%m%H%M`.log full=y

expdp utility: -

export ORACLE_SID=sid_name
export ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
echo $ORACLE_HOME
echo $ORACLE_SID
echo 'EXPORTING FULL DB'
expdp system/password@sid_name directory=data_pump_dir dumpfile=full_expdp_dbname_`date +%d%m%H%M`.dmp logfile=full_expdp_dbname_`date +%d%m%H%M`.log full=y