1.问题描述
在linux服务器centos7上新安装的oracle 19c,结果发现客户端怎么都连不上。检查了下,发现原来是监听的端口采用默认配置为了LOCALHOST:
[oracle@mv161p120 bin]$ netstat -an |grep 1521
tcp 0 0 127.0.0.1:1521 0.0.0.0:* LISTEN
tcp 0 0 127.0.0.1:56449 127.0.0.1:1521 ESTABLISHED
tcp 0 0 127.0.0.1:1521 127.0.0.1:56449 ESTABLISHED
unix 2 [ ACC ] STREAM LISTENING 108564 /var/tmp/.oracle/sEXTPROC1521
[oracle@mv161p120 bin]$
可以看到监听端口的ip为127.0.0.1。是本地回环路由。其他服务器无法访问这个地址。
现在对这个问题进行修改:
2.修改listener.ora 文件
首先要修改listener.ora 文件。
该文件位于:
/opt/oracle/product/19c/dbhome_1/network/admin/listener.ora
vim这个文件:
# 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.161.120)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
将上述文件的LOCALHOST修改为IP地址。
3.修改tnsnames.ora
同理,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.161.120)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCLCDB)
)
)
LISTENER_ORCLCDB =
(ADDRESS &