当我修改listener.ora时,当我输入一个新地址时,我遇到了问题,如图所示。
listener.ora网络配置文件:C:\ app \ name \ 12.1.0 \ dbhome_1 \ NETWORK \ ADMIN \ listener.ora
由Oracle配置工具生成。
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\app\name\12.1.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:C:\app\name\12.1.0\dbhome_1\bin\oraclr12.dll")
)
(SID_DESC =
(GLOBAL_DBNAME = OracleDB)
(ORACLE_HOME = C:\app\User\product\11.2.0\dbhome_1)
(SID_NAME = ORCL)
)
(SID_DESC =
(GLOBAL_DBNAME = Oracle8)
(SID_NAME = ORCL)
)
(SID_DESC =
(GLOBAL_DBNAME = Prova)
(ORACLE_HOME = C:\app\User\product\11.2.0\dbhome_1)
(SID_NAME = ORCL)
)
) LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
**(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = 1521))**
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
)
ADR_BASE_LISTENER = C:\ app \ name \ 12.1.0 \ dbhome_1 \ log
当我没有用星号放地址时,一切都在本地正常工作,但我需要从另一个客户端(其他PC)连接oracle。 在援助中我找到了我必须添加的地方:
**(ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.0.10)(PORT = 1521))**
但是当我把它放在listener.ora中时,没有任何作用。 错误如下:
oracleOraDB12Home1TNSListener 它不会自动启动。
输入cmd并输入lsnrctl star,我收到此错误: TNS-12560和TNS-00530
如果我生成lsnrctl状态,我会收到错误: TNS-12535,TNS - 12500
我该如何解决这个问题? 从客户端(其他PC)连接是否正确只在listerner.ora中进行此更改或需要进行更改?
最后是Oracle for Windows x64
答案 0 :(得分:1)
简单说明几点:数据库的主机运行监听器。侦听器配置来自位于您指定位置的tnsnames.ora和listener.ora。 'localhost'显然与数据库主机的地址相同。
在listener.ora中,您尝试添加的IP应该是数据库主机的IP地址。 (从帖子中不清楚,但只是要清楚,监听器不会在客户端上运行。)我个人用数据库主机IP地址替换'localhost'条目。
此时,侦听器应该正确启动,它将侦听指定的IP和端口上的连接。
由于网络配置,身份验证,客户端s / w等原因,客户端连接的其余问题变得有点复杂。其中一些配置与sqlnet.ora文件(服务器和客户端)有关
但基本上,在客户端上,您需要配置连接以连接到IP地址,端口和listener.ora中引用的global_names之一(这可以通过tnsnames.ora文件进行配置。其他客户端配置选项。)