重新发现Oracle太美之oraInst.loc

本文详细介绍了如何使用OPatch进行Oracle补丁安装及管理中央Inventory目录的相关配置,包括如何查看已安装的补丁、中央Inventory目录内容、以及如何在不同场景下正确配置oraInst.loc文件以避免安装或打补丁时出现错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

重新发现Oracle太美之oraInst.loc


平台操作系统版本神马的,聪明人一看就知道了,我就不多码字了!


oracle@rh64 oraInventory]$ opatch lsinv
Oracle Interim Patch Installer version 11.2.0.3.6
Copyright (c) 2013, Oracle Corporation.  All rights reserved.




Oracle Home       : /u01/app/db11g/product/11.2.0/dbhome_1
Central Inventory : /u01/app/oraInventory   =====>>>可以看到这是个Central Inventory
   from           : /u01/app/db11g/product/11.2.0/dbhome_1/oraInst.loc  =====>>>可以看到这是个Oracle Home Inventory
OPatch version    : 11.2.0.3.6
OUI version       : 11.2.0.4.0
Log file location : /u01/app/db11g/product/11.2.0/dbhome_1/cfgtoollogs/opatch/opatch2014-05-15_00-33-12AM_1.log


Lsinventory Output file location : /u01/app/db11g/product/11.2.0/dbhome_1/cfgtoollogs/opatch/lsinv/lsinventory2014-05-15_00-33-12AM.txt


--------------------------------------------------------------------------------
Installed Top-level Products (1): 


Oracle Database 11g                                                  11.2.0.4.0
There are 1 product(s) installed in this Oracle Home.




Interim patches (1) :


Patch  18031668     : applied on Wed May 14 03:28:24 CST 2014
Unique Patch ID:  17255543
Patch description:  "Database Patch Set Update : 11.2.0.4.2 (18031668)"
   Created on 20 Feb 2014, 05:15:58 hrs PST8PDT
Sub-patch  17478514; "Database Patch Set Update : 11.2.0.4.1 (17478514)"
   Bugs fixed:
     17288409, 16399083, 17205719, 17811429, 10136473, 16472716, 17614227
     17050888, 17040764, 17865671, 17325413, 14010183, 17726838, 13364795
     17389192, 17612828, 17080436, 16613964, 17284817, 17441661, 17761775
     17721717, 16721594, 17390431, 18203837, 17551709, 17344412, 16043574
     17446237, 16863422, 18139690, 17071721, 17501491, 17610798, 17239687
     17752121, 17468141, 17602269, 18203835, 17375354, 17313525, 17811456
     16731148, 14133975, 18203838, 16956380, 17385178, 17235750, 13866822
     17394950, 17478514, 17027426, 12905058, 14338435, 16450169, 13944971
     18094246, 16929165, 16785708, 17265217, 17465741, 16220077, 16180763
     16069901, 17546973, 16285691, 17323222, 18180390, 17088068, 16875449
     17016369, 17443671, 16228604, 17811438, 17811447, 16837842, 18031668
     16912439, 17332800, 17393683, 17622427, 17545847, 17186905, 16943711
     16850630, 17082359, 17346671, 14852021, 17783588, 17437634, 16618694
     17341326, 17296856, 17546761, 17716305






--------------------------------------------------------------------------------


OPatch succeeded.
============>>>补丁已经打到了11.2.0.4.2,下面是oraInst.loc中的内容:
1.Central Inventory中的oraInst.loc
[oracle@rh64 oraInventory]$ cat /u01/app/oraInventory/oraInst.loc
inventory_loc=/u01/app/oraInventory
inst_group=oinstall
2. ORACLE_HOME下的oraInst.loc
[oracle@rh64 oraInventory]$ echo $ORACLE_HOME
/u01/app/db11g/product/11.2.0/dbhome_1
[oracle@rh64 oraInventory]$ cat /u01/app/db11g/product/11.2.0/dbhome_1/oraInst.loc
inventory_loc=/u01/app/oraInventory
inst_group=oinstall
3. /etc下面的oraInst.loc  =====>>>Central Inventory Pointer File
[oracle@rh64 oraInventory]$ cat /etc/oraInst.loc 
inventory_loc=/u01/app/oraInventory
inst_group=oinstall


注意:可见上面三个文件都是一样的内容,都是第一行注册目录的位置,第二行为宿主。注意如果你通过新装软件的方式来升级数据库,如果ORACLE的基
目录有所改变,要记得同时修改这三个文件。以免使用OPatch的时候报错

 
在oracle官方文档的Oracle® Universal Installer and OPatch User's Guide 11g Release 2 (11.2) for Windows and UNIX有详细描述.
Oracle Universal Installer Inventory的注册目录有如下三个:
1> Central Inventory Pointer File
2> Central Inventory
3> Oracle Home Inventory


1> Central Inventory Pointer File
每一个oracle软件安装都会有它自己的Central Inventory pointer file 
Table 2-2 Default Inventory Pointer File Locations


Platform           Default Inventory Pointer Location
Linux Linux.PPC64 AIX  /etc/oraInst.loc
Solaris.SPARC Solaris.X64 HPUX HPIA HP.TRU64 Linux.IA64 Linux.xSeries  /var/opt/oracle/oraInst.loc
Windows Windows.X64 Windows.IA64     HKEY_LOCAL_MACHINE/Software/Oracle/inst.loc


In UNIX, if you do not want to use the Central Inventory located in the directory specified by the inventory pointer file, you can use the -invPtrLoc flag to specify another inventory pointer file. The syntax is as follows:


./runInstaller -silent -invPtrLoc <Location_of_oraInst.loc> ORACLE_
HOME="<Location_of_Oracle_Home>"


2> Central Inventory
Central Inventory包含了在一个主机上安装的所有Oracle软件产品的信息。
这个下面包括Inventory File,Logs Directory
Oracle强烈建议不要手工修改这下面的inventory.xml,否则会造成产品安装或者patch的时候出现问题。


3> Oracle Home Inventory
包括Components File,Home Properties File,Other Folders


如何创建Central Inventory?(见官档)
./runInstaller -silent -attachHome ORACLE_HOME="<Oracle_Home_Location>"
"CLUSTER_NODES={<node1,node2>}" LOCAL_NODE="<node_name>"
如何创建Removing the Central Inventory?(见官档)


总结:
这个东西我现在感觉就是在安装或者打补丁的时候,还有clone软件的时候,从别的地方tar过来软件的时候,这三个文件需要注意,
另外意外丢失如何重建也可能会遇到。当然还有一些其他的日志信息可供参考的,没啥难得,看看就好
<think>我们正在处理WebLogic安装过程中出现的Oracle主目录路径无效字符问题。根据错误信息,路径只能包含字母数字字符、下划线、连字符或点,且必须以字母数字开头。 用户提供的引用中: 引用[1]展示了响应文件(wls.rsp)的示例,其中指定了ORACLE_HOME路径。需要注意该路径的合法性。 引用[3]和[4]直接提到了安装失败,原因是主目录路径无效(包含无效字符或无法访问)。 解决方案: 1. 检查路径中的非法字符:确保ORACLE_HOME路径中不包含空格、中文、特殊符号(如@,#,$,%,&,*,?等),只允许字母、数字、下划线(_)、连字符(-)和点(.),并且必须以字母或数字开头。 2. 确保路径存在且具有正确的权限:引用[3]中提到了“无法读取/执行”,所以还要确保安装用户(如weblogic)对该路径有读写执行权限。 3. 在响应文件中指定路径时,注意格式正确(如引用[1]中的格式)。 具体步骤: 步骤1:选择或创建符合规范的安装路径 例如,在Linux系统中,可以选择: /opt/weblogic /u01/app/weblogic 避免使用: /home/weblogic/WebLogic Install (包含空格) /opt/weblogic@home (包含@) /data/oracle/weblogic_12c (如果包含下划线和数字是允许的,但注意开头必须是字母数字,所以这个可以) 步骤2:确保目录权限 以root用户创建目录并设置权限: mkdir -p /opt/weblogic chown -R weblogic:weblogic /opt/weblogic # 假设安装用户为weblogic,用户组为weblogic 步骤3:修改响应文件(如果使用静默安装) 参考引用[1]中的响应文件格式,确保ORACLE_HOME的路径设置正确,例如: ORACLE_HOME=/opt/weblogic 步骤4:在安装命令中指定ORACLE_HOME(如果使用图形界面安装,在安装向导中指定;如果使用命令行安装,可以通过参数指定) 例如,使用命令行安装: $ java -jar fmw_12.2.1.3.0_wls_quick.jar ORACLE_HOME=/opt/weblogic 注意:在引用[4]中,用户尝试在Windows上安装时指定了ORACLE_HOME,但是路径中包含空格(ProgramFiles实际上应该是Program Files,但这里没有空格,不过要注意Windows路径中常见的空格问题)。在Linux下,空格同样是非法的。 步骤5:如果之前安装失败,可能需要清理临时文件和库存目录(oraInventory) 引用[3]中提到了oraInventory目录的问题。如果之前安装失败,可能需要清理/tmp下的OraInstall*临时目录,以及指定的oraInventory目录(如/data/oracle/oraInventory),然后重新安装。 步骤6:重新运行安装程序 示例:正确安装命令 假设安装文件为fmw_12.2.1.3.0_wls_quick.jar,响应文件为wls.rsp(放在当前目录),则运行: java -jar fmw_12.2.1.3.0_wls_quick.jar -silent -responseFile /path/to/wls.rsp 或者直接指定ORACLE_HOME: java -jar fmw_12.2.1.3.0_wls_quick.jar ORACLE_HOME=/opt/weblogic 注意:根据WebLogic版本,安装命令可能有所不同。 如果问题依旧,请检查安装日志(如/tmp/OraInstall...log)以获取更详细的错误信息。 引用说明: 引用[1]提供了响应文件示例,引用[3]和[4]提供了错误示例,引用[2]提供了用户和目录创建步骤。</think>### WebLogic 安装失败:Oracle 主目录路径包含无效字符的解决方法 #### 问题原因 当 WebLogic 安装路径包含以下**非法字符**时触发此错误: - 空格、中文、特殊符号(如 `@`, `#`, `$` 等) - 路径以数字或符号开头(如 `1_weblogic` 或 `-weblogic`) - 路径权限不足(如引用[3]中的 `/data/oracle/oraInventory` 不可读写) #### 解决步骤 ##### 1. **检查路径合法性**(关键) - **合法字符**:字母、数字、下划线(_)、连字符(-)、点(.) - **首字符要求**:必须以字母或数字开头 - **有效路径示例**: ```bash /opt/weblogic # 有效 /u01/app/weblogic_12c # 有效 ``` - **无效路径示例**: ```bash /home/WebLogic Install # 含空格(非法) /opt/weblogic@home # 含@符号(非法) ``` ##### 2. **修改响应文件配置**(引用[1]) - 编辑响应文件 `wls.rsp`,确保路径合法: ```ini [GENERIC] ORACLE_HOME=/opt/weblogic # 修改为合法路径 INSTALL_TYPE=WebLogic Server ``` ##### 3. **创建目录并授权**(引用[2][3]) ```bash # 创建目录(以合法路径为例) sudo mkdir -p /opt/weblogic # 设置所有权(假设安装用户为weblogic) sudo chown -R weblogic:weblogic /opt/weblogic # 设置读写权限 sudo chmod -R 775 /opt/weblogic ``` ##### 4. **清理安装残留** - 删除临时文件(引用[3]): ```bash rm -rf /tmp/OraInstall* # 清除安装缓存 ``` - 移除无效库存目录: ```bash rm -rf /data/oracle/oraInventory # 替换为你的错误路径 ``` ##### 5. **重新执行安装** ```bash # 静默安装(使用响应文件) java -jar fmw_12.2.1.3.0_wls_quick.jar -silent -responseFile /path/to/wls.rsp # 或命令行指定路径(引用[4]) java -jar fmw_12.2.1.3.0_wls_quick.jar ORACLE_HOME=/opt/weblogic ``` #### 验证安装 检查日志文件确认成功: ```bash tail -f /opt/weblogic/install.log # 查看安装日志 ``` > **关键提示**: > - Linux 路径**严格区分大小写**,确保大小写一致 > - 避免使用 `~`(家目录)等动态路径,使用绝对路径 > - 确保磁盘空间充足(至少 10GB 可用空间)[^1][^3] --- ### 相关问题 1. WebLogic 静默安装时如何正确配置响应文件中的路径参数? 2. 如何解决 WebLogic 安装过程中的 "oraInventory 权限不足" 错误? 3. 在 Linux 系统中创建 WebLogic 服务账户的最佳实践是什么?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值