解决“ORA-12518:监听程序无法分发客户机连接”问题

最近在学Oracle数据库,发现碰到了一些问题在尝试网上大佬们提供的解决方案之后还是不能解决碰到的问题,于是在胡乱尝试了之后终于把一些小问题解决了。本篇主要是大概讲一下怎么解决“ORA-12518:监听程序无法分发客户机连接”问题:
操作系统:win7 64位
Oracle版本:Oracle 11g 64位
问题描述:当时在运行了“shutdown immediate"指令之后,想通过“startup”指令重新启动数据库,结果就出现了“ORA-12518:监听程序无法分发客户机连接“问题。
起先直接在OS的服务里面重启了Oracle的相关服务,数据库是可以重新连接使用的,但是再一次运行”shutdown immediate"指令之后,还是出现同样的问题,于是就去网上找找大佬们的解决方案。
一些大佬提供的解决方案主要是修改一些参数,什么session啥的,但是菜菜郭啥都不懂,跟着大佬的操作走了一遍还是没有解决问题,这时候突然想起来自己在刚开始创建数据库之后配置监听的时候,数据库选项那里的SID一直显示无效。如图:
解决“ORA-12518:监听程序无法分发客户机连接”问题
之前SID那里一直显示“请输入有效的SID”,但是我去看了一**册表还有创建数据库之后给的SID都是对的(一般SID和数据库名称一样),那怎么解决呢?
解决“ORA-12518:监听程序无法分发客户机连接”问题
先找到自己oracle安装的位置,然后跟着上面图片的路径打开文件,找到listener.org:
解决“ORA-12518:监听程序无法分发客户机连接”问题
打开上述文件,然后将SID名字改成和自己数据库一样的名字,如下图所示:
(这里要注意的是,由于我安装在C盘的原因,无法直接在文件里面更改,可以把这个文件复制到桌面,然后修改一下数据之后再复制回去即可)
解决“ORA-12518:监听程序无法分发客户机连接”问题
之后再运行“shutdown immediate”和“startup”命令就不会有问题啦,亲测有效!
最后附上一张我运行成功的截图吧~
解决“ORA-12518:监听程序无法分发客户机连接”问题