注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

天涯倦客的博客

祝福你朋友永远快乐!

 
 
 

日志

 
 

Oracle协议适配器错误解决办法  

2013-03-23 22:41:17|  分类: Oracle |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
在Oracle中新建了一个数据库,今天把它删了之后再登录SQL*PLUS就登不上去了,出现ORA-12560:TNS:协议适配器错误。

  ORA-12560: TNS: 协议适配器错误的解决方法

  造成ORA-12560: TNS: 协议适配器错误的问题的原因有三个:

  1.监听服务没有起起来。windows平台个一如下操作:开始---程序---管理工具---服务,打开服务面板,启动oraclehome92TNSlistener服务。

  2.database instance没有起起来。windows平台如下操作:开始---程序---管理工具---服务,打开服务面板,启动oracleserviceXXXX,XXXX就是你的database SID.

  3.注册表问题。regedit,然后进入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0将该环境变量 ORACLE_SID设置为XXXX,XXXX就是你的database SID.或者右几我的电脑,属性--高级--环境变量---系统变量--新建,变量名=oracle_sid,变量值=XXXX,XXXX就是你的 database SID.或者进入sqlplus前,在command line下输set oracle_sid=XXXX,XXXX就是你的database SID.

  经过以上步骤,就可以解决问题。

  =======================================

  1、ORA-12541:TNS:没有监听器

  原因:没有启动监听器或者监听器损坏。如果是前者,使用命令net start OracleOraHome81TNSListener(名字可能有出入)即可;如果是后者,则使用“Net8 Configuration

  Assistant”工具向导之“监听程序配置”增加一个监听器即可(基本不用写任何信息,一路OK。在添加之前可能需要把所有的监听器先删除!)

  2、ORA-12500:TNS:监听程序无法启动专用服务器进程或ORA-12560:TNS:协议适配器错误

  原因:ORACLE的数据库服务没有启动。使用命令net start ORACLESERVICEORADB(ORADB为数据库名字)即可。如果仍没有解决,请继续向下看。

  3、如果数据库服务启动失败,则很有可能是其注册表项值损坏,最好的做法是以下两步:

  1)ORADIM -DELETE -SID oradb 删除数据库服务项

  2)ORADIM -NEW -SID oradb 新增数据库服务项

  注:这个过程中如果出错,就重启计算机!

  4、ORA-12154:TNS:能解析服务名

  原因:ORACLE的网络服务名没有正确配置。请使用“Net8 Configuration Assistant”工具向导之“本地网络服务名配置”配置TNS即可。如果仍没有解决,请继续向下看。

  5、ORA-1034 :TNS:ORACLE不可用

  原因:ORACLE的数据库服务正确启动,但是数据库没有打开!

  使用命令:

  1)svrmgrl 启动服务管理器

  2)connect internal 以internal身份登陆

  3)startup 打开数据库

  6、ORA-12560:TNS:协议适配器错误(顽固性的)

  原因:未知。

  解决:必杀技--打开“Windows任务管理器”,杀死ORACLE.exe及ORADIM.exe进程,书写自己的

  ora_startup.bat,执行之!

  PS:

  1、我的ora_startup.bat:

  net start OracleOraHome81TNSListener

  net start ORACLESERVICEORADB

  svrmgrl 一般情况下不用,不过有时少不了它的,具体步骤见第5步。

  2、我的ora_shutdown.bat:

  net stop OracleOraHome81TNSListener

  net stop ORACLESERVICEORADB

  ORACLE_HOME=/u01/app/oracle/product/8.1.6

  export ORACLE_HOME/ 包括Oracle软件的目录 /

  LD_LIBRARY_PATH=/u01/app/oracle/product/8.1.6/lib;

  export LD_LIBRARY_PATH

  ORACLE_BASE=/u01/app/oracle

  export ORACLE_BASE/ 包括Oracle软件的目录和管理软件的目录 /

  ORACLE_SID=ORCL

  export ORACLE_SID/ 缺省数据库的标识 /

  ORACLE_TERM=vt100

  export ORACLE_TERM

  ORA_NLS33=/u01/app/oracle/product/8.1.6/

  ocommon/nls/admin/data

  export ORA_NLS33 / 语言支持 /

  PATH=$PATH: /u01/app/oracle/product/8.1.6/bin

  export PATH


////////////////////////////////////////////////////////////////////////////////

1.ORA-12560: TNS: 协议适配器错误

Microsoft Proxy Client和Oracle引起的冲突而导致发生"ORA-12560: TNS: 协议适配器错误"

刚开始一看到错误就Google了一下,找到itpub里的一篇文章,看了里面讲的3种方法,我都是

对的,奇怪的是我的同事居然可以访问我的Oracle数据库,自己居然不行,ft,这样说明应该不是

Oracle的问题,肯定是我的机器里有什么软件与Oracle有冲突,既然是 协议适配器错误,于是就把

有关网络相关的都捣鼓了一遍,最后才发现是Microsoft Proxy Client的问题,卸了重装就OK了。

2.ORA-03113:通信通道文件结束

前几天还在创建数据库时发生 "ORA-12571:TNS:包写入程序失败","ORA-03113:通信通道文件结束"错误,

找了好久,网上基本都是http://www.dbanotes.net/Oracle/ORA-03113.htm这类文章,可是看了解决不了问题

最后找到http://shidu.blogbus.com/index.html下的"Oracle9i的莫名问题 ",

3.ORA-12571:TNS:包写入程序失败

http://www.blogjava.net/justfly/archive/2006/02/04/29558.aspx创建数据库时12571的解决方法

修改D:/oracle/ora92/network/admin/sqlnet.ora中

的SQLNET.AUTHENTICATION_SERVICES= (NTS),将NTS改成NONE。重启机器就ok了。

这个问题导致原因很多.估计是由于域 (NAMES.DEFAULT_DOMAIN)或者 网络防火墙  等原因导致

才解决了这个问题,大家看一下,也许会有帮助。

4.ORA-06413:连接未打开

原因:我把Window程序默认安装的路径改成E:/Program Files/Backup(XP)/ 结果安装Oracle时,jre被安装到了

E:/Program Files/Backup(XP)/Oracle/jre/ 这个目录下 环境变量里也是这个路径 于是 Net Configuration Assistant

一直不打不开,Enterprise Manager Console可以打开但一连接就出现 "ORA-06413:连接未打开"这个错误。

于是修改Window程序默认安装的路径后 重新安装了一遍Oracle就没有这个问题了。

分析:是()括号引起的这个问题。)

  评论这张
 
阅读(647)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017