«

Oracle报错ora-12514怎么检查及解决

时间:2024-8-1 08:54     作者:韩俊     分类: Mysql


这篇文章主要介绍了Oracle报错ora-12514怎么检查及解决的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Oracle报错ora-12514怎么检查及解决文章都会有所收获,下面我们一起来看看吧。

    问题

    本地测试的时候,连接测试服务器上的Oracle数据库,报错如下:

    ORA-12514, TNS:listener does not currently know of service requested in connect descriptor

    参考文章

    stackoverflow参考文章

    本地问题解决

    1.查看Oracle当前监听器状态

    在命令行窗口输入以下命令,查看Oracle当前监听器的状态

    > lsnrctl status

    其中,监听程序参数文件

    listener.ora
    配置了要监听的Oracle服务的信息,监听程序日志文件
    log.xml
    中记录了连接报错的 ora-12514 信息。

    服务摘要部分,记录了当前监听器监听到的服务的简要信息(截图示例中的 orcltaco 就是被监听的服务的名称,orcltaco服务信息配置在上面的

    listener.ora
    文件中)。

    2.配置要监听的服务信息

    根据上一步查询到的 监听程序参数文件

    listener.ora
    的地址,用编辑器打开对应目录下的
    listener.ora
    文件,添加要监听的服务信息(服务信息从对应的
    tnsnames.ora
    文件中查找,一般和
    listener.ora
    文件在同一目录下)。

    服务信息以及服务在

    listener.ora
    文件中的相应配置如下:

    服务信息的服务名为:orcl

    修改后的

    listener.ora
    文件如下:

    3.重启监听器

    上一步修改保存之后,在命令行中依次执行以下两个命令,重启监听器

    > lsnrctl stop
    > lsnrctl start

    或者可以执行

    lsnrctl reload
    来代替 lsnrctl stop,lsnrctl start

    执行结果如下:

    查看启动后的服务摘要发现,配置的

    orcl
    服务已经被监听器监听到了,这时候在使用程序或者客户端连接工具 账户密码连接
    orcl
    服务访问数据库,连接成功!

    lsnrctl命令

    lsnrctl 作为oracle监听命令,在启动、关闭或者重启oracle监听器之前确保使用lsnrctl status命令检查oracle监听器的状态,常用命令如下:

    1、

    lsnrctl status
    检查当前监听器的状态

    2、

    lsnrctl start [listener-name]
    启动所有的监听器,可以指定名字来启动特定的监听器

    3、

    lsnrctl stop [listener-name]
    关闭所有的监听器,可以指定名字来关闭特定的监听器

    4、

    lsnrctl reload
    重启监听器,此命令可以代替
    lsnrctl stop,lsnrctl start

    5、

    lsnrctl hep
    可以显示所有可用的监听器命令

    标签: mysql oracle

    热门推荐