#!/bin/bash
source /home/oracle/.bash_profile
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
USERNAME=test
PASSWORD="test"
HOSTNAME=`hostname`
BACKUP_BASEDIR=/export/oracle_backup
DB_SID=orclasm
BACKUP_DATE=`date +%Y-%m-%d`
EXPDIRNAME=xhl_file_dir
if [ ! -d $BACKUP_BASEDIR/$USERNAME/`date +%Y-%m-%d` ];then
mkdir -p "$BACKUP_BASEDIR/$USERNAME"
fi
ALIAS_LOG=${USERNAME}_DATA_${BACKUP_DATE}
rm -rf $BACKUP_BASEDIR/$USERNAME/$ALIAS_LOG*
expdp_data_backup()
{
expdp $USERNAME/$PASSWORD@$DB_SID SCHEMAS=$USERNAME DIRECTORY=$EXPDIRNAME DUMPFILE=$1_%U.dmp FILESIZE=20G LOGFILE=$1.log exclude=statistics compression=all parallel=4 CLUSTER=N
}
#expdp test/test@orclasm schemas=test directory=xhl_file_dir dumpfile=test.dmp filesize=20G logfile=test.log exclude=statistics compression=all parallel=4 cluster=N
expdp_data_backup $ALIAS_LOG
sqlplus -S $USERNAME/$PASSWORD@$DB_SID <<EOF
INSERT INTO XHL_BACKUP_LOG(BACKTIME) VALUES(to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'));
COMMIT;
EOF
简单的shell数据库备份脚本
最新推荐文章于 2023-07-28 11:46:48 发布