ORA-12514 : TNS:监听程序当前无法识别连接描述符中请求的服务(连接linux上的数据库)

解决方法:

1.修改listener.ora(我的oracle是安装在centos6.10 x64上的,安装步骤参考https://blog.csdn.net/u011391839/article/details/76566316,我大概记得是装在/usr/local下面的)

标红部分是需要加进去的部分,说明一下

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /usr/local/oracle/product/11.2.0/db_1) # 这个是oracle安装路径
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GLOBAL_DBNAME = orcl)
      (ORACLE_HOME = /usr/local/oracle/product/11.2.0/db_1) # 这个是oracle安装路径
      (SID_NAME = orcl) # 这个是oracle安装时你指定的sid(全局标识符)
    )
  )

GLOBAL_DBNAME = orcl # 这个是oracle的网络服务名,不一定要和sid_name一样,远程连接是要用到这个

举个例子,假如linux主机的ip地址为192.168.0.160,那在plsql里连接时,database就要写成192.168.0.160:1521/orcl;如果你换成aaa的话,database就写成192.168.0.160:1521/aaa

2.改好后,重启监听服务(切换到oracle用户下执行以下命令,当然你也可以在root使用绝对路径来执行命令)

lsnrctl stop&&lsnrctl start

参考:https://blog.csdn.net/yixiyecao/article/details/28403021

https://blog.csdn.net/hunterno4/article/details/8656807

猜你喜欢

转载自blog.csdn.net/u010999809/article/details/81840135