进oracle数据库报ORA-12560 TNS:PROTOCOL ADAPTER ERROR错误

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进oracle数据库报ORA-12560 TNS:PROTOCOL ADAPTER ERROR错误相关的知识,希望对你有一定的参考价值。

具体问题是这样的:笔记本是window7系统,我装了一个虚拟机是XP的在虚拟机上装了oralce8,实例放在了主机的E盘,现在进数据数据库,报oracle数据库报ORA-12560 TNS:PROTOCOL ADAPTER ERROR错误请各位高手帮帮忙。指点一下。

进oracle数据库报ORA-12560 TNS:PROTOCOL ADAPTER ERROR错误是设置错误造成的,解决方法为:

1、查看当前节点的参数文件,发现参数文件值为空。

2、在查看节点2的时候发现节点2是正常的,而且数据库也能够正常启动。

3、于是从正常的节点2上面创建pfile文件,并把Pfile文件传送到节点1。

4、但在节点1上使用节点2创建的pfile启动数据库时依然报如下图的错误。

5、最后在网上查看发现是因为权限的问题,可能是因为添加节点时权限更改了的原因,现在把权限修改过来。

参考技术A 1.监听服务没有起起来。
windows 7平台个一如下操作:
按住windows+R 输入services.msc打开服务面板,启动oracle???TNSlistener服务。
2.database instance没有起起来。
windows平台如下操作:
按住windows+R 输入services.msc打开服务面板,启动oracleserviceXXXX,XXXX就是你的SID.
3.注册表问题。
regedit,然后进入HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME#将该环境变量ORACLE_SID设置为XXXX,XXXX就是你的SID.或者右键单击我的电脑,属性--高级--环境变量---系统变量--新建,变量名=oracle_sid,变量值=XXXX,XXXX就是你的database SID.或者进入sqlplus前,在command line下输set oracle_sid=XXXX,XXXX就是你的database SID.
经过以上步骤,就可以解决问题。

总结:我在Oracle XE 下手工新建数据库成功后,更改完启动脚本和监听文件,能够成功运行启动和停止脚本,但以用户登录数据库实例时会报ORA-12560: TNS:protocol adapter error 错误,在命令行下输set oracle_sid=ora10g后,再次登录就没问题,证明是环境变量的设置问题,根据上面第三条更改:
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_XE

修改ORACLE_SID=ora10g
再次以用户登录数据库实例,问题解决。追问

您好!感谢您的回答,监听起来了,实例服务也起来了,你说的注册表是本机的还是虚拟机的,我的oracle 是装在虚拟机里的,数据库文件放在本机的E盘了,因为数据库太大,虚拟机装不下。

参考技术B 是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.
4.主机字符串输入SID.
参考技术C 你本机是64位的,虚拟机的服务器是32位的
本机客户端换个32位的即可追问

本机是32位的

参考技术D

我新手,就按照新手的视角来解决一下,术语和和其他错误请谅解OvO(我安装的是win64_11gR2版本)

问题:Oracle数据库连接进入出现 ORA-12560 TNS:PROTOCOL ADAPTER ERROR 错误

原因:Oracle数据库监视器OracleOraDb11g_home1TNSListener未运行

解决:WIN+R/services.msc打开服务控制台,找到 OracleServiceORCL 和 OracleOraDb11g_home1TNSListener ,右键点击启动。

现在再试试进入数据库,应该可以了

Oracle 监听器日志文件过大导致监听异常报ORA-12514 TNS 错误

 出现问题现象:ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务或者如下图:

 应用异常,无法连接数据库。登陆数据库服务器,查看监听已经断掉。尝试重启监听,重启失败。检查看监听日志listener.log的大小是否已经超过4G。

解决方法:

               删除listener.log(删除前可以先做备份),然后重启监听。监听重启后会自动创建一个新的日志文件。

补充:

               在监听进程运行时,无法对listener.log做删除或者重命名操作。

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

.一、cmd命令打开输入lsnrctl  ,查看 show log_file log路径 状态 show log_status和所在目录 show log_directory

二、set log_status off  

 第一种方式:先把日志状态停掉,这样就不会写监听器日志(监听在开启状态下操作此操作由于监听日志过大,需等待15-25分钟)

 

第二种方式:手动关闭监听服务和启动服务

 

三、备份或者删除监听日志(先关闭OracleOraDb11g_home1TNSListener服务)

这个路径下D:\\app\\oracle\\diag\\tnslsnr\\wiz-db-03\\listener\\trace  listener.log(看个人安装路径决定)

做好备份listener.log监听日志,然后删除原listener.log日志。四.  set log_status on    # 重新打开日志,开始记录监听器日志。该文件会自动创建(监听在开启状态下操作)

 

五.status      #检查监听状态

 

 

 本文来自:https://blog.csdn.net/qiu_spring/article/details/88746958

以上是关于进oracle数据库报ORA-12560 TNS:PROTOCOL ADAPTER ERROR错误的主要内容,如果未能解决你的问题,请参考以下文章

win7 64位 sqlplus能用但是plsql总是报ora-12560:tns:协议适配器错误

oracle 客户端 ora12560tns协议适配器错误,为啥呢?

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

oracle10登陆时提示“ORA—12560:TNS:协议适配器错误”怎么解决?

Oracle登录ORA-12560TNS:协议适配器错误

使用完整连接字符串和EZCONNECT绕过tnsnames.ora时出现“ORA-12560:TNS:协议适配器错误”