文档介绍了Oracle Universal Installer (OUI)的一些细节只是,PPT Slideshare版地址在这里:http://www.oracledatabase12g.com/archives/%E6%B7%B1%E5%85%A5%E7%90%86%E8%A7%A3oracle-universal-installer-oui.html , 这里share一下Text版本的。

OUI是什么?

基于Java的图形用户界面(GUI)应用程序

会从products.xml文件中读取组件信息并安装套件

OUI提供了统一的用户安装界面

使用OUI的先题条件:

使用OUI需要用到Java运行时环境即Java Runtime Environment (JRE),在绝大多数平台上该JRE会由OUI自动安装(少数如itanium Linux平台需要另外安装)

内存需求:基于不同平台及所安装的Oracle产品而不同,在绝大多数情况下至少需要32MB以上的空闲内存

磁盘空间需求:在Windows上至少需要60MB空间而在Unix平台上则为70MB才能启动OUI,此外库信息文件(inventory files)大约占用1MB空间

OUI能做什么?

其核心功能无疑是安装各类Oracle产品或组件

反安装组建或产品

维护基于XML的产品信息仓库(inventory)

为安装执行必要的安装前检查

当需要时额外调用配置助手(如Netca,DBCA,DBUA等)

从oracle 11g开始,OCM也就是Oracle Configuration Manager也同样被综合到OUI的框架中

信息库操作,包括附件节点列表

OUI具有那些阶段?

启动阶段

开始对用户可见,载入必要的文件并显示一个欢迎界面

安装阶段

用户选择安装或反安装某些产品;提供源和目标目录

选择阶段

需要安装的产品被勾选,可用磁盘空间及必要磁盘空间被显示,并会出现summary总结页面

安装进度阶段

实际安装过程中,显示安装进度条

安装完成阶段

要求用户运行root.sh脚本,并启动某种配置助理工具(configuration assistants)

安装模式

互动模式

用户使用图形界面访问各安装流程在对话框中并提供必要的安装信息,当提示时。在小范围安装中最为合适

静默安装

省略图形界面,由相应文件(response file)提供必要的信息。在安装过程中自动化实现,在众多服务器时。

如setup.exe -slient -responseFile

Oraparam.ini

OUI的初始化文件

位于安装介质下的”install”子目录中

文档How to Interpret the oraparam.ini File [ID 237097.1]介绍了解释了oraparam.ini文件的内容

Oraparam.ini的一些重要参数

SOURCE=Location of the products.jar file. This location is relative to the directory where oraparam.ini exists.

JRE_LOCATION=Relative location of the Java Runtime Environment (JRE) which will be used by the Oracle Universal Installer

JRE_MEMORY_OPTIONS=Set these variables to influence the behaviour of JRE.ie. max heap size for java (-mx), startup size of java heap (-ms), disabling JIT (-nojit). You should increase the -mx and -ms values if you're getting out of memory errors.

如何启动OUI互动模式?

在windows上:

\setup.exe

安装后

%ORACLE_HOME%\oui\bin\setup.exe

在unix上

Cd

./runInstaller

安装后

Cd $ORACLE_HOME/oui/bin

./runInstaller

如何启动OUI静默模式?

在windows上:

记录相关的相应文件:

Setup.exe -record -responseFile

以静默模式安装

Setup.exe -slient -responseFile

在UNIX上:

记录相关的响应文件:

./runInstaller -record -responseFile

在静默模式下安装

./runInstaller -slient -responseFile

参考

OUI Guide:Oracle Universal Installer command line options and arguments Note 782918.1

OUI日志存放在哪里?

每次OUI启动都会产生日志,日志名会以时间戳的形式归档

这些日志包含了安装过程中丰富的信息。我们推荐在安装完成后复验一遍日志

一般来说这些日志存放在中心信息库中(inventory),在logs子目录下的并以如下形式命名:

installActions.log

oraInstall.err

oraInstall.out

中心信息库的位置可以通过库指针文件了解到

库指针文件的默认位置:

在windows 上:注册表中的”HKLM\Software\oracle\inst_loc”

在unix上:例如Solaris平台:/var/opt/oracle/oraInst.loc

其他平台如Linux:/etc/oraInst.loc

如何确认已安装的产品

使用OUI

启动OUI并尝试点击”Installed Products”

也可以使用Opatch工具

Opatch lsinventory -detail

如何启用OUI的debug和trace功能?

OUI工具存在”-debug”选项

将启用最精细级别的信息日志

将显示启动阶段的信息(例如抽取JRE)

在对OUI进行可能由java引起的问题诊断时十分有效

举例来说: ./runInstaller -debug

另一方面可以对OUI启用系统调用跟踪trace,一般我们使用操作系统提供的tracing工具

举例而言:truss -aefo /tmp/oui_trace.log ./runInstaller

参考文档:Note 110888.1 介绍了如何trace Unix下的系统调用

绝大多数OUI意外终止的问题可以从.ERR文件中找到相关问题

OUI: "Abnormal program termination" with java.io.IOException in .err file [ID 798338.1]

信息库指针文件

默认的信息库指针:在给定平台上的某个标准位置存放着该指针文件,该文件包含了中心信息库的位置。

/etc/oraInst.loc (Linux上)

/var/opt/oracle/oraInst.loc(Solaris上)

\\HKEY_LOCAL_MACHINE\\Software\Oracle\inst_loc(Windows上)

示例内容

inventory_loc=/u01/oraInventory

inst_group=maclean

集中信息库(Central Inventory)

集中信息库:该信息库以目录形式存在,包含了该主机上安装的所有Oracle产品的信息

举例来说在Unix上:/u01/oraInventory

而在Windows平台上:C:\Program Files\Oracle\Inventory

信息库文件:已注册的ORACLE_HOME的列表

/ContentsXML/inventory.xml

示例内容:

10.2.0.1.0

2.1.0.6.0

www.oracledatabase12g.com & www.askmaclean.com

本地信息库(local Inventory)

本地信息库:目录结构包含了ORACLE_HOME中Oracle软件的细节信息

$ORACLE_HOME/inventory

组件文件:各组件信息及其关联性,补丁集和One-off patch以及其所修复的bug,$ORACLE_HOME/inventory/ContentsXML/comps.xml

ORACLE_HOME属性文件:关于HOME的GUID,ARU Id和Cluster_nodes等信息:

$ORACLE_HOME/inventory/oraclehomeproperties.xml

本地信息库指针:指向自身注册的中心信息库(10Gr2以后才出现)

ORACLE_HOME/oraInst.loc

如何重建集中信息库

前提是本地信息库没有被损坏或丢失

使用runInstaller的'-attachHome' 选项

仅在10gr1以后可能

在10.1.0.3以后,OUI会重建指定位置的oraInst.loc集中信息库,即便oraInventory目录不存在

命令语法

$ORACLE_HOME/oui/bin/runInstaller -slient -attachHome \

ORACLE_HOME=

ORACLE_HOME_NAME=

在oracle 10gr2以后attachhome和detachome的脚本被自动包含

/oui/bin/attachhome.sh

/oui/bin/detachhome.sh

10g以前和10g后安装的区别

在10g以前(经典的如9iR2),OUI与JRE组件一直作为非ORACLE_HOME组件而置于其独立位置上,与ORACLE_HOME相分离

举例而言在9i中其安装位置

OUI 组件位于/../oui

JRE组件位于/../jre

/ContentsXML/comps.xml包含了9iR2中OUI与JRE组件的相关信息

到10g以后,JRE与OUI组件被移动到独立的ORACLE_HOME中,以使得各个ORACLE HOME可以做到自包含并支持例如clone和attachhome等的操作

举例来说从10g以后,安装位置位于

OUI组件在$ORACLE_HOME/oui

JRE组件在$ORACLE_HOME/jre

/inventory/ContentsXML/comps.xml 包含了关于OUI和JRE的信息

使用OUI的前提:合适的JRE

OUI是基于Java的图形化工具

启动JRE必须要用到JRE(Java运行时环境Java Runtime Environment)

在绝大多数平台上安装包中已经包含了启动OUI必要的JRE

runInstaller/setup.exe在引导阶段会自动去解压并使用oraparam.ini中JRE_LOCATION所指向的JRE程序

OUI可以不使用自带的JRE,而使用用户指定的安装在操作系统上的JRE程序

JRE最低版本要求

OUI 2.2.0.X要求JRE版本不低于 1.3.1(某些老版本的OUI只接受少数几个较早版本JRE,有时这些JRE往往已经找不到了)

OUI 10.1.0.X和10.2.0.X 要求JRE版本不低于1.4.2

OUI 11.1.0.X则要求不低于1.5

JRE是如何与安装套件打包的

JRE一般对应与OUI版本和安装套件打包在一起

安装套件使用OUI 10.2.0.x版包含了扩展的JRE套件

cat oraparam.ini |grep JRE_LOCATION

JRE_LOCATION=../stage/Components/oracle.swd.jre/1.4.2.8.0/1/DataFiles

filegroup1.jar filegroup2.jar filegroup3.jar filegroup4.jar filegroup5.jar

11g中installer在oraparam.ini中引入了BOOTSTRAP_COMPS与JRE_SCRATCH_LOC参数;通过使用这些参数,11g安装器可以抽取并使用JDK组件(即oracle.jdk)由安装套件自带的。

BOOTSTRAP_COMPS="oracle.swd.oui:11.1.0.6.0,oracle.swd.oui.core:11.1.0.6.0,oracle.jdk:1.5.0.1.1"

JRE_SCRATCH_LOC=jdk/jre

如何使用可选的JRE协同OUI工作

安装套件(10.2.0.x和11g)使用OUI版本10.2.0.X和11.X,支持使用”-jreloc”选项以使用用户提供的JRE软件。

./runInstaller -jreloc /usr/local/jdk1.6.0_24 (Unix)

Setup.exe -jreloc C:\jdk1.6 (Windows)

安装套件(版本9.2.0.5至9.2.0.8和10.1.0.x)使用OUI版本10.1.0.X,可以参考Metalink文档”Note 298163.1”以了解创建“bin.jar和all_exception_bin.jar”

安装套件(版本9.2.0.2至9.2.0.4)使用OUI版本2.2.0.X,通过修改oraparam.ini并替换JRE_LOCATION所指向的位置,可以利用用户想要使用的JRE。

安装套件自带JRE已知的Bug/问题

Bug 5391050 - DB 10.2.0.1 INSTALLATION FAILS ON MONTECITO CHIP H/W

Note 400227.1  How To Install Oracle RDBMS Software On Itanium Servers With Montecito Processors

Bug 5530274 PATCH "P4547809_92080_SOLARIS64.ZIP" JAVA VERSION 1.3.1 - SR NUMBER 5746016.992

Note 393199.1 Oui provided with Patchset 9.2.0.8 fails with exception

11g新特性:ORACLE_BASE

ORACLE_BASE目前可以充当一个新的会话变量了

例如./runInstaller ORACLE_BASE=

目前在GUI模式下界面会提示用户是否想要使用已有的ORACLE_BASE或者指定一个新的

在安装之后,ORACLE_BASE信息会被记录到本地信息库中的以下文件

/inventory/ContentsXML/oraclehomeproperties.xml

参考

Note 454442.1 11g Install : Understanding about Oracle Base, Oracle Home and Oracle Central/Global Inventory locations [ID 454442.1]

11g新特性:JRE

引入了可客制化的引导程序功能

这样做的出发点:

软件自带的JRE无法正常引导或工作

用户未安装OS级别的JRE/JDK,由此runInstaller无法使用-jreloc选项

Oraparam.ini文件中的新参数

BOOTSTRAP_COMPS="oracle.swd.oui:11.1.0.6.0,oracle.swd.oui.core:11.1.0.6.0,oracle.jdk:1.5.0.1.1"

JRE_SCRATCH_LOC=jdk/jre,该参数指定了启动java引擎所在位置的相对起点

举例来说JRE_SCRATCH_LOC=jdk/jre,那么在引导完成后,JRE在/jdk/jre/bin/java的位置被启动

runinstaller目前出现了新的选项:-bootstarponly,即仅针对指定的组件启动引导操作

../runInstaller –bootstraponly BOOTSTRAP_LOC=

OUI所使用JRE位置的优先级如下

若指定了-jreloc,则使用指定的位置

指定了的JRE_SCRATCH_LOCATION

使用已引导的oracle.swd.jre组件,位置由oraparam.ini指定的JRE_LOCATION决定

否则提示用户输入JRE_LOCATION

Preparing to launch Oracle Universal Installer from /tmp/OraInstall2011-03-17_01-30-30PM. Please wait ...

Please specify JRE/JDK location ( Ex. /home/jre ), /bin/java should exist :/fds

Please specify a valid JRE location :

常见问题

信息库常见问题

Unix或Windows上OUI启动问题检查列表

信息库(inventory)常见问题

集中信息库或本地信息库可能丢失会损坏造成的使用”opatch lsinventory -detail”或者OUI界面上点击installed Products时找不到ORACLE HOME

虽然opatch lsinventory -detail或者OUI界面上installed products点击可以显示相应ORACLE_HOME但无法列出详细信息,一般是ORACLE_HOME相关的信息库丢失或者损坏了

若集中信息库丢失或损坏,可以通过还原来回复,前提是备份过

我们极力推荐日常备份ORACLE_HOME和集中信息仓库,在升级或打patch之前

使用9.2.0.2的客户需要注意,有报告说明OUI 2.2.0.12存在损坏信息库的bug,推荐参考文档Note 229773.1

UNIX上常见的OUI启动问题

Itanium Montecito processors相关的JRE问题

Note 401332.1  How To Identify A Server Which Has Intel® Montecito Processors Installed

Note 400227.1  How To Install Oracle RDBMS Software On Itanium Servers With Montecito Processors

UNIX上的OUI启动失败检查列表

DISPLAY环境变量设置不当

Note.153960.1 FAQ X Server Testing and Troubleshooting

/tmp临时目录至少需要400MB的空间并且对oracle 安装用户来说可写

实在没有办法的时候,可以修改临时目录变量$TMP到别的目录

Note 339657.1 Unable To Start OUI: not enough room in /tmp

Note 177902.1 How To Set Temporary Space Directory

调用OUI时使用”-debug”选项以确认

在JRE解压阶段没有出现错误

在调用java命令启动OUI阶段没有出现错误

若在JRE解压完成后(java 命令失败)OUI启动失败,那么一般可以确认是自带的JRE在目标系统上存在问题

为了确认JRE的问题,手动解压自带的JRE并确认java命令:

cd database/stage/Components/oracle.swd.jre/1.4.2.8.0/1/DataFiles/

mkdir /tmp/java_test

cp *.jar /tmp/java_test

cd /tmp/java_test

Unzip filegroup[1-5].jar

cd jre/1.4.2/bin

chmod 755 java

[maclean@rh8 bin]$ ./java -version

java version "1.4.2_08"

Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_08-b03)

Java HotSpot(TM) Client VM (build 1.4.2_08-b03, mixed mode)

可以看到在我们的场景中java命令运行正常,若以上测试的最后结果中java命令出错则说明Oracle安装介质自带的JRE存在问题,这可能是个例,在安装介质传输过程中出现网络错误所导致的文件损坏可能引起以上问题;可以通过checksum等方式验证安装介质包/ISO文件无误。若经过验证发现安装介质没有损坏,那么很有可能是自带JRE在目标操作系统上无法正常运行,用户可以到java.sun.com网站去下载指定平台最新可用的JDK软件,在成功安装后JDK后再次尝试以”-jreloc”选项启动runInstaller程序,命令示例如下:

./runInstaller -debug -jreLoc

mysql text oracle_深入理解Oracle Universal Installer (OUI) Text相关推荐

  1. 深入理解 OUI(Oracle Universal Installer)

    原文连接:http://www.oracledatabase12g.com/archives/%E6%B7%B1%E5%85%A5%E7%90%86%E8%A7%A3oracle-universal- ...

  2. Oracle DB 深入理解 OUI(Oracle Universal Installer)

    原文连接:http://www.oracledatabase12g.com/archives/%E6%B7%B1%E5%85%A5%E7%90%86%E8%A7%A3oracle-universal- ...

  3. oracle 桌面安装步骤,Oracle安装:OUI安装Oracle(图形界面安装)

    OUI:Oracle Universal Installer(OUI的详细信息可以google) 我的系统:RedHat enterprise server 6.0 我的oracle:10g.2.1 ...

  4. oracle删除universal,Oracle自带的Universal Installer卸载存在问题

    使用Oracle自带的Universal Installer卸载存在问题: 不干净,不完全,还有一些注册表残留,会影响到后来的安装. 所以,推荐使用手工卸载Oracle. 1.[win+R]-> ...

  5. 正在启动oracle universal,oracle的常见问题与解决

    刚接触oracle,在学习过程中遇到了很多的问题,本文章将会收藏我遇到的问题及如何解决. 错误一:ORA-28009:connection as sys should be as sysdba解决方法 ...

  6. mysql导出oracle_如何将mysql中的表结构导出放入oracle中

    展开全部 将mysql中的表结构导出放入oracle中的方法: 1.导出mysql的表结构sql脚本,然后修改mysql中的数据类型为oracle中的数据类型: MySql与Oracle数据类型的62 ...

  7. mysql for oracle_模块与包 Mysql与Oracle区别

    1 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码( ...

  8. MySQL存储引擎深入理解

    文章目录 看完本篇文章你能学到什么? MySQL存储引擎深入理解 一.什么是MySQL存储引擎 1.1 存储引擎概述 1.2 查看存储引擎 1.3 修改默认存储引擎 1.4 常见存储引擎 二. 存储引 ...

  9. oracle中key,mysql中的key在oracle中是什么

    mysql中的key在oracle中是什么 说明一下.key在oracle中对应的是什么? 比如说: CREATE TABLE `AdBanner` ( `BannerId` int(8) NOT N ...

最新文章

  1. Android 人民币符号在布局中实现的效果不一样的处理方法
  2. 你真的以为了解java.io吗 呕心沥血 绝对干货 别把我移出首页了
  3. mysql主从以及读写分离(科普)
  4. MPlayer在ARM上的移植(S5PV210开发板)
  5. SQL模糊查询 LIKE
  6. 软件工程导论团队项目
  7. linux rsync 安装教程,linux下的rsync配置和使用教程
  8. 用JavaScript获取页面上被选中的文字的技巧
  9. python爬虫使用模块_10分钟教你Python爬虫(下)--爬虫的基本模块与简单的实战...
  10. 《图像语义分析》学习笔记 (二)
  11. Android List的混排 随机排序
  12. python绘图-中文字体
  13. Low-Code is Low—— 低代码的使用
  14. docker日志显示时间时区错误,时区UST问题/群晖docker日志时间不正确 寻找解答过程
  15. 怎么把照片变年轻?这两个照片变年轻小妙招教给你
  16. python公开课乐博学院_当我学完 Python ,我学会了些什么【乐搏TestPRO】
  17. OpenCV学习笔记(六)之轮廓提取与角度测量
  18. MCU驱动和RGB驱动的液晶屏的区别
  19. 网站页面一键克隆,自动归类资源文件!PHPCUSTOM环境内置功能
  20. 从volatile关键字到总线风暴

热门文章

  1. 推荐一款强大的帮助文件制作软件Baklib,制作效果堪比Noting.io
  2. Nature:“我还有用!“凋亡细胞释放的代谢物充当组织信使
  3. 玻璃电极的测定原理是什么?
  4. 如何才能管理好一个项目群
  5. BZOJ4554 [Tjoi2016Heoi2016]游戏
  6. 中标软件 鸿蒙,这款国产系统火了!占90%份额,支持4000款软件,比鸿蒙更强大!...
  7. dutoj1007圆桌会议
  8. 教你如何修复硬盘坏道
  9. 行业看点丨 华人科学家找到“天使粒子” 量子计算或成现实
  10. google android win10 ios,微软大挖谷歌墙角 Android机上将可刷Win10