ITPub博客

首页 > 数据库 > Oracle > 【APP_ORACLE】Oracle EBS R12.1标准克隆(包括数据库层和应用层)

【APP_ORACLE】Oracle EBS R12.1标准克隆(包括数据库层和应用层)

原创 Oracle 作者:Attack_on_Jager 时间:2021-01-12 17:03:38 0 删除 编辑

准备步骤


实验环境

APP:EBS 12.1.1  

DB:Oracle DB 11.1(此文档同样适用于DB 11.2) 

OS:AIX 5.3  (此文档同样适用于Linux)


一、在源系统执行预克隆脚本

         首先,先停应用层,再停数据库层,应用层启停命令:

        启动:$ADMIN_SCRIPTS_HOME/adstrtal.sh apps/xxx

        停止:$ADMIN_SCRIPTS_HOME/adstpall.sh apps/xxx

        DB 层:

cd $ORACLE_HOME/appsutil/scripts/<context>
perl adpreclone.pl dbTier

        APP层:

cd $INST_TOP/admin/scripts
perl adpreclone.pl appsTier

  二、拷贝源应用层和数据库层文件到目标端

         注:源端和目标端的路径最好一致(后面有针对不同路径的解决办法)

        APP层:

         将apps整个目录 tar后 copy到目标机器( 主要文件夹包含APPL_TOP,COMMON_TOP,ORACLE_HOME,IAS_ORACLE_HOME;只有INST_TOP 文件夹不需要打包

        另,应用层的环境变量暂时不需要添加,等克隆完成后添加并source(后文有说明)

         DB层:

         1.    Tar 原数据库 oracle_home到新机器(数据库包括所有11g版本都适用)

        2.   创建用户如 oratest

       3.    设置环境变量 ORACLE_BASE,ORACLE_HOME,PER5LIB, PATH


ORACLE_BASE=/proddb/db/tech_st;export ORACLE_BASE

ORACLE_HOME=$ORACLE_BASE/11.1.0;export ORACLE_HOME
ORACLE_SID=EBSTEST;export ORACLE_SID
PATH=$ORACLE_HOME/bin:$ORACLE_HOME/perl/bin:$ORACLE_HOME/OPatch:$PATH;  export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/dt/lib:/usr/openwin/lib:$ORACLE_HOME/ctx/lib;  export LD_LIBRARY_PATH
PERL5LIB=$ORACLE_HOME/perl/lib/5.10.0:$ORACLE_HOME/perl/lib/site_perl/5.10.0; export PERL5LIB
ORA_NLS10=$ORACLE_HOME/nls/data/9idata;export ORA_NLS10
#. /proddb/db/tech_st/11.1.0/prod_ebsdb01.env  ##这一步先注释掉或者最后添加,等克隆好后再取消注释并source 环境变量

        4.   修改$ORACLE_HOME/oraInst.loc 将Inventory指向新目录

        5.   运行数据库HOME Clone(用一个ORALCE_HOME可不做)

cd $ORACLE_HOME/clone/bin
$ORACLE_HOME/perl/bin/perl 
$ORACLE_HOME/clone/bin/clone.pl ORACLE_BASE=$ORACLE_BASE  ORACLE_HOME=$ORACLE_HOME OSDBA_GROUP=dba OSOPER_GROUP=dba ORACLE_HOME_NAME=${ORACLE_SID}_DB_HOME
orapwd file=$ORACLE_HOME/dbs/orapwEBSTEST password=oracle force=y ignorecase=n
  修改TNS_ADMIN下 listener.ora, tnsnames.ora, sqlnet.ora中的目录
  修改$ORACLE_HOME/dbs/init<SID>.ora, init<SID>_noaq.ora中的目录

        6.   源数据库rman备份数据库,archive log和control file做rman全备份( 3个都要备份; 也可以选择停机冷备

        7.   RMAN目标恢复数据库

        Copy 备份文件到测试机

        Oracle DB 11.2 新功能 不需要连接target database (这里只是展示一下11.2的新功能,此文档DB版本默认基于11.1)

        特殊ASM对ASM 架构中也有2个文件创建时指定了数据文件名,需强制写set newname

SQL>startup nomount
RMAN>connect auxiliary /
RMAN>run
{
set newname for database to '+RECO';
set newname for datafile 15 to '+RECO/ebstest/datafile/cuxd01.dbf';
set newname for datafile 16 to '+RECO/ebstest/datafile/cuxx01.dbf';
set until time "to_date('20201012 10:00','YYYYMMDD HH24:MI')";
duplicate database to EBSTEST
backup location '+RECO/prod/backupset';
}


执行克隆 

三、配置目标数据库层autoconfig

        1) 设置环境变量

export ORACLE_SID=EBSTEST
cd $ORACLE_HOME/appsutil
export TNS_ADMIN=$ORACLE_HOME/network/admin/$ORACLE_SID
cd $ORACLE_HOME/appsutil/bin

        2)生成新的XML文件(可选)

perl adbldxml.pl ##根据提示输入相关信息,生成的XML文件可以自定义路径、端口和应用简称等。但如果源端和目标端路径一致,无需执行此脚本,直接调用源端的xml

        3) 运行adconfig

$ORACLE_HOME/appsutil/bin/adconfig.sh contextfile=$ORACLE_HOME/appsutil/${ORACLE_SID}_`hostname`.xml  ##这个xml就是上一步生成的

        4) 启动listener

Lsnrctl start EBSTEST

        5) 清理FND_NODES

connect apps/apps  ##使用apps用户登录
EXEC FND_CONC_CLONE.SETUP_CLEAN;  ##建议多运行几次
Commit;

        6) 重新运行adconfig

cd $ORACLE_HOME/appsutil/scripts/${ORACLE_SID}_`hostname`
./adautocfg.sh contextfile=$ORACLE_HOME/appsutil/${ORACLE_SID}_`hostname`.xml
===================================================================================================
注:如果DB源端和目标端路径不一致则(该步骤是标准克隆步骤,并且无需生成XML文件,无需执行adconfig.sh)
cd $ORACLE_HOME/appsutil/clone/bin
perl adcfgclone.pl dbTier --根据脚本提示输入新路径及其他信息即可,如:
$ perl adcfgclone.pl dbTier
                     Copyright (c) 2002 Oracle Corporation
                        Redwood Shores, California, USA
                        Oracle Applications Rapid Clone
                                 Version 12.0.0
                      adcfgclone Version 120.31.12010000.1
Enter the APPS password :
Running:
/proddb/db/tech_st/11.1.0/appsutil/clone/bin/../jre/bin/java -Xmx600M -cp /prodd
b/db/tech_st/11.1.0/appsutil/clone/jlib/java:/proddb/db/tech_st/11.1.0/appsutil/
clone/jlib/xmlparserv2.jar:/proddb/db/tech_st/11.1.0/appsutil/clone/jlib/ojdbc5.
jar oracle.apps.ad.context.CloneContext -e /proddb/db/tech_st/11.1.0/appsutil/cl
one/bin/../context/db/CTXORIG.xml -validate -pairsfile /tmp/adpairsfile_249862.l
st -stage /proddb/db/tech_st/11.1.0/appsutil/clone  2> /tmp/adcfgclone_249862.er
r; echo $? > /tmp/adcfgclone_249862.res
Log file located at /proddb/db/tech_st/11.1.0/appsutil/clone/bin/CloneContext_08
26131233.log
Provide the values required for creation of the new Database Context file.
Target System Hostname (virtual or normal) [ebsapp01] :
Target Instance is RAC (y/n) [n] : n
Target System Database SID : prod
Target System Base Directory : /proddb
Target System utl_file_dir Directory List : /usr/tmp/prod
Number of DATA_TOP's on the Target System [1] :
Target System DATA_TOP Directory 1 [/proddb/db/apps_st/data] :
Target System RDBMS ORACLE_HOME Directory [/proddb/db/tech_st/11.1.0] :
Do you want to preserve the Display [ebsdb01:0.0] (y/n) ? : n
Target System Display [ebsapp01:0.0] : ebsapp01:1  --选“1”
Do you want the the target system to have the same port values as the source sys
tem (y/n) [y] ? : y
Complete port information available at /proddb/db/tech_st/11.1.0/appsutil/clone/
bin/out/prod_ebsapp01/portpool.lst
Creating the new Database Context file from :
  /proddb/db/tech_st/11.1.0/appsutil/template/adxdbctx.tmp
The new database context file has been created :
  /proddb/db/tech_st/11.1.0/appsutil/prod_ebsapp01.xml
Log file located at /proddb/db/tech_st/11.1.0/appsutil/clone/bin/CloneContext_08
26131233.log
Check Clone Context logfile /proddb/db/tech_st/11.1.0/appsutil/clone/bin/CloneCo
ntext_0826131233.log for details.
Running Rapid Clone with command:
perl /proddb/db/tech_st/11.1.0/appsutil/clone/bin/adclone.pl java=/proddb/db/tec
h_st/11.1.0/appsutil/clone/bin/../jre mode=apply stage=/proddb/db/tech_st/11.1.0
/appsutil/clone component=dbTier method=CUSTOM dbctxtg=/proddb/db/tech_st/11.1.0
/appsutil/prod_ebsapp01.xml showProgress contextValidated=true
Running:
perl /proddb/db/tech_st/11.1.0/appsutil/clone/bin/adclone.pl java=/proddb/db/tec
h_st/11.1.0/appsutil/clone/bin/../jre mode=apply stage=/proddb/db/tech_st/11.1.0
/appsutil/clone component=dbTier method=CUSTOM dbctxtg=/proddb/db/tech_st/11.1.0
/appsutil/prod_ebsapp01.xml showProgress contextValidated=true
APPS Password :
Setting LIBPATH to /proddb/db/tech_st/11.1.0/appsutil/clone/oui/lib/aix
Beginning database tier Apply - Thu Aug 26 13:14:05 2010
/proddb/db/tech_st/11.1.0/appsutil/clone/bin/../jre/bin/java -Xmx600M -DCONTEXT_
VALIDATED=true  -Doracle.installer.oui_loc=/proddb/db/tech_st/11.1.0/oui -classp
ath /proddb/db/tech_st/11.1.0/appsutil/clone/jlib/xmlparserv2.jar:/proddb/db/tec
h_st/11.1.0/appsutil/clone/jlib/ojdbc6.jar:/proddb/db/tech_st/11.1.0/appsutil/cl
one/jlib/java:/proddb/db/tech_st/11.1.0/appsutil/clone/jlib/oui/OraInstaller.jar
:/proddb/db/tech_st/11.1.0/appsutil/clone/jlib/oui/ewt3.jar:/proddb/db/tech_st/1
1.1.0/appsutil/clone/jlib/oui/share.jar:/proddb/db/tech_st/11.1.0/appsutil/clone
/jlib/oui/srvm.jar:/proddb/db/tech_st/11.1.0/appsutil/clone/jlib/ojmisc.jar   or
acle.apps.ad.clone.ApplyDBTier -e /proddb/db/tech_st/11.1.0/appsutil/prod_ebsapp
01.xml -stage /proddb/db/tech_st/11.1.0/appsutil/clone   -showProgress
APPS Password : Log file located at /proddb/db/tech_st/11.1.0/appsutil/log/prod_
ebsapp01/ApplyDBTier_08261314.log
  \     15% completed
Completed Apply...
Thu Aug 26 13:22:02 2010
Starting database listener for prod:
Running:
/proddb/db/tech_st/11.1.0/appsutil/scripts/prod_ebsapp01/addlnctl.sh start prod
You are running addlnctl.sh version 120.1.12010000.2
Logfile: /proddb/db/tech_st/11.1.0/appsutil/log/prod_ebsapp01/addlnctl.txt
Starting listener process prod ...
Listener prod has already been started.
addlnctl.sh: exiting with status 0

重要:

最后需要把“. /proddb/db/tect_st/11.1.0/prod_ebsdb01.env”这句话(文件路径默认在ORACLE_HOME下)添加到环境变量中并重新应用环境变量


 7) 修改system口令(可选)

sqlplus / as sysdba
alter user system identified by manager;


四、配置目标应用层autoconfig


cd $ADMIN_SCRIPTS_HOME
./adautocfg.sh
===================================================================================================
注:如果APP源端和目标端路径不一致则(该步骤是标准克隆步骤,并且无需生成XML文件,无需执行adconfig.sh,并且自动启动应用层)
cd $COMMON_TOP/clone/bin
perl adcfgclone.pl appsTier --根据脚本提示输入新路径及其他信息即可,如:
$ perl adcfgclone.pl appsTier
                     Copyright (c) 2002 Oracle Corporation
                        Redwood Shores, California, USA
                        Oracle Applications Rapid Clone
                                 Version 12.0.0
                      adcfgclone Version 120.31.12010000.1
Enter the APPS password :
Running:
/prodapp/apps/apps_st/comn/clone/bin/../jre/bin/java -Xmx600M -cp /prodapp/apps/
apps_st/comn/clone/jlib/java:/prodapp/apps/apps_st/comn/clone/jlib/xmlparserv2.j
ar:/prodapp/apps/apps_st/comn/clone/jlib/ojdbc14.jar oracle.apps.ad.context.Clon
eContext -e /prodapp/apps/apps_st/comn/clone/bin/../context/apps/CTXORIG.xml -va
lidate -pairsfile /tmp/adpairsfile_360666.lst -stage /prodapp/apps/apps_st/comn/
clone  2> /tmp/adcfgclone_360666.err; echo $? > /tmp/adcfgclone_360666.res
Log file located at /prodapp/apps/apps_st/comn/clone/bin/CloneContext_0826132503
.log
Provide the values required for creation of the new APPL_TOP Context file.
Target System Hostname (virtual or normal) [ebsapp01] :
Target System Database SID : prod
Target System Database Server Node [ebsapp01] :
Target System Base Directory : /prodapp
Target System Tools ORACLE_HOME Directory [/prodapp/apps/tech_st/10.1.2] :
Target System Web ORACLE_HOME Directory [/prodapp/apps/tech_st/10.1.3] :
Target System APPL_TOP Directory [/prodapp/apps/apps_st/appl] :
Target System COMMON_TOP Directory [/prodapp/apps/apps_st/comn] :
Target System Instance Home Directory [/prodapp/inst] :
Target System Root Service [enabled] :
Target System Web Entry Point Services [enabled] :
Target System Web Application Services [enabled] :
Target System Batch Processing Services [enabled] :
Target System Other Services [enabled] :
Do you want to preserve the Display [ebsapp01:1] (y/n) ? : y  ##默认是“1”就行
Target System Port Pool [0-99] : 0  --此处如果端口冲突,选择其他数字即可
Checking the port pool 0
done: Port Pool 0 is free
Report file located at /prodapp/inst/apps/prod_ebsapp01/admin/out/portpool.lst
Complete port information available at /prodapp/inst/apps/prod_ebsapp01/admin/ou
t/portpool.lst
UTL_FILE_DIR on database tier consists of the following directories.
1. /usr/tmp
2. /usr/tmp/prod
3. /proddb/db/tech_st/11.1.0/appsutil/outbound/prod_ebsapp01
4. /usr/tmp
Choose a value which will be set as APPLPTMP value on the target node [1] : 1
Creating the new APPL_TOP Context file from :
  /prodapp/apps/apps_st/appl/ad/12.0.0/admin/template/adxmlctx.tmp
The new APPL_TOP context file has been created :
  /prodapp/inst/apps/prod_ebsapp01/appl/admin/prod_ebsapp01.xml
Log file located at /prodapp/apps/apps_st/comn/clone/bin/CloneContext_0826132503
.log
Check Clone Context logfile /prodapp/apps/apps_st/comn/clone/bin/CloneContext_08
26132503.log for details.
Running Rapid Clone with command:
perl /prodapp/apps/apps_st/comn/clone/bin/adclone.pl java=/prodapp/apps/apps_st/
comn/clone/bin/../jre mode=apply stage=/prodapp/apps/apps_st/comn/clone componen
t=appsTier method=CUSTOM appctxtg=/prodapp/inst/apps/prod_ebsapp01/appl/admin/pr
od_ebsapp01.xml showProgress contextValidated=true
Running:
perl /prodapp/apps/apps_st/comn/clone/bin/adclone.pl java=/prodapp/apps/apps_st/
comn/clone/bin/../jre mode=apply stage=/prodapp/apps/apps_st/comn/clone componen
t=appsTier method=CUSTOM appctxtg=/prodapp/inst/apps/prod_ebsapp01/appl/admin/pr
od_ebsapp01.xml showProgress contextValidated=true
APPS Password :
Setting LIBPATH to /prodapp/apps/apps_st/comn/clone/oui/lib/aix
Beginning application tier Apply - Thu Aug 26 13:26:19 2010
/prodapp/apps/apps_st/comn/clone/bin/../jre/bin/java -Xmx600M -DCONTEXT_VALIDATE
D=true  -Doracle.installer.oui_loc=/oui -classpath /prodapp/apps/apps_st/comn/cl
one/jlib/xmlparserv2.jar:/prodapp/apps/apps_st/comn/clone/jlib/ojdbc14.jar:/prod
app/apps/apps_st/comn/clone/jlib/java:/prodapp/apps/apps_st/comn/clone/jlib/oui/
OraInstaller.jar:/prodapp/apps/apps_st/comn/clone/jlib/oui/ewt3.jar:/prodapp/app
s/apps_st/comn/clone/jlib/oui/share.jar:/prodapp/apps/apps_st/comn/clone/jlib/ou
i/srvm.jar:/prodapp/apps/apps_st/comn/clone/jlib/ojmisc.jar  oracle.apps.ad.clon
e.ApplyAppsTier -e /prodapp/inst/apps/prod_ebsapp01/appl/admin/prod_ebsapp01.xml
 -stage /prodapp/apps/apps_st/comn/clone    -showProgress
APPS Password : Log file located at /prodapp/inst/apps/prod_ebsapp01/admin/log/A
pplyAppsTier_08261326.log
  \     73% completed
Completed Apply...
Thu Aug 26 13:35:39 2010
Starting application Services for prod:  ##自动启动应用
Running:
/prodapp/inst/apps/prod_ebsapp01/admin/scripts/adstrtal.sh -nopromptmsg
You are running adstrtal.sh version 120.15
The logfile for this session is located at /prodapp/inst/apps/prod_ebsapp01/logs
/appl/admin/log/adstrtal.log
Executing service control script:
/prodapp/inst/apps/prod_ebsapp01/admin/scripts/adopmnctl.sh start
script returned:
****************************************************
You are running adopmnctl.sh version 120.6
Starting Oracle Process Manager (OPMN) ...
adopmnctl.sh: exiting with status 0
adopmnctl.sh: check the logfile /prodapp/inst/apps/prod_ebsapp01/logs/appl/admin
/log/adopmnctl.txt for more information ...
.end std out.
.end err out.
****************************************************
Executing service control script:
/prodapp/inst/apps/prod_ebsapp01/admin/scripts/adalnctl.sh start
script returned:
****************************************************
adalnctl.sh version 120.3
Checking for FNDFS executable.
Starting listener process APPS_prod.
adalnctl.sh: exiting with status 0
adalnctl.sh: check the logfile /prodapp/inst/apps/prod_ebsapp01/logs/appl/admin/
log/adalnctl.txt for more information ...
.end std out.
.end err out.
****************************************************
Executing service control script:
/prodapp/inst/apps/prod_ebsapp01/admin/scripts/adapcctl.sh start
script returned:
****************************************************
You are running adapcctl.sh version 120.7.12010000.2
Starting OPMN managed Oracle HTTP Server (OHS) instance ...
adapcctl.sh: exiting with status 0
adapcctl.sh: check the logfile /prodapp/inst/apps/prod_ebsapp01/logs/appl/admin/
log/adapcctl.txt for more information ...
.end std out.
.end err out.
****************************************************
Executing service control script:
/prodapp/inst/apps/prod_ebsapp01/admin/scripts/adoacorectl.sh start
script returned:
****************************************************
You are running adoacorectl.sh version 120.13
Starting OPMN managed OACORE OC4J instance  ...
adoacorectl.sh: exiting with status 0
adoacorectl.sh: check the logfile /prodapp/inst/apps/prod_ebsapp01/logs/appl/adm
in/log/adoacorectl.txt for more information ...
.end std out.
.end err out.
****************************************************
Executing service control script:
/prodapp/inst/apps/prod_ebsapp01/admin/scripts/adcmctl.sh start
script returned:
****************************************************
You are running adcmctl.sh version 120.17.12010000.3
Starting concurrent manager for prod ...
Starting prod_0826@prod Internal Concurrent Manager
Default printer is noprint
adcmctl.sh: exiting with status 0
adcmctl.sh: check the logfile /prodapp/inst/apps/prod_ebsapp01/logs/appl/admin/l
og/adcmctl.txt for more information ...
.end std out.
.end err out.
****************************************************
Executing service control script:
/prodapp/inst/apps/prod_ebsapp01/admin/scripts/jtffmctl.sh start
script returned:
****************************************************
You are running jtffmctl.sh version 120.3
Validating Fulfillment patch level via /prodapp/apps/apps_st/comn/java/classes
Fulfillment patch level validated.
Starting Fulfillment Server for prod on port 9300 ...
jtffmctl.sh: exiting with status 0
.end std out.
.end err out.
****************************************************
Executing service control script:
/prodapp/inst/apps/prod_ebsapp01/admin/scripts/adformsrvctl.sh start
script returned:
****************************************************
You are running adformsrvctl.sh  version 120.15.12010000.2
Starting FORMS Server in Socket Mode...
adformsrvctl.sh: exiting with status 0
adformsrvctl.sh: check the logfile /prodapp/inst/apps/prod_ebsapp01/logs/ora/10.
1.2/forms/socket.log for more information ...
.end std out.
.end err out.
****************************************************
All enabled services for this node are started.
adstrtal.sh: Exiting with status 0  ##“status=0”就代表所有服务启动成功
adstrtal.sh: check the logfile /prodapp/inst/apps/prod_ebsapp01/logs/appl/admin/
log/adstrtal.log for more information ...

重要:

最后需要把“. /prodapp/app/apps_st/apps/APPSprod_ebsapp01.env”这句话(文件路径默认在APPL_TOP下)添加到环境变量中并重新应用环境变量  


CLONE 后续步骤

1.登录EBS系统更新 profile: 地点名 (location)

2. 更改Workflow配置(可选)

Table Name

Column Name

Column Value Details  

WF_NOTIFICATION_ATTRIBUTES

TEXT_VALUE

Value starts with   http://<old web host>: Update to new web host.

WF_ITEM_ATTRIBUTE_VALUES

TEXT_VALUE

Value starts with   "http://<old web host>: Update to new web host.

WF_SYSTEMS

GUID

Using the Workflow   Administrator Web Applications responsibility, create a new system defined as   the new global database name.

WF_SYSTEMS

NAME

Replace value with   the database global name.

WF_AGENTS

ADDRESS

Update database link   with the new database global name.

FND_FORM_FUNCTIONS

WEB_HOST_NAME

Update with the new   web host name.

FND_FORM_FUNCTIONS

WEB_AGENT_NAME

Update to point at   the new PL/SQL listener name.

FND_CONCURRENT_REQUESTS

LOGFILE_NAME

Update with the correct   path to the logfile directory.

FND_CONCURRENT_REQUESTS

OUTFILE_NAME

Update with the new   directory path on the target system.

3.检查APPLCSF环境变量是否正确

4.更改表ICX_PARAMETERS中的SESSION_COOKIE_DOMAIN=<new domain name>

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69992972/viewspace-2749438/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2021-01-11

  • 博文量
    6
  • 访问量
    2110