Oracle SQLDeveloper连接报错(ORA-12505)的两种解决方案分享
用oracle新建连接时遇到ora-12505,此问题解决后又出现ora-12519错误,郁闷的半天,经过一番折腾问题解决,下面小编把我的两种解决方案分享给大家,仅供参考。
解决方案一:
今天工作时在新建连接的时候遇到ora-12505,解决后又遇到ora-12519错误。
ora-12505:
之前用pl/sql developer和sqlplus 登录数据库都没有问题,就是应用程序通过jdbc连接oracle时无法成功连接,出现ora-12505错误listener does not currently know of sid given in connect descriptor......。
经过查找,发现oracle的service_name 和sid_name不一致,而pl/sql developer和sqlplus 采用service_name进行连接,而应用程序是按照sid_name进行连接,所以出现pl/sql developer和sqlplus 能够连接而应用程序却无法连接的问题。
解决问题很简单,原来是自己将sid_name搞错了;首先查找当前实例的sid_name:select instance_name from v$instance,然后把得到的sid_name填入应用程序的连接串中。
ora-12519:
ora-12505问题解决后,应用程序可以连接到oracle,但是却报ora-12519。经过查找发现这是由于参数的processes设定过低,因为专用服务器是一个连接建立一个服务器进程,该服务器的processes设定为150,session数设为170,而当前登录的session已经几乎达到processes的最大值,所以就报ora-12519错误。只需把processes设大,满足业务需要即可解决。
alter system set processes=300 scope=spfile;
然后重启数据库即可。
解决方案二:
之前我的oracle数据库出现问题,费大波周折终于弄好了,今天又创建了一个dba管理员的连接方式出现问题,本人现在把解决方案分享给大家,希望对你们有用。
连接时报错码:listener refused the connection with following error:ora-12505,tns:listener......
确定这是连接数据库的sid错误,
解决方法:
1.知道你的sid名:可以再注册表中查找,也可以通过借助oracle的sqlplus工具并以管理员方式连接敲命令查看:select instance_name from v$instance;必须是管理员身份,否则“视图不存在”。
2.在oracle sql developer连接工具上修改你的数据库sid名,我的如下(把"xe"修改成"orcl"):
3.勾选“保存命令”,“角色”选择数据库管理员。
4.点击“保存”和“测试”,并连接,剩下的就是连接成功了。
如若再不行!那就得修改监听文件了。