Oracle EBS 缺少adcfgclone.pl文件

前言

Oracle EBS 可以通过克隆实现多个环境,如:SIT、UAT、TEST。提供给不同的用户做不同方向的测试。即便多个环境在同一网段也不受任何影响。同时也可以通过克隆实现容灾环境,如果用户要求不是特别严格的情况下。该方式在HK电讯行业的头部公司也投入运营。下面就clone最重要的文件进行讲解--adcfgclone.pl

克隆

克隆又分预克隆和克隆。其中预克隆是在原环境中执行,克隆是在目标环境中执行。

  • 预克隆
    当原环境执行完预克隆后,在原环境下会生成两个主要文件'addbhomsrc.xml'和'adcrdbclone.sql ',XML文件是新环境配置的蓝本,其中包含源库oracle_home、hostname、sid、instance_name、port、undo等信息。sql文件是新环境构建数据库的指令,其中新建数据库控制文件的模板、更新SID、临时表空间及参数文件的建立。还会产生模板文件
  • 克隆
    在目标环境执行克隆时,该系统必须在原环境执行过预克隆。如果没有执行过预克隆,则无法在目标环境执行克隆。
  • adcfgclone.pl文件
    当前文件用于目标环境执行实例信息更改时使用。EBS在首次执行clone时,原环境仅存在adpreclone.pl文件,并没有adcfgclone。没有该文件就无法执行克隆。克隆时会根据'addbhomsrc.xml'和'adcrdbclone.sql '两文件执行对应的更改

具体克隆方式请看另外一篇文章

bash 复制代码
https://mp.weixin.qq.com/s/ya97LgYry-PvOPju6HReLQ?payreadticket=HIaFzv4YRt_JbyUd55HJoAhzBGgx6_dqYbroG78uBjffRv4Mjx_z4KA9Y0tMECdMDSuLvr0

模板信息

  • addbhom-src.xml
bash 复制代码
<?xml version = '1.0'?>
<!-- $Header: AdCreateCtlFile.java 115.83 2007/11/12 06:51:37 rchaluva ship $ -->
<!--
  ###############################################################

  This file is automatically generated.  It will be read and overwritten.
  If you were instructed to edit this file, or if you are not able to use the settings
  created by AutoConfig, refer to Metalink document 165195.1 for assistance.

  ###############################################################

  -->
<oa_context version="$Revision: 115.83 $">
   <dbhome1 oa_var="s_dbhome1">/data/prod/proddata</dbhome1>
   <oa_instances>
      <oa_instance>
        <host_name>qadbtwo</host_name>
        <virtual_hostname>null</virtual_hostname>
        <database_sid>QADBTWO</database_sid>
        <instance_name>QADBTWO</instance_name>
        <instance_number>0</instance_number>
        <instance_thread>0</instance_thread>
        <undo_tablespace>APPS_UNDOTS1</undo_tablespace>
        <database_port>1521</database_port>
        <interconnect_name>qadbtwo</interconnect_name>
      </oa_instance>
   </oa_instances>
</oa_context>
  • adcrdbclone.sql
bash 复制代码
REM +========================================================================+
REM |  Copyright (c) 2002 Oracle Corporation Redwood Shores, California, USA
REM |                          All Rights Reserved
REM +========================================================================+
REM | FILENAME
REM |   adcrdbclone.sql
REM |
REM | DESCRIPTION
REM |   Script that recreates the control file of a Database
REM |
REM | HEADER
REM |   $Header: AdCreateCtlFile.java 115.83 2007/11/12 06:51:37 rchaluva ship $
REM |
REM | USAGE
REM |   sqlplus /nolog @adcrdbclone.sql <SPOOL FILE>
REM =========================================================================+


define arg1=&1
spool %s_db_oh%/appsutil/log/%s_contextname%/adcrdb_%s_dbSid%.txt
connect / as sysdba

shutdown abort
connect / as sysdba
startup nomount pfile=%s_db_oh%/dbs/init%s_dbSid%.ora;
CREATE CONTROLFILE REUSE SET DATABASE "%s_dbGlnam%"
LOGFILE
  GROUP 1 ('%s_dbhome2%/log01a.log', '%s_dbhome2%/log01b.log') SIZE 419430400,
  GROUP 2 ('%s_dbhome2%/log02a.log', '%s_dbhome2%/log02b.log') SIZE 419430400,
  GROUP 3 ('%s_dbhome2%/log03a.log', '%s_dbhome2%/log03b.log') SIZE 419430400
DATAFILE
  '%s_dbhome1%/system01.dbf',
  '%s_dbhome1%/system02.dbf',
  '%s_dbhome1%/system03.dbf',
  '%s_dbhome1%/system04.dbf',
  '%s_dbhome1%/system05.dbf',
  ..........................
  ..........................
  '%s_dbhome1%/system10.dbf',
  '%s_dbhome1%/system06.dbf',
  '%s_dbhome1%/system07.dbf',
  '%s_dbhome1%/system09.dbf',
  '%s_dbhome1%/system08.dbf',
  '%s_dbhome1%/system11.dbf',
  '%s_dbhome1%/system12.dbf',
  '%s_dbhome1%/sysaux02.dbf'
RESETLOGS MAXDATAFILES %s_dbfiles%
MAXINSTANCES 8
MAXLOGFILES 32
MAXLOGHISTORY 18405
MAXLOGMEMBERS 5
/
alter database open resetlogs;
alter tablespace TEMP add tempfile '%s_dbhome1%/temp02.dbf' REUSE;
alter tablespace TEMP add tempfile '%s_dbhome1%/temp01.dbf' REUSE;
ALTER DATABASE RENAME GLOBAL_NAME TO "%s_global_database_name%";

shutdown immediate
connect / as sysdba
startup mount pfile=%s_db_oh%/dbs/init%s_dbSid%.ora
execute dbms_backup_restore.zeroDbid(0);

shutdown abort
connect / as sysdba
startup nomount pfile=%s_db_oh%/dbs/init%s_dbSid%.ora;
CREATE CONTROLFILE REUSE SET DATABASE "%s_dbGlnam%"
LOGFILE
  GROUP 1 ('%s_dbhome2%/log01a.log', '%s_dbhome2%/log01b.log') SIZE 419430400,
  GROUP 2 ('%s_dbhome2%/log02a.log', '%s_dbhome2%/log02b.log') SIZE 419430400,
  GROUP 3 ('%s_dbhome2%/log03a.log', '%s_dbhome2%/log03b.log') SIZE 419430400
DATAFILE
  '%s_dbhome1%/system01.dbf',
  '%s_dbhome1%/system02.dbf',
  '%s_dbhome1%/system03.dbf',
  '%s_dbhome1%/system04.dbf',
  ..........................
  ..........................
  '%s_dbhome1%/system05.dbf',
  '%s_dbhome1%/system10.dbf',
  '%s_dbhome1%/system06.dbf',
  '%s_dbhome1%/system07.dbf',
  '%s_dbhome1%/system09.dbf',
RESETLOGS MAXDATAFILES %s_dbfiles%
MAXINSTANCES 8
MAXLOGFILES 32
MAXLOGHISTORY 18405
MAXLOGMEMBERS 5
/
alter database open resetlogs;
alter tablespace TEMP add tempfile '%s_dbhome1%/temp02.dbf' REUSE;
alter tablespace TEMP add tempfile '%s_dbhome1%/temp01.dbf' REUSE;
ALTER DATABASE RENAME GLOBAL_NAME TO "%s_global_database_name%";

@%s_db_oh%/appsutil/install/%s_contextname%/adupdlib.sql &arg1
create spfile from pfile='%s_db_oh%/dbs/init%s_dbSid%.ora';
spool off;
exit
相关推荐
lzhdim3 小时前
100条常用SQL语句
数据库·sql·mysql·mybatis
天河归来3 小时前
从原始消息到业务数据:三层数据架构的设计与实践
数据库·数据仓库·架构
数据库小学妹4 小时前
金融数据库成本怎么算?五笔钱加一张TCO表
数据库·金融行业·数据库选型·国产化替代·tco·金融数据库
KaiwuDB4 小时前
KaiwuDB 分布式集群扩缩容,从原理到完整操作踩坑总结
运维·数据库·分布式
auspicious航4 小时前
PostgreSQL的备份与恢复
数据库·postgresql
这个DBA有点耶4 小时前
从 MySQL 到时序数据库:我帮朋友做迁移的完整记录
数据库·架构·dba
泡海椒5 小时前
深度解析JQuick-SQL AST到逻辑计划转换机制|分布式SQL原理
数据库·分布式·sql
心静财富之门5 小时前
Python 数据共享四种方案完整实例(同进程 / JSON / Redis / HTTP)
数据库·python·oracle
略略略咯咯5 小时前
啊啊啊啊啊
java·服务器·数据库
奇牙coding5 小时前
GPT-5.5 报 401 invalid_api_key 怎么办?换密钥前按 4 层排查请求头、项目权限和端点
数据库·gpt·ios·ai