zoukankan      html  css  js  c++  java
  • 【翻译自mos文章】改变数据库用户sysman(该用户是DB Control Repository 的schema)password的方法

    改变数据库用户sysman(该用户是DB Control Repository 的schema)password的方法

    參考原文:
    How To Change the Password of the Database User Sysman (DB Control Repository Schema) (Doc ID 259379.1)

    适用于:
    Enterprise Manager for Oracle Database - Version 10.1.0.2 to 11.2.0.3 [Release 10.1 to 11.2]
    Enterprise Manager for Oracle Database - Version 11.2.0.4 to 11.2.0.4 [Release 11.2]
    Information in this document applies to any platform.


    目的:
    sysman的口令被加密存放在多个地方,因此。the Database Control (OMS and Agent)能够在不须要sysmanpassword的情况下能够訪问database。
    所以,当改动sysman口令的时候,新口令必须提供给the Database Control OMS and Agent.

    假设新口令没有更新给the Database Control OMS and Agent, oms将不能訪问数据库,而且在trace file中。你会注意到以下的错误:
    2012-05-31 13:50:13,513 [PAFStartupThread] ERROR conn.ConnectionService verifyRepositoryEx.891 - Invalid Connection Pool. ERROR = ORA-01017: invalid username/password;
    logon denied2012-05-31 13:50:20,717 [HTTPThreadGroup-4] ERROR conn.ConnectionService verifyRepositoryEx.891 - Invalid Connection Pool. ERROR = ORA-28000: the account is locked
    2012-05-31 13:50:20,764 [HTTPThreadGroup-2] ERROR eml.OMSHandshake processFailure.806 - OMSHandshake failed.
    (AGENT URL = https://uk-sno1-m018.uk-paper.group.wan:3938/emd/main)(ERROR = INTERNAL_ERROR)(CAUSE =java.sql.SQLException: ORA-01017: invalid username/password; logon denied

    本文解释了在不断开Database 与 Database Control的情况下,改动数据库用户sysmanpassword的方法。

    注意:Enterprise Manager 10g 已经进入扩展支持。oracle强烈建议升级你的环境到Enterprise Manager 11g or 12c。
    Enterprise Manager 11g or 12c 如今是处于premier Support(翻译成:首先支持?)

    范围:
    全部使用Enterprise Manager DB Control 10g or 11g的数据库管理员。

    细节:
    注意:安装在 Windows 2008 / Vista上的 DB Control Release 10.2.0.3 及其更高版本号,emctl 命令可能会失败,错误是"Permission Denied".该错误的解决方法,请见以下的文章:
    Document 1164293.1 - Executing Any EMCTL Command on Windows 2008 / Vista Returns "Permission denied" Error


    第一种情况:Database Release prior 10.2.0.4

     sysman 这个用户是 the standalone repository of the Enterprise Manager DB Control 的  schema
     
     为了确保你是在正确的数据库中改动了sysman口令,请检查环境变量ORACLE_SID是否被设置,环境变量 ORACLE_HOME 是否被设置,PATH是否包含 正确的  $ORACLE_HOME/bin
     
     请改动sysman口令时严格遵守例如以下的步骤。否则。你的DB Control 将会执行异常。


     1.停止 DB Control
      On Unix
      $ emctl stop dbconsole
     
      On Windows 
      Stop the Windows Service OracleDBConsole
      Or
      Open a Command Window and type
      C> emctl stop dbconsole
     
      2.确认DB Control 已经被停止:
      On Unix
      $ emctl status dbconsole
     
      On Windows
      Check the status of the Windows Service OracleDBConsole
      Or
      Open a DOS Command Window and type
      C> emctl status dbconsole
     
    3. 使用dba 权限登陆sqlplus。运行例如以下的语句:
    SQL> alter user sysman identified by <password> ;
    样例:
    SQL> alter user sysman identified by rainbow ;

    4.检查新password是否能登陆到db中
    SQL> connect sysman/[@database_alias]
    Example:
    SQL> connect sysman/rainbow@DBRH

    5.到$ORACLE_HOME/host_sid/sysman/config中
       5.1 将emoms.properties 文件做一个备份emoms.properties.orig
       5.2 编辑emoms.properties文件:
          5.2.1 查找以以下内容开头的行:
                oracle.sysman.eml.mntr.emdRepPwd=
                以新password(额外注:明文不带;号)替换掉加密后的值。
                样例:oracle.sysman.eml.mntr.emdRepPwd=rainbow
          5.2.2 找以下的行:
                oracle.sysman.eml.mntr.emdRepPwdEncrypted=TRUE
                用FALSE替换TRUE
    6.重新启动 DB Control
    On Unix
    $ emctl start dbconsole

    On Windows
    Start the Windows Service OracleDBConsole
    Or
    Open a DOS Command Window and type
    C> emctl start dbconsole

    7.检查password已经被加密:
      查看$ORACLE_HOME/host_sid/sysman/config/emoms.properties文件
        7.1 搜索以以下开头的行:
          oracle.sysman.eml.mntr.emdRepPwd=
          确认password已经被加密
        7.2 搜索以以下开头的行:
          oracle.sysman.eml.mntr.emdRepPwdEncrypted=
          确认该值是 TRUE


    另外一种情况: Database Release beginning 10.2.0.4
     sysman 这个用户是 the standalone repository of the Enterprise Manager DB Control 的  schema
     
     为了确保你是在正确的数据库中改动了sysman口令。请检查环境变量ORACLE_SID是否被设置,
     
     对于 DB Control Release 11.2 以及更高版本号来说,你须要将环境变量ORACLE_UNQNAME设置为数据库參数DB_UNIQUE_NAME 的值
     你必须检查环境变量 ORACLE_HOME 是否被设置,PATH是否包含 正确的  $ORACLE_HOME/bin
     
     请改动sysman口令时严格遵守例如以下的步骤,否则。你的DB Control 将会执行异常。
     
     1.1.Stop the DB Control
        On Unix
        $ emctl stop dbconsole
       
        On Windows
        Stop the Windows Service OracleDBConsole
        Or
        Open a Command Window and type
        C> emctl stop dbconsole

    2. 确认 DB Control 已经被停止
       On Unix  
       $ emctl status dbconsole
      
       On Windows
       Check the status of the Windows Service OracleDBConsole
       Or
       Open a DOS Command Window and type
       C> emctl status dbconsole

    3. 使用dba 权限登陆sqlplus,运行例如以下的语句:
       SQL> alter user sysman identified by <password> ;
    4. 确认新password:
       SQL> connect sysman/[@database_alias]
    5. 在database directory $ORACLE_HOME/bin文件夹中,运行:
       On Unix
       $ emctl setpasswd dbconsole  
       Provide the new SYSMAN password
         
       On Windows  
       C>: emctl setpasswd dbconsole
       Provide the new SYSMAN password

    6.重新启动DB Control
      On Unix
      $ emctl start dbconsole
     
      On Windows
      Start the Windows Service OracleDBConsole
      Or
      Open a DOS Command Window and type
      C>: emctl start dbconsole

  • 相关阅读:
    SpringCloud--gateway网关基础入门
    SpringCloud--gateway网关基本介绍
    编程的命名规则
    [java基础知识]java安装步骤
    [java基础]java跨平台的基础知识
    [java基础]计算机基础知识
    外观模式
    适配器模式
    设计模式UML类图基础
    拾取坐标
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5215886.html
Copyright © 2011-2022 走看看