首页主机资讯Linux Oracle网络配置解析

Linux Oracle网络配置解析

时间2025-11-25 18:16:04发布访客分类主机资讯浏览1254
导读:Linux Oracle网络配置解析 一 核心组件与配置文件 关键文件与目录 $ORACLE_HOME/network/admin 为网络配置目录,常见文件包括:listener.ora(监听器)、tnsnames.ora(客户端命名解...

Linux Oracle网络配置解析

一 核心组件与配置文件

  • 关键文件与目录
    • $ORACLE_HOME/network/admin 为网络配置目录,常见文件包括:listener.ora(监听器)、tnsnames.ora(客户端命名解析)、sqlnet.ora(命名与协议行为)。
  • 命名方法与解析顺序
    • 通过 sqlnet.oraNAMES.DIRECTORY_PATH 指定解析顺序,常用值为 TNSNAMES、EZCONNECT、LDAP 等;例如:NAMES.DIRECTORY_PATH=(TNSNAMES,EZCONNECT)。
  • 典型连接方式
    • 本地命名:在 tnsnames.ora 中定义别名、主机、端口、服务名/SID,客户端用别名连接。
    • Easy Connect:无需本地配置,格式如 username/password@host:port/service_name(或 /instance_name),需在 sqlnet.ora 启用 EZCONNECT。

二 服务器端监听配置步骤

  • 准备与检查
    • 确认环境变量:echo $ORACLE_HOME、echo $PATH;确保 Oracle 实例已创建并可启动到 OPEN
  • 配置 listener.ora
    • 路径:$ORACLE_HOME/network/admin/listener.ora。示例(最简 TCP 监听):
      LISTENER =
        (DESCRIPTION_LIST =
          (DESCRIPTION =
            (ADDRESS = (PROTOCOL = TCP)(HOST = your_host)(PORT = 1521))
          )
        )
      SID_LIST_LISTENER =
        (SID_LIST =
          (SID_DESC =
            (SID_NAME = your_sid)
            (ORACLE_HOME = your_oracle_home)
          )
        )
      
  • 启停与验证
    • 启动:lsnrctl start;状态:lsnrctl status(应看到监听端口 1521 与注册的服务/SID)。
  • 动态注册与静态注册
    • 动态注册:实例启动后由 PMON 向监听注册服务,若未立即出现,等待 数分钟属正常延迟。
    • 静态注册:在 listener.oraSID_LIST_LISTENER 中显式声明 SID_DESC(必要时可设置 GLOBAL_DBNAME)。

三 客户端连接与 tnsnames 配置

  • 配置 tnsnames.ora
    • 路径:$ORACLE_HOME/network/admin/tnsnames.ora。示例:
      ORCL =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = dbhost)(PORT = 1521))
          (CONNECT_DATA =
            (SERVER = DEDICATED)
            (SERVICE_NAME = ORCL)
          )
        )
      
  • 连接测试
    • 使用别名:sqlplus username/password@ORCL;或 TNS 探测:tnsping ORCL
  • 使用 Easy Connect
    • 示例:sqlplus sys/oracle@dbhost:1521/orcl;需确保 sqlnet.ora 包含 EZCONNECT

四 主机名解析与网络连通性

  • 主机名与 hosts
    • 设置主机名:例如 hostnamectl set-hostname orcl;在 /etc/hosts 添加条目:10.211.55.188 orcl,保证节点间可用主机名互通。
  • 接口与连通性
    • 配置 IP/掩码/网关(如 nmcli 或 ifcfg 文件),并测试:ping 网关IPping 其他节点IP、必要时 ping 外网地址
  • 防火墙与 SELinux
    • 放行监听端口(默认 1521/tcp):如使用 firewalld,执行 firewall-cmd --add-port=1521/tcp --permanent & & firewall-cmd --reload;不建议直接长期关闭防火墙。
    • SELinux 建议保持 enforcing,按需设置策略;如必须禁用,编辑 /etc/selinux/configSELINUX=enforcing 改为 SELINUX=permissive/disabled 并重启。

五 命名解析与连接排错要点

  • 解析顺序与 Easy Connect
    • 若使用 EZCONNECT,需在 sqlnet.ora 中配置 NAMES.DIRECTORY_PATH=(EZCONNECT);否则仅用 TNSNAMES 时无法使用“主机:端口/服务名”直连。
  • service_name、SID 与 GLOBAL_DBNAME
    • SERVICE_NAME 通常对应数据库参数 service_names(动态注册);SID 对应实例 instance_name(静态注册);在 listener.oraSID_DESC 中可用 GLOBAL_DBNAME 指定对外公布的服务名。
  • 常见排错命令
    • 监听状态:lsnrctl status(检查监听端口、服务注册情况);TNS 探测:tnsping ORCL;直连测试:sqlplus user/pass@host:1521/service
  • 动态注册延迟
    • 实例启动后 PMON 注册服务可能有数分钟延迟,未见服务时稍候再查 lsnrctl status

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Linux Oracle网络配置解析
本文地址: https://pptw.com/jishu/755790.html
Linux Oracle集群搭建实践 Ubuntu系统Python安装最佳实践

游客 回复需填写必要信息