aix下oracle的定时备份脚本及几个问题的解决

#!/bin/ksh
#backup_ihome.sh
#每个星期六备份ihome数据库
#linux的定时任务执行backup_ihome.sh
#ihomebackup.sh 再用oracle用户执行execute_back_ihome.sh
#30 23 * * 6 /shnfs1/ihome/backup/backup_ihome.sh

#AIX下定时备份数据库

su - oracle -c "/shnfs1/ihome/backup/execute_back_ihome.sh"

 

 

#!/bin/ksh
#execute_back_ihome.sh
#每个星期六备份ihome数据库
#linux的定时任务执行backup_ihome.sh
#ihomebackup.sh 再用oracle用户执行execute_back_ihome.sh
#30 23 * * 6 /shnfs1/ihome/backup/backup_ihome.sh

 

#AIX下定时备份数据库

 


rq=`date +20%y%m%d`
export ORACLE_HOME=/usr/oracle/product/10.2.0
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
export BACKUP=/shnfs1/ihome/backup
$ORACLE_HOME/bin/exp mblog/zaqWSX123 file=$BACKUP/ihome_backup_$rq.dmp log=$BACKUP/ihome_backup_$rq.log owner=mblog

 

 

 在backup_ihome.sh之所以用su - oracle -c "/shnfs1/ihome/backup/execute_back_ihome.sh"

是因为linux在脚本中执行su - oracle 后 不会继续执行下面的语句。最简单的办法就是把后面的语句写到一个sh脚本中。

然后用-c 参数执行。

 


exp-00091:

对一个DBA或需使用exp,imp的普通用户来说,在我们做exp的过程中可能经常会遇到EXP00091 Exporting questionable statistics.这样的EXP信息,其实它就是experror message,它产生的原因是因为我们exp工具所在的环境变量中的NLS_LANGDB中的NLS_CHARACTERSET不一致。但需说明的是,exp-91这个error message对所生成的dump档没有影响,生成的dump档还可以正常的imp(个人体会,不知道有没有
错),虽然它对我们的dump档没有影响,我个人还是不想它出现,大家也有同感吧, 。。下面我们就让它消失吧


step 01 查看DB中的NLS_CHARACTERSET的值(提供两种方法):

select * from nls_database_parameters t where
t.parameter='NLS_CHARACTERSET'
or
select * from v$nls_parameters where
parameter='NLS_CHARACTERSET';
SQL> select * from v$nls_parameters where
parameter='NLS_CHARACTERSET';
PARAMETER          VALUE
----------------------- -------------------------
---------------------
NLS_CHARACTERSET    ZHT16BIG5

step 02
根据step 01查出的NLS_CHARACTERSETZHT16BIG5)来设定
exp
的环境变量:

WINNT> set NLS_LANG=AMERICAN_AMERICA.ZHT16BIG5
LINUX> export NLS_LANG=AMERICAN_AMERICA.ZHT16BIG5

exp-00028:

对于EXP-00028 很可能是log生成的日志oracle用户没有权限.

 

 

 

 

 

 

发布了32 篇原创文章 · 获赞 16 · 访问量 19万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章