修改 listener.ora 时的 oracle 数据库 12c 问题

oracle database 12c problems when modify listener.ora

我在修改 listener.ora 时遇到问题,当我输入新地址时,如图所示。

listener.ora网络配置文件:C:\app\name.1.0\dbhome_1\NETWORK\ADMIN\listener.ora

由 Oracle 配置工具生成。

SID_LIST_LISTENER=

(SID_LIST =

(SID_DESC =
  (SID_NAME = CLRExtProc)
  (ORACLE_HOME = C:\app\name.1.0\dbhome_1)
  (PROGRAM = extproc)
  (ENVS = "EXTPROC_DLLS=ONLY:C:\app\name.1.0\dbhome_1\bin\oraclr12.dll")
)
(SID_DESC =
  (GLOBAL_DBNAME = OracleDB)
  (ORACLE_HOME = C:\app\User\product.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.2.0\dbhome_1)
  (SID_NAME = ORCL)
)

) 听众 =

(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.1.0\dbhome_1\log

当我不把地址放在星号上时,在本地一切正常,但我需要从另一个客户端(其他 PC)连接 oracle。 为了帮助我找到了我必须添加的地方:

**(地址=(协议=TCP)(主机=192.168.0.10)(端口=1521))**

但是当我把它放在 listener.ora 中时,没有任何效果。 错误如下:

oracleOraDB12Home1TNSListener 它不会自动启动。

输入 cmd 并输入 lsnrctl star,我收到此错误: TNS- 12560 和 TNS- 00530

如果我创建一个 lsnrctl 状态,我会得到错误: TNS- 12535 , TNS - 12500

我该如何解决这个问题? 从客户端(其他 PC)连接是正确的,只在 listerner.ora 中进行此更改或需要更多更改?

最后是用于 Windows x64

的 Oracle

只是澄清几点:数据库的主机运行是监听器。侦听器配置来自位于您指定位置的 tnsnames.ora 和 listener.ora。 'localhost' 显然是与数据库主机相同的地址。

在 listener.ora 中,您尝试添加的 IP 应该是数据库主机的 IP 地址。 (从 post 看不清楚,但要清楚,侦听器不会 运行 在客户端。)我个人将 'localhost' 条目替换为数据库主机 IP 地址。

此时侦听器应该正确启动,它将侦听指定 IP 和端口上的连接。

由于涉及网络配置、身份验证、客户端 s/w 等,客户端连接的其余问题变得有点复杂。其中一些配置与 sqlnet.ora 文件(均在服务器和客户端)。

但基本上,在客户端上,您需要配置连接以连接到 IP 地址、端口和 listener.ora 中引用的 global_names 之一(这可以通过配置一个 tnsnames.ora 文件。还有其他客户端配置选项。)