PL/SQL点了登录无反应,测试结果是ORA-12541: TNS: 无监听程序

转载请注明作者(独孤尚良dugushangliang)出处:https://blog.csdn.net/dugushangliang/article/details/81390164

当经验不足的时候,遇到提示的一些问题,尝尝束手无策,我这两天就是备受折磨,能力不足的束手无策。理论上是可以解决的,然而实际上并不知道问题所在,这是一个很尴尬的事情。虽然现在搜不到我写下的这些博客,新的博客还是要写的,因为指不定哪天就可以给大家带来很大的帮助呢?

为何这么说,我安装oracle、PL/SQL Developer并配置调试的过程,就是这样的。面对搜索出的纷繁的可能的解决方案,我得耐着性子一点点去看、去想、去试验。对于总是遇到看过的不想看的内再次充斥我的眼前,我也是百般无奈无可奈何。我也发现,由于各人的基本情况不同,有些设置不同,所以在 oracle这块的设置,也会出现完全相同的设置却没有相同的结果。这是为什么?那是因为还有忽略的其他原因存在。

如果账户密码是对的,并且oracle可以访问,出现PL/SQL Developer登录后无响应卡死的现象也常见的。所以首先先确认下账户密码是否正确。如果是远程的别的机器,那就现在那个机器上登录下看看。远程oracle和直接本机登录有些地方是有可能不同的,比如我本机可以使用所有的权限,而远程的oracle有些账户、有些权限不能用。如果不确定的话,可以参照另一个也是远程oracle的机器对比下看看。这个叫做控制变量法。做一个事情,就是一套流程,但凡其中任何一个环节出现问题,都会影响整体。如果不是经验很丰富的一看就知道是哪里的问题,不妨和我一样,一个一个的环节去排除。

怎么知道oracle是否可以访问了?cmd打开命令行,即win键+R键,输入cmd,运行cmd命令行。假设你要远程的oracle所在的机器的ip是12.34.56.78,可以输入“tnsping 12.34.56.78”并查看效果。如果是本机的oracle,一般安装时候都是本机的计算机名,如我的是idea-PC,我的输入是下图所示:

这个tnsping通过了,就可以考虑下一个环节,考虑别的地方的问题了。(这个通过不一定是没有问题,只是一般可以先考虑别的地方的问题)

win桌面左下角打开程序中oracle的Net Manager,这里配置监听程序(本机安装的oracle是需要配置这个的)。如果不知道怎么配置,可以自行百度“oracle 配置监听程序”,能很容易找到相关的内容。如果哪天找不到了,问搜索引擎发生了什么吧。

我这电脑重启了好多次,反反复复,各种说法都试过了,还是各种各样的问题,层出不穷。偶然就莫名其妙登录了,是的,就莫名其妙。不过莫名其妙登录后休眠了一会,再登也登不上了,重启电脑几次,原来可以登录的另一个也不能登录了。这里感谢ZhangYaohui(https://blog.csdn.net/u013991521/article/details/72628122)的启发。我查看了服务,是这里的问题。这些服务启动后就可以了。理论上它们是要随同开机自动启动的,天知道发生了什么,该发生的事情没有发生。

下面这个服务,指的是它是Oracle的服务,orcl是我的实例,即我安装的Oracle的数据库的名字。如果你取得名字是SKJ,那你对应要启动的服务应该是OracleServiceSJK。另一个就是TNSListener服务了。这个服务不开,就会提示你“ORA-12541: TNS: 无监听程序”。所以遇到这个问题,要确定有没有监听程序,也要确定相应的服务是否开启了。

那么PL/SQL developer为什么登录后不久,任务管理器就显示无响应?直到最后卡死?有人说这是因为PL/SQL本身的原因。要它登录,那就一直试着登录,不给任何反馈。即,我让A把B喊过来,A在B家门口进不去,就一直傻等着,这软件就有些A的呆傻,没人你等一会也跑回来给我说下情况啊,结果你傻等着不回来了。我又没说“做不到就不要回来见我了”。言归正传,这个问题,一般就是其他环节有问题,所以遇到这个情况,先看看别的环节是否正常,比如是否可以连接数据库。如果可以,再考虑账户的权限、监听的问题。如果不可以连接,就分析是不是数据库安装失败,还是哪里的问题。

独孤尚良dugushangliang——著

猜你喜欢

转载自blog.csdn.net/dugushangliang/article/details/81390164