首先我们要知道为什么会出现这个错误ORA-12514: TNS:监听器当前不知道连接描述符中请求的服务(心急的可以直接滑倒最后)
我是在虚拟机(Windows系统)上安装的Orecle数据库,在本机中使用PLSQL进行连接的,第一次连接正常,但是当我把虚拟机关掉后就出现这个错误了。检查oracle安装路径中的listener.ora文件ip地址是否是虚拟机中的ip地址,文件地址在你安装oracle数据库文件下,C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\listener.ora 检查完没有问题,如下:
标红的地方需要写虚拟机的ip地址,查看ip地址DOS命令窗口使用:ipconfig 然后再查看tnsnames.ora文件中的ip地址,文件路径也是在C:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\tnsnames.ora 如下:
如果你这两个文件中的ip地址跟你虚拟机上的ip地址不同,需要更改成你虚拟机上的ip地址,更改完后需要在计算机管理,服务中找到下图这两个名称,先停止,在启动
如果这两个文件中的ip地址与你虚拟机ip地址一致, 那么你需要打开DOS命令窗口启动oracle数据库,主要原因是你与oracle数据库建立了连接但是并没有启动它,所以需要你连接后输入 startup 启动,如下图:
启动成功后重新登录PLSQL就可以了,该方法仅供参考,如出现ORA-12541: TNS:no listener 没有监听程序, 需要检查ip地址是否发生变化,以及计算机管理,服务中那两个oracle服务有没有开启