zoukankan      html  css  js  c++  java
  • Oracle错误 ora-12514 解决方法

    成功连到数据库上之后,查看listener状态:lsnrctl status

    status READY 状态,需要由非归档转为归档模式,故操作如下:

    1.关闭数据库shutdown immediate 正常关闭;

    2.启动数据库到mount状态,startup mount,发生报错:

    3.此时查看listener状态: lsnrctl status

    为status BLOCKED状态,网上搜索解决方法http://zhidao.baidu.com/question/278798900.html

    4.重写listener.ora文件(蓝色为增加部分)

    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc) 

          (ORACLE_HOME = f:oracleproduct10.1.0Db_1)
          (PROGRAM = extproc) 

        )

     (SID_DESC =
          (GLOBAL_DBNAME = orcl)
          (ORACLE_HOME = f:oracleproduct10.1.0Db_1)
          (SID_NAME = orcl)
        )
    )

    5.重启监听:lsnrctl start;查看状态lsnrctl status:

    为status UNKNOWN状态。

    6.连到实例,关闭数据库,启动数据库到mount状态,均正常!

    查看某服务是动态注册或是静态注册。

    可以使用命令lsnrctl status 来查看数据库是动态注册还是静态注册。

    实例状态为UNKNOWN时,表示此服务是静态注册的设置,监听器表明他不知道关于该实例的任何信息,只有当用户发出连接请求时,他才检查该实例是否存在。

    而动态注册的数据库通过状态信息中的状态为READY或BLOCKED来指明。不管何时关闭数据库,动态注册的数据库都会动态的从监听器中注销掉,而与之相关的信息将会从状态列表消失,这样不管数据库是在运行还是已经关闭,监听器都知道他的状态。

    待补充。。。

    ************************************************************

    ORACLE XE 修改方法

    解决办法:

      修改目录E:Oracle10gXEUnivapporacleproduct10.2.0serverNETWORKADMIN下的文 件tnsnames.ora、listener.ora将这两个文件中HOST后面的主机都修改为127.0.0.1然后重启 OracleServiceXE、OracleXETNSListener服务
    这时pl/sql developer连接oracle时报出“ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务”的错误,再次修改listener.ora文件,修改前该文件内容为
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = E:Oracle10gXEUnivapporacleproduct10.2.0server)
          (PROGRAM = extproc)
        )
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = E:Oracle10gXEUnivapporacleproduct10.2.0server)
          (PROGRAM = extproc)
        )
      )
     
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
          (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
        )
      )
     
    DEFAULT_SERVICE_LISTENER = (XE)
     
    修改的方式是:再在该文件中添加一个需要连接的数据库实例的描述,就是添加一个SID_DESC,我自己连接的数据库实例是XE,添加后的文件内容为:
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = E:Oracle10gXEUnivapporacleproduct10.2.0server)
          (PROGRAM = extproc)
        )
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = E:Oracle10gXEUnivapporacleproduct10.2.0server)
          (PROGRAM = extproc)
        )
        (SID_DESC =
          (SID_NAME = XE)
          (ORACLE_HOME = E:Oracle10gXEUnivapporacleproduct10.2.0server)
    )
    /*红色字体部分即为新加的数据库实例XE的实例描述,注意该实例描述的ORACLE_HOME后面不能像其它实例那样加(PROGRAM = extproc),否则会报“ORA-28547: TNS: 连接服务器失败,可能是Net8管理错误。”*/
      )
     
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
          (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
        )
      )
     
    DEFAULT_SERVICE_LISTENER = (XE)
     
  • 相关阅读:
    UVALive 7509 Dome and Steles
    HDU 5884 Sort
    Gym 101194H Great Cells
    HDU 5451 Best Solver
    HDU 5883 The Best Path
    HDU 5875 Function
    卡特兰数
    UVa 11729 Commando War 突击战
    UVa 11292 The Dragon of Loowater 勇者斗恶龙
    Spark Scala Flink版本对应关系
  • 原文地址:https://www.cnblogs.com/dingding0505/p/4789402.html
Copyright © 2011-2022 走看看