我现在正在做Oracle的数据的导出,希望做到在一天的固定时间导出数据
于是我写了两个(从网上借鉴来的)文件,并将其变为了可执行文件下面是我的文件内容:
文件:ora-env
ORACLE_HOME=$ORACLE-HOME;export ORACLE_HOME
ORACLE_SID=ora9i;export ORACLE_SID
#ORACLE_TERM=sun;export ORACLE_TERM
LD_LIBRARY_PATH=$ORACLE-HOME/lib;export LD_LIBRARY_PATH
ORA_NLS32=$ORACLE-HOME/ocommon/nls/admin/data;export ORA_NLS32
PATH=.:/usr/ccs/bin:/usr/ucb:$ORACLE-HOME/bin:$PATH;export PATH
# DISPLAY=host1:0;export DISPLAY
#NLS_LANG=simplified chinese_china.zhs16gbk;export NLS_LANG文件ora-backup:
/u02/oracle/ora-env
#初始化Oracle数据库
rq=`date "+%m%d"`
#把当天日期赋予变量rq
rm /u02/oracle/backup/*.*
# 删除 /u02/oracle/backup/ 目录下所有文件
exp userid=scmis/simcs file=/u02/oracle/backup/exp$rq.dmp OWNER=scmis log=/u02/oracle/exp$rq.log
#导出scmis用户到相应文件中问题是:我在终端上手工执行ora-backup时,好使,但是我将其放入到用户的进行中,却不进行导出,但的的确确该进程执行了,因为backup目录下的文件确实删掉了,但为什么不导出呢?
下面是我的进程:
8 10 * * * /u02/oracle/ora-backup请各位帮帮忙了!!!

解决方案 »

  1.   

    下面是我的进程: BACKUPSS.SH
    8 10 * * * /u02/oracle/ora-backupROOT用戶
    CRONTAB BACKUPSS.SH
    將ora-backup拷貝到/BIN下IS OK!
      

  2.   

    请参考我的shell:
    auto.shrm -fr /u05/dmpbak/mis06.dmp
    mv /u05/dmpbak/mis05.dmp  /u05/dmpbak/mis06.dmp 
    mv /u05/dmpbak/mis04.dmp  /u05/dmpbak/mis05.dmp
    mv /u05/dmpbak/mis03.dmp  /u05/dmpbak/mis04.dmp 
    mv /u05/dmpbak/mis02.dmp  /u05/dmpbak/mis03.dmp 
    mv /u05/dmpbak/mis01.dmp  /u05/dmpbak/mis02.dmp
    mv /u05/dmpbak/mis.dmp  /u05/dmpbak/mis01.dmp
    su - oracle "-c exp SYSTEM/MANAGER@HSMIS file=/u05/dmpbak/mis.dmp full=yes" 然后,在root,crontab -l 查看已有任务, crontab -e 编辑或增加,删除任务
    0 2 * * * /u05/dmpbak/auto.sh  表示:每天两点执行/u05/dmpbak/auto.sh文件
      

  3.   

    To zhxxxm: 
    su - oracle "-c exp SYSTEM/MANAGER@HSMIS file=/u05/dmpbak/mis.dmp full=yes"这句我有点不明白,-c什么意思?
      

  4.   

    -c 就是切换成ORACLE用户后执行后面的CMD。
    估计还是环境变量有些问题。