如何迅速恢复CentOS Lsnrctl监听配置以避免服务中断?
- 内容介绍
- 文章标签
- 相关推荐
Oracle 的监听器一旦失效。数据库连接会立即被中断,业务程序会出现大面积的“掉线”现象。是在 CentOS 上,由于 SELinux 或防火墙默认开启。往往会不经意间把监听器的端口挡住。下面给大家梳理一套快速恢复 CentOS 下 lsnrctl 配置、避免服务中断的完整流程。
了解 lsnrctl 的关键性与常见痛点
lsnrctl 是 Oracle 用来管理监听器的命令行工具。它可以启动、停止、重载还有查询监听状态。但如果你不小心修改了 listener.ora 或 tnsnames.ora,却没有及时重启监听器,或者忘记了更改后的新 SID 未正确添加到 SID_LIST。就会出现以下痛点:
- 服务突然不可用: 客户端报 “ORA‑12541:listener does not currently exist” 或 “ORA‑12514:listener does not currently know of service”。
- 修改后无效: 使用 lsnrctl status 时仍显示旧配置。
- SELinux / 防火墙拦截: 默认策略阻止了 1521/TCP。导致即使 listener 正在跑,也收不到任何请求。
- 缺少备份: 没有准备好 listener.ora 的历史备份,一旦误删就难以还原。
Oracle 的监听器一旦失效。数据库连接会立即被中断,业务程序会出现大面积的“掉线”现象。是在 CentOS 上,由于 SELinux 或防火墙默认开启。往往会不经意间把监听器的端口挡住。下面给大家梳理一套快速恢复 CentOS 下 lsnrctl 配置、避免服务中断的完整流程。
了解 lsnrctl 的关键性与常见痛点
lsnrctl 是 Oracle 用来管理监听器的命令行工具。它可以启动、停止、重载还有查询监听状态。但如果你不小心修改了 listener.ora 或 tnsnames.ora,却没有及时重启监听器,或者忘记了更改后的新 SID 未正确添加到 SID_LIST。就会出现以下痛点:
- 服务突然不可用: 客户端报 “ORA‑12541:listener does not currently exist” 或 “ORA‑12514:listener does not currently know of service”。
- 修改后无效: 使用 lsnrctl status 时仍显示旧配置。
- SELinux / 防火墙拦截: 默认策略阻止了 1521/TCP。导致即使 listener 正在跑,也收不到任何请求。
- 缺少备份: 没有准备好 listener.ora 的历史备份,一旦误删就难以还原。

