如何在云主机上安装Oracle 19c_公网IP绑定与安全组端口开放
Oracle 19c 连不上需依次检查监听是否绑定公网IP修改listener.ora中HOST为0.0.0.0或公网IP并lsnrctl reload、系统防火墙是否放行1521端口、tnsnames.ora中HOST地址匹配客户端网络位置公网/内网、以及listener.ora与数据库service_names是否一致。Oracle 19c 安装后连不上先确认监听是否真在公网 IP 上跑oracle 默认只监听 127.0.0.1 或主机名解析出的私有 ip哪怕你绑了公网 iplsnrctl status 显示的地址大概率还是 localhost 或内网地址。这不是配置没生效是 oracle 根本没打算听公网。检查 $ORACLE_HOME/network/admin/listener.ora重点看 LISTENER 的 ADDRESS 段必须显式写成 (HOST 0.0.0.0) 或具体公网 IP如 (HOST 114.114.114.114)不能留空或写 localhost改完必须执行 lsnrctl reload不是 stop/start —— 后者会中断已有连接而 reload 只重读配置更安全用 netstat -tlnp | grep :1521 确认监听套接字是否绑定到 *:1521 或你的公网 IP:1521而不是 127.0.0.1:1521云厂商安全组开了 1521 端口但 telnet 还是超时安全组只是第一道门云主机系统自带的防火墙比如 CentOS 的 firewalld、Ubuntu 的 ufw默认拦所有入向端口Oracle 监听端口被它无声丢弃telnet 就只能等 timeout。CentOS 7/8运行 sudo firewall-cmd --permanent --add-port1521/tcp再 sudo firewall-cmd --reloadUbuntu用 sudo ufw allow 1521然后 sudo ufw reload别信“我关了防火墙”——用 systemctl is-active firewalld 或 ufw status 实锤有些镜像默认启用但没提示tnsnames.ora 和 sqlnet.ora 里写公网 IP 还是内网 IP取决于谁连谁。客户端在云外比如你本地电脑就必须用公网 IP如果应用部署在同一 VPC 内另一台云主机上强烈建议用内网 IP —— 延迟低、不走公网带宽、绕过安全组限制。tnsnames.ora 中的 (HOST ...)填客户端能路由到的地址。公网访问填公网 IP同 VPC 访问填内网 IP如 10.0.1.5sqlnet.ora 加 SQLNET.ALLOWED_LOGON_VERSION_SERVER8 是常见需求但别乱加 SQLNET.INBOUND_CONNECT_TIMEOUT设太小会导致正常连接被误杀改完 tnsnames.ora 后用 tnsping ORCL 测试解析和基础连通性比直接 sqlplus 更快定位是 DNS 还是网络问题ORA-12545、ORA-12170 连接失败时优先查什么这两个错误看着像网络问题但 70% 是 Oracle 自身配置没对齐listener.ora 和 tnsnames.ora 的 SERVICE_NAME 或 SID 不一致或者数据库实例没注册进监听。 文心快码 文心快码Comate是百度推出的一款AI辅助编程工具
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2518127.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!