Yogeeraj_1
Honored Contributor

Re: file too large

hi michelle,

Maybe you are facing the 2 gig limit on the OS!

I did something a years ago with my Oracle 7 Database exports. Maybe you can find some hints from this.

============================================================The 2 gig limit will apply IF you let export write directly to the file. I use
export to a PIPE and have compress and split read the pipe. The result is a
couple of 500meg compressed files that consistute the export. At 500meg, any
utility can deal with this files and I can move them around easier.

Here is the CSH script I use to show you how it is done. It does a full export
and then tests the integrity of the export by doing a full import show = y.
that gives me a file with all of my source code and ddl to boot.

#!/bin/csh -vx

setenv UID /
setenv FN exp.`date +%j_%Y`.dmp
setenv PIPE /tmp/exp_tmp_ora8i.dmp

setenv MAXSIZE 500m
setenv EXPORT_WHAT "full=y COMPRESS=n"

echo $FN

cd /nfs/atc-netapp1/expbkup_ora8i
ls -l

rm expbkup.log export.test exp.*.dmp* $PIPE
mknod $PIPE p

date > expbkup.log
( gzip < $PIPE ) | split -b $MAXSIZE - $FN. &
#split -b $MAXSIZE $PIPE $FN. &

exp userid=$UID buffer=20000000 file=$PIPE $EXPORT_WHAT >>& expbkup.log
date >> expbkup.log


date > export.test
cat `echo $FN.* | sort` | gunzip > $PIPE &
#cat `echo $FN.* | sort` > $PIPE &
imp userid=sys/o8isgr8 file=$PIPE show=y full=y >>& export.test
date >> export.test

tail expbkup.log
tail export.test

ls -l
rm -f $PIPE

------------ eof -------------------------
============================================================


Otherwise, if you are running an Oracle 8i database, there is already a solution! try:
============================================================
#!/bin/sh
LOG_PATH=/BACKUP/export/logfiles
ORACLE_HOME=/d01/app/oracle/product/8.1.7
DMP_PATH1=/backup1/export
#DMP_PATH2=/backup2/export
ACC_PASS=system/manager
export dt=`date +%Y-%m%d`

$ORACLE_HOME/bin/exp $ACC_PASS filesize=1024M file=\($DMP_PATH1/cmtdbexp"$dt"FULLa.dmp, $DMP_PATH1/cmtdbexp"$dt"FULLb.dmp, $DMP_PATH1/cmtdbexp"$dt"FULLc.dmp, $DMP_PATH1/cmtdbexp"$dt"FULLd.dmp, $DMP_PATH1/cmtdbexp"$dt"FULLe.dmp\) buffer=409600 log=$LOG_PATH/cmtdbexp"$dt"FULL.log full=Y grants=Y rows=Y compress=N direct=n
#YD-12/01/1999
============================================================
Hope this helps

Best Regards
Yogeeraj
No person was ever honoured for what he received. Honour has been the reward for what he gave (clavin coolidge)