温馨提示×

lsnrctl如何处理Ubuntu服务异常

小樊
40
2025-08-28 09:31:44
栏目: 智能运维

使用lsnrctl处理Ubuntu上Oracle服务异常的步骤如下:

  1. 检查监听器状态

    lsnrctl status  
    

    确认监听器是否运行,若未启动则执行lsnrctl start

  2. 查看错误日志
    定位listener.log(通常在$ORACLE_HOME/log/u01/app/oracle/diag/tnslsnr目录),分析异常信息。

  3. 验证配置文件
    检查listener.ora(路径:$ORACLE_HOME/network/admin),确保端口、协议等配置正确。

  4. 处理权限与路径问题

    • 确保ORACLE_HOMEPATH环境变量已正确设置。
    • 若命令路径错误,使用完整路径执行lsnrctl,如/opt/oracle/product/19c/bin/lsnrctl
  5. 排查网络与防火墙

    • 使用pingtelnet测试监听器端口(默认1521)的连通性。
    • 若防火墙拦截,添加规则允许端口流量:
      sudo ufw allow 1521/tcp  
      ```。  
      
      
  6. 重启服务
    尝试重启监听器和数据库服务:

    sudo systemctl restart oracle-listener  # 监听器服务  
    sudo systemctl restart oracle          # 数据库服务  
    

    (注:服务名称可能因安装方式不同,需通过systemctl list-units确认)。

  7. 联系官方支持
    若以上步骤无法解决,提供错误日志和配置信息,参考Oracle官方文档或提交工单。

关键命令总结

  • 状态检查:lsnrctl status
  • 启动/停止:lsnrctl start/stop
  • 日志查看:tail -f $ORACLE_HOME/log/listener.log
  • 配置验证:cat $ORACLE_HOME/network/admin/listener.ora

0