当前位置: 首页 > news >正文

Oracle Apps AutoConfig

1.   Background

2.   什么是AutoConfig

3.   AutoConfig脚本所在的目录

4.   运行方法

5.   AutoConfig工作原理

1.   Context文件

2.   AutoConfig模板文件

3.   driver文件

6.   AutoConfig的日志文件

7.   AutoConfig配置回滚

8.   Autoconfig Context文件的修改

9.   Reference about AutoConfig

Background

Oracle Apps的架构非常复杂,使用了非常多技术(或服务)。比如Apache Web server, Apache Jserv, Forms Listener servlet (forms server) 等等,每一个服务都有着自己的配置文件,只有都设置正确了,系统才能正常运作。而且,Oracle Apps使用了许多的Profile Options(比如Applications Web Agent, Applications Framework Agent等),这些也需要都设置正确,人工管理这么多配置文件,其实并不容易,对于新人来说,学习成本很高。

所以Oracle推出了一个非常强大的工具--AutoconfigAutoconfig11.5.4后引入的),用于维护这些配置文件和Profile Options。我们可以认为AutoConfig是一些系列模板化配置文件的集合,用于配置出一个标准化的应用环境。

 

什么是AutoConfig

AutoConfig是集中并简化Oracle Apps的配置管理的工具,一个自动配置EBS Instance的工具,不需要手工干预。它所需要的信息仅仅是两个存储在本地Context文件(XML类型的文件),一个是Apps Context文件,另外一个是DB Context文件。

AutoConfigApps层运行的话,那么它就需要读取Apps Context文件来产生所有的配置文件,并且会更新数据库的Profiles

如果AutoConfigDB层运行的话,那么它就需要读取DB Context文件来产生所有用于DB层面的配置文件。

AutoConfig内部其实是一组Java Class文件,这些Class文件由Shell脚本(或者perl脚本)来调用,通过模板化的配置来维护系统的配置文件。Autoconfig运行时,会用新的配置文件重写已存在的配置文件(这个新的配置文件其实是:模板配置文件+context文件,构建而成的)

总之:AutoConfig确实很好的简化了系统的配置工作。

 

AutoConfig脚本所在的目录

Application tier: <INST_TOP>/admin/scripts/adautocfg.sh

                            (eg./u01/oracle/mc3yd213/inst/apps/mc3yd213_bej301441/admin/scripts/adautocfg.sh)

Database tier: <RDBMS_ORACLE_HOME>/appsutil/scripts/<CONTEXT_NAME>/adautocfg.sh

                          (eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/scripts/mc3yd213_bej301441/adautocfg.sh)

 

运行方法

Apps Tier:

sh <INST_TOP>/admin/scripts/adautocfg.sh

注意:

·         在运行AutoConfig的过程中,Database serverdatabase listener必须已经启动,Apps Server应该处于关闭状态。

·         Running AutoConfig may change your existing environment files. After running AutoConfig, you should always set the environment before you run any Applications utilities, in order to apply the changed environment variables.

DB Tier:

sh <RDBMS_ORACLE_HOME>/appsutil/scripts/<CONTEXT_NAME>/adautocfg.sh

注意:

·         在运行AutoConfig的过程中,Database serverdatabase listener必须已经启动,其他数据库服务应该处于关闭状态。

·         Running AutoConfig may change your existing environment files. After running AutoConfig, you should always set the environment before you run any Applications utilities, in order to apply the changed environment variables.

 

AutoConfig工作原理

clip_image002

Autoconfig会涉及三类文件:Context文件,Template文件,Driver文件。

Context文件

Context文件可以说一个记录环境参数的基础文件,它存储了Apps所有的配置信息,如果需要更改某项配置,则需要首先修改Context文件的配置信息,然后在通过AutoConfig,把更改的信息更新到所有的真实配置文件中去。

Apps Context文件:<INST_TOP>/appl/admin/<CONTEXT_NAME>.xml (eg./u01/oracle/mc3yd213/inst/apps/mc3yd213_bej301441/appl/admin/mc3yd213_bej301441.xml)

clip_image004

DB Context文件:<RDBMS_ORACLE_HOME>/appsutil/<CONTEXT_NAME>.xml(eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/mc3yd213_bej301441.xml)

clip_image006

NOTE:<CONTEXT_NAME> = <SID>_<hostname>

AutoConfig模板文件

用于生成配置文件的模板,Apps里的每一个配置文件都有一个对应的模板。模板文件中包含了很多的Tag,这些Tag最终会被Context文件中环境变量替换掉。

模板文件存放的地方

Apps层的模板文件:<product_top>/admin/template,比如: <FND_TOP>/admin/template (eg./u01/oracle/mc3yd213/apps/apps_st/appl/fnd/12.0.0/admin/template,打开目录能看到很多tmp的模板文件)

clip_image008
DB
层的模板文件:<RDBMS ORACLE_HOME>/appsutil/template,比如<ORACLE_HOME>/appsutil/template(eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/template)

clip_image010

driver文件

Driver文件会列出了AutoConfig模板文件路径以及模板文件对应的目标配置文件的真实路径,以及一些脚本命令。

AppsDriver文件位于:<product_top>/admin/driver,比如: <FND_TOP>/admin/driver(eg./u01/oracle/mc3yd213/apps/apps_st/appl/fnd/12.0.0/admin/driver,里边有很多.drv文件)

DBDriver文件位于:<RDBMS ORACLE_HOME>/appsutil/template,比如<ORACLE_HOME>/appsutil/template(eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/template里的.drv文件)

每当Autoconfig运行的时候,都会在先找到Driver文件,然后按照Driver文件提供的脚本命令,模板文件,以及Context文件生成目标配置文件。

 

AutoConfig的日志文件

Application Tier: <INST_TOP>/admin/log/<MMDDhhmm>


Database Tier:   <RDBMS ORACLE_HOME>/appsutil/log/<CONTEXT_NAME>/<MMDDhhmm>

                          eg./u01/oracle/mc3yd213/db/tech_st/11.1.0/appsutil/log/mc3yd213_bej301441/05240310

<MMDDhhmm> = (month, day, hour, minute of AutoConfig run)

 

AutoConfig配置回滚

每一次AutoConfig的运行都会产生一个回滚脚本,如果AutoConfig配置错误,你可以使用回滚脚本来恢复之前的配置。

Application Tier:     <INST_TOP>/admin/out/<MMDDhhmm>
Database Tier:    <RDBMS ORACLE_HOME>/appsutil/out/<CONTEXT_NAME>/<MMDDhhmm>
并且运行命令:  restore.sh(Unix) 或者restore.cmd(Windows)

 

Autoconfig Context文件的修改

路径:System Administration > Oracle Applications Manager > AutoConfig
从列表中可以看到DB层和Apps层的Autoconfig Context文件
clip_image012
点击Edit Parameter,可以在这里修改Context FileParameter,在这里改Context文件应该比直接修改ContextXML文件更安全些。

clip_image014

从截图的页签,也可以看出,Autoconfig Context的配置主要涉及到GlobalSystemLocalInstallEnvironmentsProcessesCustom几块。

Reference about AutoConfig

http://www.appsdba.info/docs/oracle_apps/R12/AutoConfig.pdf

387859.1  Using AutoConfig to Manage System Configurations in Oracle Applications Release 12

http://onlineappsdba.com/index.php/2008/01/28/autoconfig-in-oracle-apps-11i-r12-12i/

165195.1  Using AutoConfig to Manage System Configurations with Oracle Applications 11i

218089.1  Autoconfig FAQ
270519.1  Customizing an AutoConfig Environment
364927.1 How To Run Autoconfig On Database Tier (DB-Tier)
341322.1 How to change the hostname of an Applications Tier using AutoConfig
338003.1 How to change the hostname and/or port of the Database Tier using AutoConfig
315674.1 How To Verify if Autoconfig is Enabled on 11.5.x
391406.1 How to get a clean Autoconfig Environment

转载请注明出处:http://blog.csdn.net/pan_tian/article/details/7705848

======EOF======

 

相关文章:

  • 用以太坊开发框架Truffle开发智能合约实践攻略(代码详解)
  • javascript解汉诺塔问题
  • RIP 漏打 no auto-summary 造成环路故障
  • oracle Like模糊查询与带有关键字Reverse的索引应用
  • JQuery EasyUI 动态隐藏
  • 安装OpenStack Queens版本的教程推荐
  • [leetcode]Flatten Binary Tree to Linked List
  • 深度学习中常见问题
  • 华为云:如何解除数据库高并发场景下的达摩克利斯之剑?
  • Tomcat的参数配置及一般问题的解决
  • node.js来爬取智联全国的竞争最激烈的前十岗位
  • css颜色代码大全:(网页设计师和平面设计师常用)
  • python3.6+scrapy+mysql 爬虫实战
  • 数据库分库分表思路
  • linux考试
  • 【node学习】协程
  • 2018一半小结一波
  • Angular js 常用指令ng-if、ng-class、ng-option、ng-value、ng-click是如何使用的?
  • eclipse(luna)创建web工程
  • Java 最常见的 200+ 面试题:面试必备
  • Javascript弹出层-初探
  • Mysql数据库的条件查询语句
  • PHP 小技巧
  • python 学习笔记 - Queue Pipes,进程间通讯
  • vue2.0一起在懵逼的海洋里越陷越深(四)
  • webpack+react项目初体验——记录我的webpack环境配置
  • webpack入门学习手记(二)
  • win10下安装mysql5.7
  • 案例分享〡三拾众筹持续交付开发流程支撑创新业务
  • 跨域
  • 力扣(LeetCode)56
  • 区块链将重新定义世界
  • 世界编程语言排行榜2008年06月(ActionScript 挺进20强)
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • #{} 和 ${}区别
  • $ git push -u origin master 推送到远程库出错
  • (cljs/run-at (JSVM. :browser) 搭建刚好可用的开发环境!)
  • (java版)排序算法----【冒泡,选择,插入,希尔,快速排序,归并排序,基数排序】超详细~~
  • (Matlab)基于蝙蝠算法实现电力系统经济调度
  • (笔试题)分解质因式
  • (二)WCF的Binding模型
  • (附源码)springboot宠物管理系统 毕业设计 121654
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (强烈推荐)移动端音视频从零到上手(下)
  • (四)模仿学习-完成后台管理页面查询
  • (一)80c52学习之旅-起始篇
  • (一)基于IDEA的JAVA基础12
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • (转)JAVA中的堆栈
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .NET Core 和 .NET Framework 中的 MEF2
  • .net 生成二级域名
  • .NET开源项目介绍及资源推荐:数据持久层 (微软MVP写作)
  • .NET面试题解析(11)-SQL语言基础及数据库基本原理
  • /var/log/cvslog 太大