如何仅在localhost上运行Oracle XE?

Joe*_*oel 3 oracle oracle-xe oracle10g

有没有办法在Windows上配置XE安装只使用localhost接口上的端口而不是外部接口?我想运行它进行开发,而没有其他任何人能够连接到我的实例.

我尝试修改listener.ora和tnsnames.ora文件,将'HOST ='条目更改为localhost.我的hosts文件中包含以下行:

127.0.0.1 localhost
Run Code Online (Sandbox Code Playgroud)

当我完成此操作并重新启动服务时,apex停止工作(它不会侦听端口8080)并且我无法使用JDBC连接到数据库.我在JDBC中遇到以下错误:

Exception in thread "main" java.sql.SQLException: Listener refused the connection
with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect
descriptor
The Connection descriptor used by the client was:
localhost:1521:XE
Run Code Online (Sandbox Code Playgroud)

我应该注意,如果我将'HOST =条目更改回我的机器主机名并重新启动服务,那么apex和JDBC都可以正常工作.

Gar*_*ers 6

这有两个部分(因为有两种'技术'服务于不同的端口).

首先对数据库端口1521您可以使用监听器SQLNET.ORA设置(tcp.invited_nodes)作为软防火墙,所以听者会忽略其他节点.

其次,对于8080 PL/SQL网关,您需要使用DBMS_XDB.SETLISTENERLOCALACCESS描述这里