安装/升级Oracle遇到ORA-12514问题

问题原因

前几天升级Oracle数据库,从11.2.0.1升级至11.2.0.4,安装完成后,打开PL/SQL,显示ORA-12514,如图:

ora-12514问题

问题阐述

ORA-12514:监听程序当前无法识别链接描述符中请求的服务,简单的来说就是Oracle数据库的监听器配置有问题。

解决方案

  1. 打开cmd命令,输入tnsping orcl ,正常情况下是这样显示的:
    在这里插入图片描述
    下面会显示监听器配置文件的路径及配置信息。如果不能出现监听器信息,可以输人lsnrctl status 命令查看监听器状态:
    status
  2. 根据上个图片显示的监听程序参数文件地址:
    监听程序参数文件
    找到这个文件,打开。然后再打开net manager:
    在这里插入图片描述
    打开:
    在这里插入图片描述
    Net Manager里会显示出监听器的信息,对比着listener.ora文件中的信息,确保有一个监听器是相同的。
    在这里插入图片描述
    如果没有相同的,在listener.ora文件的LISTENER代码块里增加一个监听器,使之与Net Manager监听器里的一致。
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = LOCALHOST)(PORT = 1521))
    )
  )
  1. 在listener.ora文件目录下,还有一个tnsnames.ora文件,这个文件也要做修改:
    tnsnames
    细心的朋友可能会发现,这个ORCL的代码块里的信息,正是命令行输入tnsping orcl命令显示出来的信息,也是要和listener.ora与Net Manager 的监听器配置相同。
ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = LOCALHOST)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )
  • 改完以后,可以在命令行里重新启动一下监听器,输入:lsnrctl stop(关闭监听器),lsnrctl start(启动监听器),检查一下问题是否解决了。如果还没有,再试试下面的方法。

其他问题检查

1.检查一下电脑的环境变量,右键此电脑–属性–高级系统设置–环境变量。这里注意一下:

  • 如果你是升级Oracle : 找到 path,查看
    在这里插入图片描述
    这个需要改成升级后的路径。
  • 若是安装Oracle,也要确认此路径是否和你当前安装Oracle路径的相同。

2.新增一个系统变量 TNS_ADMIN,该系统变量用来确定是使用的哪个tnsnames.ora文件配置(在ADMIN文件夹下,还有一个SAMPLE文件夹,里面同样有tnsnames.ora与listener.ora文件)。

在这里插入图片描述
3.如果你搞不清楚使用的是哪个tnsnames.ora与listener.ora文件,那你可以把ADMIN文件夹和SAMPLE文件夹的tnsnames.ora与listener.ora文件都做修改。

个人总结

其实我也是第一次遇到这个问题,可能表述的不是很正确。不过在我解决了自己的ORA-12514问题后,也以同样的方法帮助了其他朋友解决了此问题,说明解决方法还是可行的。如果你有更好的解决方案,也希望多交流沟通。

发布了1 篇原创文章 · 获赞 2 · 访问量 75

猜你喜欢

转载自blog.csdn.net/slience_y/article/details/104696715