expdp导出再rac得另一个主机上

问题:

客户反馈,一套11.2.0.4 RAC环境中,写了一个Shell脚本,每天定时执行,但是备份得文件,有得时候再另一个节点出现,有得时候正常???

思路:

备份得文件,使用expdp,什么情况下文件,会导出到另一个节点服务器上?

1.使用了parall并行参数,但是没用添加cluster,因为并行可能会再另一个实例上运行,导出得文件也在另一个节点上执行导出;

2.使用了远程方式,连接了RAC得另一个实例(再12c pdb中,如果需要导出,必须通过网络,但是11g没多大必要性);

向客户获取Expdp脚本

#!/bin/bash
source /home/oracle/.bash_profile
export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
_user=ccc
_pwd=ccc
_sid=abcdefg
#_nodate=`date +%Y%m%d`
_nodate=20200115
dat=`date +%Y%m%d -d -1days`
dat=20200114
export ORACLE_SID=abcdefg
/u01/app/oracle/product/11.2.0/dbhome_1/bin/expdp ${_user}/${_pwd}@${_sid} directory=DIRDUMP
file=/oradata/enen$_nodate.dump tables=safsadf${dat},sadfsda${dat},afdsafd${dat},asdfadsf${dat},asdfdsf${dat}
log=/oradata/safds$_nodate.log #chown oracle:oinstall /oradata/enen$_nodate.dump /oradata/enen$_nodate.log tar -cZf /oradata/enen$_nodate.tar.gz /oradata/enen$_nodate.dump /oradata/enen$_nodate.log --remove-files
客户脚本,内容进行了替换脱敏,内容不重要,重要得是重现问题。

发现存在@TNS 远程,因此建议脚本删除@TNS信息

另外一种解决方法,$tnsping xxx 发现是使用得SCAN_IP进行连接,将tns文件写上当前节点得vip或者public ip固定IP也能解决问题。

再次执行脚本,报错

UDE-01034

ORA-01034

ORA-27101

linux-x86_64 Error:

UDE-00003

    仔细观察脚本,其中存在ORACLE_SID=XXX???  RAC实例一般存在序列,修改SID实际当前节点,问题解决。

原文地址:https://www.cnblogs.com/lvcha001/p/12200882.html