Navicate远程连接Centos-Oracle19c:ORA-12541: TNS: no listener 无监听错误 - tcping 1521端口关闭

文章目录

  • 1. 问题的产生
  • 2. 问题的思考
    • 2.1 关于oci.dll文件的问题
    • 2.2 关于HOST值的问题
  • 3. 问题的解决
    • 3.1 监听文件的修改
      • listener.ora
      • tnsnames.ora
    • 3.2 启动监听程序 -- 严格按照流程
      • `3.2.1 linux关机注销重启重开,再按照后面的流程启动监听`
      • 3.2.2 先启动监听程序 在启动实例
    • 3.3 navicate连接
  • 4. tcping 1521端口 - 成功

1. 问题的产生

这个问题无比奇怪,因为半个月前安装oracle的时候,当场就能使用navicate连接远程的数据库。但是昨天晚上突然就连不上了。一直提示说没有监听,但是我在Centos上可以启动监听,并且连接sqlpus,查看用户修改密码都没有问题。
Navicate远程连接Centos-Oracle19c:ORA-12541: TNS: no listener 无监听错误 - tcping 1521端口关闭_第1张图片

2. 问题的思考

我在虚拟机本机tcping 127.0.0.1 1521,端口是open的。但是,从本地主机tcping 192.168.111.133 1521,端口是关闭的。192.168.111.133 为虚拟机ip.

Navicate远程连接Centos-Oracle19c:ORA-12541: TNS: no listener 无监听错误 - tcping 1521端口关闭_第2张图片
所以我感觉还是centos上的监听出了问题。

2.1 关于oci.dll文件的问题

问题解决之后,我尝试更换navicate指向的oci.dll文件,由于oci.dll均为相对高级的版本,所以本次错误不是由oci.dll文件引起的。
在这里插入图片描述

2.2 关于HOST值的问题

因为navicate启动起来了,HOST的值我就没有修改回原来的hostname,复查原因…

3. 问题的解决

今天早上接着百度方法,主要在监听文件启动监听程序两个方面进行修正。然后navicate恢复正常。

3.1 监听文件的修改

将两个文件HOST的值由localhost更改为本机ip192.168.111.133

listener.ora

# listener.ora Network Configuration File: /opt/oracle/product/19c/dbhome_1/network/admin/listener.ora 
# Generated by Oracle configuration tools.

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST =192.168.111.133)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
  )

Navicate远程连接Centos-Oracle19c:ORA-12541: TNS: no listener 无监听错误 - tcping 1521端口关闭_第3张图片

tnsnames.ora

# tnsnames.ora Network Configuration File: /opt/oracle/product/19c/dbhome_1/network/admin/tnsnames.ora 
# Generated by Oracle configuration tools.

ORCLCDB =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.111.133)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCLCDB)
    )
  )

LISTENER_ORCLCDB =
  (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.111.133)(PORT = 1521))

3.2 启动监听程序 – 严格按照流程

3.2.1 linux关机注销重启重开,再按照后面的流程启动监听

3.2.2 先启动监听程序 在启动实例

# 切换用户
su - oracle
# oracle 用户下 
lsnrctl status 
# 查看oracle监听状态
lsnrctl start 
# 启动监听服务
sqlplus /nolog
# 启动sql窗口
conn / as sysdba
# 以SYS用户登录
startup 
# 启动数据库实例
exit
# 退出数据库sql窗口

Navicate远程连接Centos-Oracle19c:ORA-12541: TNS: no listener 无监听错误 - tcping 1521端口关闭_第4张图片

3.3 navicate连接

Navicate远程连接Centos-Oracle19c:ORA-12541: TNS: no listener 无监听错误 - tcping 1521端口关闭_第5张图片
Navicate远程连接Centos-Oracle19c:ORA-12541: TNS: no listener 无监听错误 - tcping 1521端口关闭_第6张图片

4. tcping 1521端口 - 成功

Navicate远程连接Centos-Oracle19c:ORA-12541: TNS: no listener 无监听错误 - tcping 1521端口关闭_第7张图片

你可能感兴趣的:(数据安全传输基础设置平台项目,centos,linux,运维)