expdp备份脚本
backup_upload.sh /backup/ 10.2.128.7 10.2.128.3
$1 $2 $3
!/bin/bash
DIR=backup
OS_DIR=/backup
fileDate=date +"%Y%m%d%H%M%S"
logFile="full_${fileDate}.log"
file="full_${fileDate}.dmp"
userName=system
userPass=oracle
dbname=mycim4
source $HOME/.bash_profile
tmpfile=mktemp
dest_dir=$1
src_ipaddr=$2
dest_ipaddr=$3
echo "alter user system account unlock;" >> $tmpfile
echo "exit;" >> $tmpfile
sqlplus / as sysdba @$tmpfile
rm -rf $tmpfile
clear_day=1
backupresult=""
$ORACLE_HOME/bin/expdp $userName/$userPass@${src_ipaddr}/$dbname directory=$DIR dumpfile=$file logfile=$logFile full=y
$ORACLE_HOME/bin/expdp uac_pirun/uac123456 directory=$DIR dumpfile=$file logfile=$logFile schemas=uac_pirun
if [[ $? -eq 0 ]]
then
find $OS_DIR -mtime +${clear_day} -name ".dmp" -exec rm -rf {} ;
find $OS_DIR -mtime +${clear_day} -name ".log" -exec rm -rf {} ;
echo date +"%Y-%m-%d %H:%M:%S" "已删除${clear_day}天前的dmp文件!" | tee -a $logFile
cd $OS_DIR
tar -czf $file.tar.gz $file
if [[ $? -eq 0 ]]
then
scp $file.tar.gz root@$dest_ipaddr:$dest_dir
sleep 5
if [[ $? -eq 0 ]]
then
dest_md5sum=ssh root@$dest_ipaddr md5sum $dest_dir/$file.tar.gz|awk '{print $1}'
src_md5sum=md5sum $file.tar.gz|awk '{print $1}'
if [ x"$dest_md5sum" == x"$src_md5sum" ]
then
#echo date +"%Y-%m-%d %H:%M:%S" $ipaddr "success"
backupresult="0"
else
backupresult="-1"
fi
else
backupresult="-1"
fi
else
backupresult="-1"
fi
else
backupresult="-2"
fi
filedate=date +"%Y%m%d"
echo date +"%Y-%m-%d %H:%M:%S" $src_ipaddr "$backupresult" >> /mnt/backup/backup_result/backup_check_$filedate.csv
ssh root@$dest_ipaddr "echo date +'"%Y-%m-%d %H:%M:%S"',$src_ipaddr,$backupresult>> /databak/backup_result/backup_check_$filedate.csv"
if [ -f "$OS_DIR/$file.tar.gz" ]
then
rm -rf $OS_DIR/$file.tar.gz
fi
exp/imp:
/u01/app/oracle/product/19.3.0/db/bin/imp system/oracle file=/u01/app/oracle/product/19.3.0/db/eapdb20251014.dmp log=eapdb20251014.log fromuser=OCFEAP touser=FAEAP ignore=y

浙公网安备 33010602011771号