如何在通过Oracle Client Service远程连接数据库的客户端PC运行Oracle APEX应用
Oracle APEX 19 客户端远程访问操作步骤(适配Oracle XE 11.2g + Oracle Client 21.1)
前置准备检查
- 确认远程数据库服务器端Oracle XE 11.2g服务已正常启动,默认监听端口1521已开放,防火墙未拦截客户端IP的访问请求
- 确认服务器端APEX 19已完成正确部署,关联的ORDS(Oracle REST Data Services)或者嵌入式PL/SQL网关已正常运行,APEX访问端口(默认8080如果用嵌入式网关,ORDS默认8080/8443)未被拦截
- 确认客户端PC已完成Oracle Client 21.1的基础安装,安装时已选择SQLPlus*组件(用于连接测试)
步骤1:配置Oracle Client 21.1远程连接指向
- 进入Oracle Client安装目录下的
network\admin文件夹,找到tnsnames.ora文件,不存在则手动新建 - 新增以下连接配置,替换对应占位符为实际参数:
XE_REMOTE = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 服务器端IP地址)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = XE) ) )
- 打开客户端命令行,执行测试连接命令验证数据库连通性:
sqlplus 数据库用户名/数据库密码@XE_REMOTE
若成功进入SQL*Plus交互界面则表示数据库连接配置生效,否则优先检查IP、端口、账号密码、防火墙策略是否正确
步骤2:验证APEX服务端可访问性
- 打开客户端浏览器,直接输入服务器端APEX访问地址测试:
http://服务器IP:APEX端口/apex
若能正常加载APEX登录界面,可直接跳过后续配置调整步骤,直接登录使用即可
步骤3:直接访问失败时的服务端配置调整
- 若服务端使用嵌入式PL/SQL网关部署APEX,可在客户端SQL*Plus连接到远程数据库后,执行以下命令确认APEX的HTTP访问配置:
SELECT dbms_xdb.gethttpport FROM dual; - 若返回端口为0,说明HTTP服务未开启,使用DBA权限账号执行以下命令开启并设置端口:
EXEC dbms_xdb.sethttpport(8080); - 执行以下命令确认XDB服务允许远程访问:
EXEC dbms_xdb.setlistenerlocalaccess(false);
步骤4:登录APEX应用
- 客户端浏览器访问
http://服务器IP:设置的端口/apex,输入对应工作区、账号、密码即可正常访问部署的APEX应用
常见问题排查
- Oracle Client连接报错
ORA-12154:检查tnsnames.ora配置格式是否正确,是否存在多余空格,环境变量TNS_ADMIN是否指向正确的network\admin目录 - APEX页面加载超时:检查服务器端防火墙是否开放APEX对应的HTTP端口,客户端与服务器端口是否连通,可通过
telnet 服务器IP 端口命令验证
内容的提问来源于stack exchange,提问作者Babagana Tijjani Modu
相关产品推荐
相关产品推荐

