`

Oracle 11g. 12505错误 已解决. 仔细看哦.

阅读更多
引用

2009-06-23 11:07最新修改.
  虽然oracle 11g. 的12505错误 解决了.
  第二天上班来了. 想把昨天新建的数据库实例删掉.
  结果因为testdb数据库无法启动.无法删除.
  当然无法启动了.. 哈哈..
  没有解决不了的问题.
  暂时的想法:
  把配置文件改回新建的数据库示例的配置信息,主要还是修改tnsnames.ora文件.
  把监听器配置成新的数据库实例 当然三个配置文件要在修改之前备份一下哦.
  因为删除数据库会把数据库所有的信息都删掉. 因为之前的数据库已经修复 所有最好删除新的数据库之前把配置文件备份一下.
  这样删除数据库就应该没有问题了.
  删除成功之后. 在把备份好的配置文件 放到原来的目录$ORACLE_HOME$/NETWORK/ADMIN/下.
  应该就没有问题了.
  因为鄙人还没有测试. 只是想法. 呵呵..
  不过应该是没有什么问题的.
  如果有问题. 大家一起探讨啊.!十分欢迎!
  小弟有礼了.
 
修复步骤.
1->创建新的数据库示例.
2.修改tnsnames.ora. 把新建的数据库实例修改为出现异常的.
3.打开注册表修改oracle_sid
4.cmd->sqlplus /nolog->conn sys/change_on_install as sysdba->startup
5.等待数据库装载、启动..

等命令行出现数据库已启动.就大功告成了.
随便去测试吧..
功夫不负有心人啊..
大家膜拜吧!
2009-07-01 修改:
  windows 事件查看器 看来要定期清除一下. 1M 几天就满了.. 大家都设置多大啊.!
转到正题 大家如果startup启动不了数据库。
可能是因为oracle实例还是开启着.
SQL>shutdown abort;
SQL>startup;


  我现在用的是.Oracle 11g. 这两天做项目 又碰到棘手的问题了.ORA-12505错误.
也许是现在人们用的Oracle 11g的人和公司不多吧..
Oracle 11g. 的3个配置文件. 在出错以后. 发现跟网上人们所讲的3个配置文件完全不一样.
上一次出现错误. 几天无果. 新建数据库. 结果报windows记录事件错误. 卸载Oralce c重装.也不可以. 当时也没找到解决方案. 只好重装系统. 才算搞定.
  今天找到windows记录事件Exception答案. 可以在. 开始->控制面板->管理工具->事件查看器
可以看到 应用程序、安全性、系统3个日志文件. 原来是应用程序的日志文件已经满了. 无奈只好手动把最大限制改到1024. 因为不敢清除. 所以只好改大.
  关于ORA-12505错误 11G版本的数据库还是没有找到解决方案.
  只有重新创建一个数据库. 凑活使用.
  但问题暂时还没有解决.
  现将没有问题的数据库的3个主要的配置文件源码贴出. 记录一下.等出问题的时候. 覆盖不知啊好使不好使.
tnsnames.ora
# tnsnames.ora Network Configuration File: E:\app\Administrator\product\11.1.0\db_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.

TESTDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = MICROSOF-CB7F22)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = testdb)
    )
  )

sqlnet.ora
# This file is actually generated by netca. But if customers choose to 
# install "Software Only", this file wont exist and without the native 
# authentication, they will not be able to connect to the database on NT.

SQLNET.AUTHENTICATION_SERVICES = (NTS)

listener.ora
# listener.ora Network Configuration File: E:\app\Administrator\product\11.1.0\db_1\network\admin\listener.ora
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = MICROSOF-CB7F22)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

..
另附.网络上.Oralce 10g. ORA-12505错误的解决办法.
因为本人装的是11g 所以也验证不了.
暂时代码贴出.
连接 jdbc Oracle10g 错误 ,JDBC代码无问题,服务也启动,连接字符串也是对的,但是在eclipse 下报错,错误信息如下:

java.sql.SQLException: Listener refused the connection with the following error:

ORA-12505, TNS:listener does not currently know of SID given in connect descriptor

The Connection descriptor used by the client was:

localhost:1521:orcl


at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:124)

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:279)

at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:318)

at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:343)

at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:147)

at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:31)

at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:545)

at java.sql.DriverManager.getConnection(Unknown Source)

at java.sql.DriverManager.getConnection(Unknown Source)

at cn.com.db.DBAccess.getConnection(DBAccess.java:33)

at cn.com.db.DBAccess.main(DBAccess.java:95)

Null

在CMD下snrctl status  ,tnsping orcl 显示都正常。 

在pl/SQL下用

select open_mode from v$database;

show parameter instance;

select INSTANCE_NAME from v$instance;

sqlplus sys/oracle@orcl

查询都显示正常,就是用pl/sql 登录时 填“数据库名” orcl  就无法登陆,报ora -12514 

l最后有效的解决方法:

修改listener.ora文件 

原listener.ora文件:

# listener.ora Network Configuration File: D:\oracle\product\10.1.0\Db_4\network\admin\listener.ora

# Generated by Oracle configuration tools.


SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = D:\oracle\product\10.1.0\Db_4)

      (PROGRAM = extproc)

    )

  )


LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS_LIST =

        (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))

      )

      (ADDRESS_LIST =

        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

      )

    )

  )



修改后的文件:

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

# listener.ora Network Configuration File: D:\oracle\product\10.1.0\Db_4\network\admin\listener.ora

# Generated by Oracle configuration tools.


SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = D:\oracle\product\10.1.0\Db_4)

      (PROGRAM = extproc)


    )


 (SID_DESC =

       (GLOBAL_DBNAME = orcl)

       (ORACLE_HOME =  D:\oracle\product\10.1.0\Db_4)  

       (SID_NAME = orcl)

      )

   )


LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS_LIST =

        (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))

      )

      (ADDRESS_LIST =

        (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

      )

    )

  )

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

如果错误还存在,也可以那试一下:
set oracle_sid=<sid_name>
sqlplus /nolog
connect sys/pwd as sysdba
startup




希望能对大家有所帮助..
Ps:
终于搞定了......
如上方法...
1.修改tnsnames吧Oracle_SID修改为坏掉的数据库名字.
2.cmd->regedit--找到Oracle 修改Oracle_SID=XXXXXX,自己的数据库示例.
   或 cmd->set oracle_sid=XXXXXX;
3.conn sys/pwd as sysdba
4.startup.
  等着启动吧.
  哈哈..
  终于搞定了...
0
0
分享到:
评论

相关推荐

    oracle 10g exp.exe

    Oracle 10g的`exp.exe`是Oracle Data Pump Export工具的一部分,用于从数据库中导出数据和对象。当你遇到“exp.exe已停止工作”的错误时,这通常意味着在尝试执行数据导出过程中遇到了问题。以下是一些可能导致该...

    Oracle GoldenGate 11.2.1.0.3 for Oracle 11g on Linux x86-64 - V34339-01.zip

    综上所述,Oracle GoldenGate 11.2.1.0.3是一个强大而复杂的工具,旨在为Oracle 11g用户提供可靠的数据复制解决方案。通过仔细阅读提供的文档和遵循最佳实践,用户可以有效地管理和维护他们的数据流,确保数据的一致...

    window10安装oracle11g.doc

    在本文中,我们将详细探讨如何在Windows 10操作系统上安装Oracle 11g数据库,以及后续的PLSQL Developer配置和使用Navicat Premium工具连接Oracle数据库的步骤。以下是整个过程的详细指南: **一、安装Oracle 11g...

    oracle 11g Linux64位安装包 百度云盘提取码.txt

    Oracle 11g for Linux 64位系统的安装需要仔细规划和执行,尤其是在环境准备阶段,必须确保所有的系统设置和依赖都满足Oracle的最低要求。通过遵循上述步骤,可以较为顺利地完成Oracle 11g的安装与配置过程,为后续...

    oracle 11g 安装apex4.x文档

    Oracle APEX 4.0为开发者提供了一个高效、便捷的开发平台,通过上述步骤,可以实现在Oracle Database 11g环境中成功安装和配置Oracle APEX 4.0。需要注意的是,在实际操作过程中可能会遇到各种具体问题,建议仔细...

    oracle10g OPatch 10.2.0.5.1

    Oracle 10g OPatch 10.2.0.5.1 是Oracle数据库系统中的一个关键组件,它主要用于更新和修补Oracle软件。在64位Linux平台上,OPatch是确保数据库安全、稳定运行的重要工具。了解并掌握OPatch的工作原理、安装与使用...

    AIX-6.1安装ORACLE11g

    在AIX-6.1系统上安装Oracle Database 11g的详细过程涉及多个系统配置方面,下面将逐一解释: 1. 系统准备: - 操作系统版本需求:安装Oracle前,需要确认AIX系统的版本。使用命令“oslevel -s”可以查询当前的操作...

    Centos6安装oracle11g详细图文.doc

    在CentOS 6环境下安装Oracle 11g是一项复杂的过程,需要遵循一系列步骤来确保所有必要的组件和配置都已到位。以下是对整个安装过程的详细解释: 首先,更新系统是安装任何新软件前的重要步骤。在CentOS 6中,通过`...

    Centos6.4_64安装oracle11g详细图文及错误解决

    在本文中,我们将详细探讨如何在CentOS 6.4 64位系统上安装Oracle 11g数据库,以及解决可能出现的错误。这个过程包括清理YUM信息、安装依赖软件包、修改内核参数、创建用户和组、设置用户Shell限制、新建安装目录等...

    oracle 11g安装先决条件检查全部失败,BIEE11G 解决办法

    ### Oracle 11g 安装先决条件检查全部失败的解决方案 #### 问题概述 在尝试安装Oracle 11g以及BIEE (Business Intelligence Enterprise Edition) 11G时,用户遇到了安装向导中的先决条件检查全部失败的问题。这些...

    oracle11g导出还原到oracle10g

    ### Oracle 11g 数据库导出还原到 Oracle 10g 的步骤详解 #### 一、导出Oracle 11g数据至DMP文件 在进行Oracle版本之间的迁移时,通常会采用导出(Export)的方式将源数据库的数据转换为可移植的格式,再通过导入...

    windowsServer2008_64位安装oracle10G全过程

    ### Windows Server 2008 64位安装Oracle 10G全过程详解 #### 一、概述 本文档详细介绍了在Windows Server 2008 64位系统上安装Oracle 10G数据库的全过程。对于初次接触此过程的技术人员来说,这将是一个非常有价值...

    Oracle11g R2 补丁包 p8670579_112010

    Oracle 11g R2是Oracle数据库的一个重要版本,提供了许多增强的功能和性能优化。"p8670579_112010" 补丁包是针对这个版本的一个特定修复或更新,旨在解决已知问题并提高系统的稳定性和安全性。在Linux环境下运行...

    Oracle 10g for AIX 5309 rootpre.sh执行错误

    当在AIX环境下安装Oracle 10g时,可能会遇到各种挑战,其中之一就是`rootpre.sh`脚本执行错误。 `rootpre.sh`是Oracle数据库安装过程中的一个关键脚本,通常由root用户执行,用于完成一些系统级别的配置和权限设定...

    Oracle11g安装部署文档.docx

    Oracle 11g是一款企业级的关系型数据库管理系统,由甲骨文公司开发并提供。在Linux环境下安装Oracle 11g通常需要先搭建本地YUM(Yellowdog Updater, Modified)源,因为Oracle的安装包通常较大且依赖较多,通过YUM...

    32和64位最全oracle ocidll文件

    特别地,这个集合可能包括oci.dll、oci11.dll、oci12c.dll等不同版本的文件,对应Oracle的不同数据库版本,如Oracle 11g、Oracle 12c等。 描述中提到的"EZDML无法导入oracle数据表问题",可能是因为缺少或版本不...

    oracle 10g 管理 sql 错误解决

    Oracle 10g是一款历史悠久但仍然广泛使用的数据库管理系统,它为用户提供了一套强大的SQL查询和管理工具。在日常操作中,DBA(数据库管理员)和SQL开发者经常遇到各种错误,这些错误可能涉及到数据库配置、数据操作...

    安装 oracle10g 常见错误

    在进行Oracle 10g数据库在Linux环境下的安装过程中,可能会遇到各种各样的问题。本文将根据提供的资源信息,详细...通过仔细准备并遵循上述建议,可以有效避免或解决常见的安装错误,顺利完成Oracle 10g的部署工作。

    Redhat linux 9下安装oracle10g.pdf

    安装Oracle 10g之前,需要确认系统已安装了一系列依赖包,如`compat-libstdc++-33-3.2.3-61`,`elfutils-libelf`,`glibc`,`libaio`,`unixODBC`,`sysstat`等。使用`rpm -q`命令检查这些包是否已经安装。如果缺少...

Global site tag (gtag.js) - Google Analytics