设为首页 收藏本站
查看: 4684|回复: 0

[经验分享] Oracle 11g. 12505错误 已解决. 仔细看哦.

[复制链接]

尚未签到

发表于 2016-7-25 09:48:26 | 显示全部楼层 |阅读模式
引用

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.
  等着启动吧.
  哈哈..
  终于搞定了...

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-249010-1-1.html 上篇帖子: 解决ASP.NET安装后无法访问Oracle的问题 下篇帖子: 利用 Hibernate 储存经纬度 到 Oracle 的三种方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表