首页主机资讯Ubuntu lsnrctl更新流程介绍

Ubuntu lsnrctl更新流程介绍

时间2025-11-21 22:33:04发布访客分类主机资讯浏览1187
导读:Ubuntu 上 lsnrctl 更新流程 一 前置说明与准备 lsnrctl 是 Oracle Net Listener 的命令行管理工具,随 Oracle Database 或 Oracle Instant Client 提供,并非...

Ubuntu 上 lsnrctl 更新流程

一 前置说明与准备

  • lsnrctlOracle Net Listener 的命令行管理工具,随 Oracle DatabaseOracle Instant Client 提供,并非 Ubuntu 系统自带命令。更新它本质上是更新 Oracle 客户端/数据库软件或替换相应二进制文件。操作前务必完成:
    1. 完整备份(数据库、监听配置、应用连接串、服务器与网络拓扑)。
    2. 选择维护时间窗并通知业务方。
    3. 准备回退方案(旧安装介质、参数与配置备份、快照/克隆)。
    4. 确认当前环境:Oracle 版本、安装形态(RPM/DEB 还是 ZIP)、监听名称与端口、是否使用 systemd 托管。
    5. 准备新版本安装包与校验信息(Oracle 官方下载、补丁说明、兼容性矩阵)。

二 通过 APT 更新 Instant Client 或数据库软件包

  • 适用于通过 DEB 包 安装的 Oracle Instant ClientOracle Database 组件(含 lsnrctl)。
    1. 更新索引与可升级列表:
      sudo apt update
      apt list --upgradable
    2. 执行升级(按实际包名):
      sudo apt upgrade oracle-instantclient-basic

      sudo apt upgrade oracle-database-preinstall-23c
    3. 如需修复/重装:
      sudo apt install --reinstall oracle-instantclient-basic
    4. 验证:
      which lsnrctl
      lsnrctl version
    5. 注意:Instant Client 的 DEB 包通常不包含监听功能;若需 lsnrctl 管理监听,请安装包含监听组件的包(如 Basic + SQL*Plus 或完整客户端/数据库软件),或改用 ZIP 安装形态。

三 通过 ZIP 包更新 Oracle 客户端或数据库

  • 适用于 ZIP 形态(Instant Client/数据库)或需要并行保留多版本的场景。
    1. 停止监听与相关服务:
      lsnrctl stop

      如使用 systemd 托管监听,可先 systemctl stop oracle-listener(按实际单元名)

    2. 备份旧目录与配置:
      cp -a $ORACLE_HOME $ORACLE_HOME.bak_$(date +%F)
      cp $ORACLE_HOME/network/admin/listener.ora $ORACLE_HOME/network/admin/listener.ora.bak
    3. 解压新版本到新目录(避免覆盖):
      unzip instantclient-basic-linux.x64-23.6.0.0.0dbru.zip -d /opt/oracle/
      unzip instantclient-sqlplus-linux.x64-23.6.0.0.0dbru.zip -d /opt/oracle/
    4. 调整环境变量(示例):
      export ORACLE_HOME=/opt/oracle/instantclient_23_6
      export LD_LIBRARY_PATH=$ORACLE_HOME:$LD_LIBRARY_PATH
      export PATH=$ORACLE_HOME:$PATH

      如使用 Instant Client 且需解析别名,可设置 TNS_ADMIN 指向 $ORACLE_HOME/network/admin

    5. 如为数据库软件升级,按官方安装程序执行(runInstaller),完成后按需更新 listener.orasqlnet.ora
    6. 启动监听并验证:
      lsnrctl start
      lsnrctl status
    7. 回退要点:恢复原 ORACLE_HOME、环境变量与 listener.ora,再 lsnrctl start。

四 更新后的验证与常见问题

  • 版本与连通性验证:
    • 版本:lsnrctl version
    • 状态:lsnrctl status(检查监听端口、服务映射、日志路径)
    • 连通:sqlplus user/pass@//host:port/service
  • 常见问题与处理:
    • 命令未找到:检查 PATH/LD_LIBRARY_PATH/ORACLE_HOME 是否指向新目录;确认安装包是否包含监听组件。
    • 库加载失败:确认 LD_LIBRARY_PATH 包含新 Instant Client 目录;必要时安装 libaio1 等依赖。
    • 监听端口被占用:检查 netstat/ss,释放端口或调整 listener.ora
    • 权限问题:确保 Oracle 目录与日志文件属主/权限正确(如 oracle:oinstall)。
    • 升级后应用连不通:核对 listener.ora/sqlnet.ora 中的 SERVICE_NAMESID、加密/认证参数与客户端一致。

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


若转载请注明出处: Ubuntu lsnrctl更新流程介绍
本文地址: https://pptw.com/jishu/753783.html
Ubuntu lsnrctl备份与恢复策略 Ubuntu lsnrctl网络配置技巧

游客 回复需填写必要信息