客户端连接Oracle报错:ORA-12537:TNS连接已关闭
查看网络服务名是否能正常解析。
[root@localhost oracle]# tnsping orcl
TNS Ping Utility for Linux: Version 12.1.0.2.0 - Production on 08-MAR-2020 07:12:15
Copyright (c) 1997, 2014, Oracle. All rights reserved.
Used parameter files:
/u01/app/oracle/product/12.1.0/dbhome_1/network/admin/sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.197)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
TNS-12533: TNS:illegal ADDRESS parameters
解析错误TNS-12533: TNS:illegal ADDRESS parameters
,查看tnsnames.ora文件发现格式错误:
直接从listener.ora文档复制IP地址过来,修改如下:
[root@localhost oracle]# cat /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/12.1.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
orcl =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1523)) //端口是我自己配置的
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1522))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.197)(PORT = 1521))
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
(CONNECT_DATA =
(SID_NAME = orcl)
)
)
网络服务名可正常解析了:
[root@localhost oracle]# tnsping orcl
TNS Ping Utility for Linux: Version 12.1.0.2.0 - Production on 08-MAR-2020 07:22:03
Copyright (c) 1997, 2014, Oracle. All rights reserved.
Used parameter files:
/u01/app/oracle/product/12.1.0/dbhome_1/network/admin/sqlnet.ora
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1523)) (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1522)) (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.197)(PORT = 1521)) (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))))
OK (10 msec)