如何远程访问 Oracle 数据库

如何远程访问 Oracle 数据库

我可以使用 localhost:1521 连接到我的 oracle 数据库。但是,连接到 IP 地址不起作用。

我尝试这样做是因为我想使用另一台机器连接到我的数据库,但即使是同一台机器也无法使用它自己的 IP 地址连接到自身。

注意:Oracle Database 11g 和 Windows 7。

答案1

您需要启用实例侦听器来侦听 IP 地址,而不仅仅是localhost。转到 Oracle Enterprise Manager Web 界面上的“网络服务管理”页面。编辑侦听器 ( LISTENER_localhost) 并添加侦听器,然后选择使用实例的 IP 地址。保留默认端口 1521。系统将询问您是否要重新启动服务。请重新启动。然后您应该能够从主机(或任何其他机器)进行连接。

答案2

您必须确保侦听器使用的是 0.0.0.0:1521。您可以在 Windows 上使用以下命令进行检查:netstat -an -p tcp |find ":1521"

答案3

我在仅安装数据库软件后遇到了这个问题。我发现我必须在相关服务器上打开一个端口,而且监听器一开始并没有运行。为了让它运行,我只需进入 lsnrctl(命令行)并使用命令 start。

由于监听器是在实例之后启动的,因此实例错过了自动注册的机会。为了解决这个问题,我只需重新启动实例即可。

这可以通过使用 sqlplus 命令行来完成。您需要以具有 SYSDBA 权限的用户身份登录(例如系统)语法:

sqlplus name/pass as SYSDBA

然后运行“关机”并等待其完成。然后运行“启动”并等待其完成。

祈祷你现在应该有一个在监听器中注册的实例,并且该监听器正在监听开放端口。

要检查实例是否已在侦听器中注册,您可以返回 lsnrctl 并运行命令“status”。如果它不起作用,您将看到消息“侦听器不支持任何服务”

相关内容