写在前面:
如本文描述有错误,希望读到这篇文章的您能够提出批评指正。 联系方式:172310978@qq.com
1. 问题出现的原因
- 起因是需要将数据库中的条目信息和磁盘上存储的文件信息进行比对,通过Java编程,连接数据库。由于需要精准比对,本人目前能力有限,只好采取单次查询,然后返回结果进行匹配,中间观察到控制台出现“ORA-12516 TNS监听程序找不到符合协议堆栈要求的可用处理程序”的报错,网上解决方案是调整session和processes。
按照网上的说法,需要通过SQL plus先登录控制台
sqlplus /nolog
conn / as sysdba
- 然后华丽丽的报错了
2. 网上分析
造成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.