Linux Centos6/7连接Oracle11g数据库,提示:ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务

  • 1.登录oracle用户权限并查看监听状况
  • 2.修改配置文件(*重点*)
    • (1) 修改listener.ora
    • (2) 修改tnsnames.ora
  • 3. 重启监听并更新注册
  • 4.再次用plsql访问成功
  • **附:**

故障描述

提示该异常说明了两个前提:

第一是Oracle数据库是开启状态

第二是监听程序处于开启状态

解决步骤

1.登录oracle用户权限并查看监听状况

[root@localhost ~]# su oracle
# 查看监听状态
[oracle@localhost ~]$ lsnrctl status
# 文章最后第一个链接介绍了动态监听和静态监听不通处理方法,我主要是静态监听故障

READY说明为动态监听,UNKNOWN则为静态监听(该判断不够准确,具体要到/network/admin/目录下的listener.ora里查看,如果不存在该配置文件,或者未配置SID_LIST_[监听名](ps:SID_LIST_LISTENER)则为动态监听)

2.修改配置文件(重点

必看备注:下面所更改的文件是恢复成功后直接从服务器拷贝的文件,和一些其它作者配置可能有所不同,如有问题还请多尝试几种,文章最后放上大佬们遇到该问题的配置文件。

(1) 修改listener.ora
# Oracle11g 64位软件的安装位置为data/oracle/product/11.2.0/db_1,数据库名为默认的orcl,CentOS7虚拟机的IP设置为:68.219.182.33
[oracle@localhost ~]$ vim /data/oracle/product/11.2.0/db_1/network/admin/listener.ora
# /network/admin/目录下,查看自己Oracle的安装目录

原文件:

# listener.ora Network Configuration File: /opt/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))))ADR_BASE_LISTENER = /opt/app/oracle

改为如下: 切记格式非常重要,一定要仔细检查

# listener.ora Network Configuration File: /opt/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.LISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))(ADDRESS = (PROTOCOL = TCP)(HOST = 68.219.182.33)(PORT = 1521))))SID_LIST_LISTENER =
(SID_LIST =  (SID_DESC =  (GLOBAL_DBNAME = orcl)(SID_NAME = orcl))
)ADR_BASE_LISTENER = /opt/app/oracle

[监听名]和SID_LIST_[监听名]配置是成对出现
配置listener.ora中GLOBAL_DBNAME的值等于tnsnames.ora中的SERVICE_NAME

(2) 修改tnsnames.ora
[oracle@localhost ~]$ vim /data/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# /network/admin/目录下,查看自己Oracle的安装目录

原文件:

# tnsnames.ora Network Configuration File: /data/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = orcl)))

改为如下: 切记格式非常重要,一定要仔细检查

# tnsnames.ora Network Configuration File: /opt/app/oracle/product/11.2.0/db_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.orcl =(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 68.219.182.33)(PORT = 1521))(CONNECT_DATA =(SERVICE_NAME = orcl11g.us.oracle.com))  )

3. 重启监听并更新注册

[oracle@localhost ~]$ lsnrctl stop             # 先关闭监听服务
[oracle@localhost ~]$ lsnrctl start            # 开启监听服务

注意看启动端口时候生效

[oracle@localhost ~]$ sqlplus / as sysdba     #登入
SQL> shutdown immediate             #立即关闭数据库服务
SQL> startup                                    #开启数据库服务
SQL> alter system register;        #注册
SQL> quit         #登出
[oracle@localhost ~]$ lsnrctl status        #查看监听状态

4.再次用plsql访问成功

附:

# sqlnet.ora内容# sqlnet.ora Network Configuration File: /opt/app/oracle/product/11.2.0/db_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)ADR_BASE = /opt/app/oracle

总结:本文主要参考大佬文章,其中少部分为自己个人看法和配置,个人记性不好,所以总结加记要;再次感谢CSDN各位大佬的贡献,我只是个小小搬运工。

参考大佬文献

https://blog.csdn.net/weixin_37769855/article/details/99435520

https://www.cnblogs.com/nichoc/p/6417505.html

https://blog.csdn.net/u013310119/article/details/80995238

https://bbs.csdn.net/topics/390463788?sharesource=xiongben0102

http://blog.itpub.net/23718752/viewspace-1061787/

【Linux Centos6/7连接Oracle11g数据库,提示:ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务】相关推荐

  1. ORACLE11g ORA 12514 TNS 监听程序当前无法识别连接描述符中请求的服务

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 1.TN ...

  2. oracle11 不能连接,oracle11G ora 12514 tns监听程序当前无法识别连接描述符中请求的服务...

    进入 cmd sqlplus / as sysdbaselect status from v$instance ;exit lsnrctl status 给出上面的结果更多追问追答追问追答sql ...

  3. ORACLE11g ORA-12514 TNS 监听程序当前无法识别连接描述符中请求的服务

    1.TNS连接错误 同事跟我说连接oracle数据库报错ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务,如下所示: 2.查看本地TNSPING 查看本地的tns配置: WX ...

  4. ORACLE11g ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务

    1.TNS连接错误 同事跟我说连接oracle数据库报错ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务,如下所示: 2.查看本地TNSPING 查看本地的tns配置: WX ...

  5. oracle中srv添加监听服务,Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务...

    Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务 解决过程: 1. 找到listener.ora监听文件,具体位置:D:\app\Administrator ...

  6. ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务-Oracle连接错误

    连接Oracle时突然报"ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务"错误 检查OracleServiceORCL服务是否启动! win10:此电脑→管理 ...

  7. windows 2008 64位oracle11g部署问题(3)之ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务...

    oracle11g安装完毕了,监听也起来了,发现通过客户端 本地网络服务名配置(如下图)链接oracle11g服务器,确报ORA-12514的错误,该如何解决呢? 1. 找到listener.ora监 ...

  8. ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务

    在安装完Oracle10g后,使用PL/SQL工具连接,提示如下的问题: ORA-12514: TNS: 监听程序当前无法识别连接描述符中请求的服务 解决办法是手动修改监听配置文件: # listen ...

  9. ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法

    51CTO在线视频课程,欢迎大家访问试听 <测试系列课程之缺陷管理概述> http://edu.51cto.com/course/course_id-447.html <软件测试基础 ...

最新文章

  1. 一个CV算法工程师在技术方面的反思!
  2. Spring Cloud【Finchley】-18 Zuul过滤器
  3. CET6级高频词(按频度)(700个)
  4. real time AI based system questionaires
  5. 现代制造工程课堂笔记03:第二部分(含易考点与必考点)
  6. spark-stream 访问 Redis
  7. w3c html5 客户端缓存数据格式,Html5应用程序缓存(Cache manifest)
  8. 周报(2017.3.19-3.16)
  9. Assets和Raw区别
  10. 缓存/内存型数据库 Redis
  11. Android11安装谷歌,Android 11正式版
  12. 【转载】软件质量报告模板-产品质量度量
  13. PHP公历农历转换(阴历阳历转换)阴历和阳历转换
  14. java 连接池配置_java数据库连接池配置的几种方式
  15. 参加考试时不要使用计算机,2016年计算机等级考试上机操作应试技巧
  16. 外贸群发邮箱如何选择
  17. 计算机配置64位,win10 64位系统最低配置要求_win10系统 64位最低电脑配置要求多少...
  18. Mixly第三方库开发的两种方法——U8g2库二次开发
  19. flam3 ubuntu 依赖文件
  20. Java项目:JSP在线水果销售商城

热门文章

  1. 数据库案例集锦 - 开发者的《如来神掌》
  2. leetcode971. 翻转二叉树以匹配先序遍历
  3. 编程题目+数据库题目总结(3)
  4. Java例:计算某年某月有多少天
  5. ubuntu安装python3.6_Ubuntu 16.04上安装和使用Python3.6
  6. 怎样补充nmn,nmn胶囊正确服用方法,现在知道还不晚
  7. 新媒体运营绩效考核标准
  8. 微信小程序支付以及退款功能(超详细)
  9. 《原则》读后感(一)
  10. python从入门到入魔第八天——turtle库使用(含玫瑰花绘制实例)