joozh 发表于 2019-1-28 07:31:44

启动10.2.0.5的OEM时,遇到ssl: Open wallet failed, ret = 28750的错误解决方案

  概述:
  本文的运行环境描述:
  OS: redhat linux 5.5 x86_64
  DB: oracle 10.2.0.5 (single db)
  本文主要描述在linux5.5 上安装了oracle 10.2.0.5,启动oem的时候遇到错误("Open wallet failed, ret = 28750"),无法启动oem. 通过打patch和重新安装oem的方法,解决了这个问题.
  一. 问题描述:
  启动oem时,启动失败.
  $emctl start dbconsole
  TZ set to PRC

  Oracle Enterprise Manager 10g Database Control>  Copyright (c) 1996, 2010 Oracle Corporation. All rights reserved.
  https://szgd:1158/em/console/aboutApplication
  Starting Oracle Enterprise Manager 10g Database Control ......................... failed.
  ------------------------------------------------------------------
  Logs are generated in directory /oracle/product/10.2.0/db_1/szgd_szgd/sysman/log
  检查日志文件,发现报如下的错误:
  $cd $ORACLE_HOME/szgd_szgd/sysman/log
  $ tail -f emdctl.trc
  ......
  2012-03-08 17:04:26 Thread-4135643936 ERROR http: 8: Unable to initialize ssl connection with server, aborting connection attempt
  2012-03-08 17:04:28 Thread-4135086880 ERROR ssl: Open wallet failed, ret = 28750
  2012-03-08 17:04:28 Thread-4135086880 ERROR ssl: nmehlenv_openWallet failed
  二. 问题分析
  在oracle metalink上查找ssl: Open wallet failed, ret = 28750,找到一遍文档ID=1278564.1,该文档描述的现象与现在的情况完全吻合.
  文档中分析此现象的原因是:
  The Root Certificate Authority (CA) expired on 31-DEC-2010 00:00:0
  解决的办法是依照另外一个文档(ID=1222603.1)的指引,进行修补.
  在ID=1222603.1中分析了发生的现象和原因,并提示这个问题是可以通过打补丁(patch_id= 8350262)来解决,并且这个patch打的时候不需要停机.
  三. 问题解决
  在oracle metalink上下载patch(patch_id= 8350262) for 10.2.0.5,文件名称为:p8350262_10205_Generic.zip
  将该文件上传到数据库服务器,然后解包,使用opatch工具,打上这个补丁.
  删除旧的oem环境
  $emctl stop dbconsole
  $emctl stop agent
  $ps -ef|grep em
  $kill -9 {em的进程号)
  $emca -deconfig dbcontrol db -repos drop
  emca的这个命令,是要去删除oem的相关用户和对象;这个命令有时候不能顺利完成工作,需要手工删除对象,方法如下:
  SQL>drop user sysman cascade;
  SQL>drop role MGMT_USER;
  SQL>drop user MGMT_VIEW cascade;
  SQL>drop public synonym MGMT_TARGET_BLACKOUTS;
  SQL>drop public synonym SETEMVIEWUSERCONTEXT;
  删除旧的oem的相关目录
  $cd $ORACLE_HOME
  $rm -rf szgd_szgd ({HOSTNAME}_{ORACLE_SID})
  补充:
  先将emdrop:
  emctl stop dbconsole
  emca -deconfig dbcontrol db
  emca -repos drop
  使用emca命令重新创建oem
  $emca -config dbcontrol db -repos create
  重建完成后,将自动启动oem,我们可以通过查看相关日志内容,看到命令执行的结果.
djb1008 发表于:2012.03.09 18:07 ::分类: ( Oracle ) ::阅读:(679次) :: 评论 (0)
页: [1]
查看完整版本: 启动10.2.0.5的OEM时,遇到ssl: Open wallet failed, ret = 28750的错误解决方案