WINDOWS 2008 安装 ORACLE 11G EM时上载EM资料失败

来源:互联网 发布:手机淘宝卖家中心在哪 编辑:程序博客网 时间:2024/05/21 17:38

WINDOWS 2008 安装 ORACLE 11G EM时上载EM资料失败


   此问题本人也遇到过。在网上找到了解决方案。下部分引用IT PUB。

  

安装oracle11g 64位.创建数据库到快结束的时候,报告说EM无法创建.

emca_2010_06_13_11_05_36.log 如下:
....省略部分...
信息: 正在将配置数据上载到 EM 资料档案库 (此操作可能需要一段时间)...
2010-6-13 11:05:43 oracle.sysman.emcp.EMReposConfig uploadConfigDataToRepository
配置: 将配置数据上载到资料档案库时出错
oracle.sysman.emdrep.config.ConfigurationException: FATAL Configuration Exceptions

        at oracle.sysman.emdrep.config.EMSchemaConfiguration.perform(EMSchemaConfiguration.java:232)
        at oracle.sysman.emcp.EMReposConfig.uploadConfigDataToRepository(EMReposConfig.java:674)
        at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:370)
        at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:147)
        at oracle.sysman.emcp.EMConfig.perform(EMConfig.java:222)
        at oracle.sysman.assistants.util.em.EMConfiguration.run(EMConfiguration.java:460)
        at java.lang.Thread.run(Thread.java:595)
2010-6-13 11:05:43 oracle.sysman.emcp.EMReposConfig invoke
信息: 有关详细资料, 请参阅 D:\oracle\cfgtoollogs\emca\erp\emca_repos_config_<日期>.log 中的日志文件。
2010-6-13 11:05:43 oracle.sysman.emcp.EMReposConfig invoke
严重: 将配置数据上载到资料档案库时出错
2010-6-13 11:05:43 oracle.sysman.emcp.EMConfig perform
严重: 将配置数据上载到资料档案库时出错
有关详细资料, 请参阅 D:\oracle\cfgtoollogs\dbca\erp\emConfig.log 中的日志文件。
2010-6-13 11:05:43 oracle.sysman.emcp.EMConfig perform
配置: Stack Trace:
oracle.sysman.emcp.exception.EMConfigException: 将配置数据上载到资料档案库时出错
        at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:382)
        at oracle.sysman.emcp.EMReposConfig.invoke(EMReposConfig.java:147)
        at oracle.sysman.emcp.EMConfig.perform(EMConfig.java:222)
        at oracle.sysman.assistants.util.em.EMConfiguration.run(EMConfiguration.java:460)
        at java.lang.Thread.run(Thread.java:595)
2010-6-13 11:05:43 oracle.sysman.emcp.EMConfig restoreOuiLoc
配置: Restoring oracle.installer.oui_loc to D:\oracle\product\11.1.0\db_1\oui


emca_repos_config_2010_06_13_11_05_42.log  如下:
2010-6-13 11:05:43 oracle.sysman.emdrep.config.EMSchemaConfiguration perform
信息: OracleHome: D:\oracle\product\11.1.0\db_1
2010-6-13 11:05:43 oracle.sysman.emdrep.config.EMSchemaConfiguration getConfigurationXMLs
信息: [D:\oracle\product\11.1.0\db_1\sysman\admin\emdrep\sql\core\configuration.xml]
2010-6-13 11:05:43 oracle.sysman.emdrep.config.EMSchemaConfiguration getConfigIntegrations
信息: Number of Configuration Instances:1
2010-6-13 11:05:43 oracle.sysman.emdrep.config.EMSchemaConfiguration getConfigIntegrations
信息: oracle.sysman.emdrep.util.TransxWrapper
    D:\oracle\product\11.1.0\db_1\jlib/transx.zip
    D:\oracle\product\11.1.0\db_1\xdk/lib/transx.zip
    D:\oracle\product\11.1.0\db_1\lib/transx.zip
    D:\oracle\product\11.1.0\db_1\lib/xmlparserv2.jar
    D:\oracle\product\11.1.0\db_1\lib/xsu12.jar
    D:\oracle\product\11.1.0\db_1\jlib/xdb.jar
    D:\oracle\product\11.1.0\db_1\rdbms/jlib/xdb.jar
    D:\oracle\product\11.1.0\db_1\jdbc/lib/ojdbc14.jar
    D:\oracle\product\11.1.0\db_1\sysman/jlib/emCORE.jar
    D:\oracle\product\11.1.0\db_1\oc4j/jdbc/lib/ojdbc14.jar
    D:\oracle\product\11.1.0\db_1\oc4j/jdbc/lib/ojdbc14dms.jar
    D:\oracle\product\11.1.0\db_1\jdbc/lib/ojdbc5.jar
    D:\oracle\product\11.1.0\db_1\jdbc/lib/ojdbc5dms.jar
    D:\oracle\product\11.1.0\db_1\oc4j/lib/dms.jar
    D:\oracle\product\11.1.0\db_1\oc4j/jdbc/lib/dms.jar
    D:\oracle\product\11.1.0\db_1\dms/lib/dms.jar
2010-6-13 11:05:43 oracle.sysman.emdrep.config.IConfigurationContext createConnection
信息: jdbcUrl = jdbc: oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=XMJFJY_R710_01)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=erp)))
2010-6-13 11:05:43 oracle.sysman.emdrep.config.IConfigurationContext createConnection
信息: jdbcUrl = jdbc: oracle: oci:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=XMJFJY_R710_01)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=erp)))
2010-6-13 11:05:43 oracle.sysman.emdrep.config.EMSchemaConfiguration$ConfigInstance run
严重: null
java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at oracle.sysman.emdrep.config.EMSchemaConfiguration$ConfigInstance.run(EMSchemaConfiguration.java:469)
        at java.lang.Thread.run(Thread.java:595)
Caused by: java.lang.UnsatisfiedLinkError: no ocijdbc10 in java.library.path
        at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1682)
        at java.lang.Runtime.loadLibrary0(Runtime.java:822)
        at java.lang.System.loadLibrary(System.java:993)
        at oracle.jdbc.driver.T2CConnection$1.run(T2CConnection.java:3139)
        at java.security.AccessController.doPrivileged(Native Method)
        at oracle.jdbc.driver.T2CConnection.loadNativeLibrary(T2CConnection.java:3135)
        at oracle.jdbc.driver.T2CConnection.logon(T2CConnection.java:221)
        at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:519)
        at oracle.jdbc.driver.T2CConnection.<init>(T2CConnection.java:132)
        at oracle.jdbc.driver.T2CDriverExtension.getConnection(T2CDriverExtension.java:78)
        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:816)
        at java.sql.DriverManager.getConnection(DriverManager.java:525)
        at java.sql.DriverManager.getConnection(DriverManager.java:140)
        at oracle.sysman.emdrep.config.IConfigurationContext.createConnection(IConfigurationContext.java:201)
        at oracle.sysman.emdrep.config.IConfigurationContext.createConnection(IConfigurationContext.java:240)
        at oracle.sysman.emdrep.config.IConfigurationContext.getConnection(IConfigurationContext.java:194)
        at oracle.sysman.emdrep.config.IConfigurationContext.init(IConfigurationContext.java:96)
        ... 6 more

2010-6-13 11:05:43 oracle.sysman.emdrep.config.EMSchemaConfiguration perform
警告: Exception Occured during Execution of oracle.sysman.emdrep.util.TransxWrapper
2010-6-13 11:05:43 oracle.sysman.emdrep.config.EMSchemaConfiguration perform
严重: FATAL EXCEPTIONS:
FATAL Configuration Exceptions

下面是解决过程:

   首先,我怀疑是网络问题,直接在本机PING主机名,通过。

   其次,怀疑防火墙问题,关闭了防火墙,再重新安装,错误依旧。

 

在OTN上找到此问题的解释:

   Cause
The windows machine is in an active directory and is using IPv6. When the short hostname is pinged, it is resolved via the fully qualified hostname to an IPv6 (ISATAP) address eg:-


ping machine1

Pinging machine1.uk.oracle.com [fe80::f1bb:2ed:4d5a:1732] with 32 bytes of data:
Reply from fe80::f1bb:2ed:4d5a:1732: time<1ms

Dbconsole 11.2 is built around Grid Control 10.2.0.4 and so is not IPv6 compliant. Grid Control 11.1.0.1 is IPv6 compliant.. The version of dbconsole which is built around Grid Control 11.1.0.1 will be IPv6 compliant. (the version which dbconsole is built round is shown in the output of emctl status agent).



Solution
Add entries into the host file, to force IPv4 style resolution:-

1) edit the windows\system32\drivers\etc\hosts file

2) add an entry for the machine of the format:-

<ipaddress> <fully qualified hostname> <short hostname>

eg.

138.3. 146.333 machine1.uk.oracle.com machine1

Now when pinging the short hostname, the ipv4 style ipaddress is returned.

简单解释:

   2008默认使用IPV 6协议解析,被ping主机名,它是通过完整主机名解析到IPv6(ISATAP)地址

   例如:  pingwww.swsport.com 
 

   DBCONSOLE 11.2围绕网格控制10.2.0.4,所以不支持IPv6兼容。网格控制11.1.0.1是IPv6兼容..(哪个DBCONSOLE内置一轮的版本中所示的输出emctl状态剂)。

   

   也就是说操作系统用IPV 6解析地址,而你的EM确需要IPV 4解析的地址。解决方法:强行使用IPV4 解析地址

1)编辑WINDOWS \ SYSTEM32 \ DRIVERS \ ETC \ hosts文件

2) add an entry for the machine of the format:- 2)添加一个条目机的格式: -

<ipaddress> <fully qualified hostname> <short hostname> <ip地址><完全合格的主机名> <短主机名


注释:fully qualified host name就是fully qualified domain name

eg.例如。

192.168.77.1  swspor.oraclemachine.com  oraclemachine 

.现在,当执行ping短的主机名,IPv4形式IPAddress是回来了。

之后:

   

手动重建em资料库
下面是emca创建em的过程,大致演示一下:
1, 删除建立失败的em档案库:

C:\Documents and Settings\Administrator>emca -deconfig dbcontrol db -repos drop



2, 重新创建em档案库:

   C:\Documents and Settings\Administrator>emca -config dbcontrol db -repos create
  
0 0