Linux TNS-12541错误怎么解决?Linux TNS-12541错误代码含义

在 Linux 环境下,Oracle 数据库报错 TNS-12541: TNS:no listener 表示客户端无法连接到 Oracle 监听器(Listener),这通常意味着监听器未启动、配置错误或网络不通。

以下是系统化的排查和解决步骤:

PL/SQL Developer无法登录Oracle报错“ORA-12541:TNS:”无监听程序解决方式
加载中
PL/SQL Developer无法登录Oracle报错“ORA-12541:TNS:”无监听程序解决方式

检查监听器是否正在运行

确认监听器进程是否存在。

# 切换到 oracle 用户
su - oracle
# 检查监听器状态
lsnrctl status
  • 如果显示 “TNS-12541” 或 “TNS:no listener”:说明监听器未启动。
  • 如果显示 “Listening on…”:说明监听器正在运行,问题可能在网络或配置上。

启动监听器

如果监听器未启动,尝试手动启动它:

lsnrctl start
  • 如果启动成功:再次运行 lsnrctl status 确认状态。
  • 如果启动失败:查看日志文件获取详细错误信息:
    • 默认日志路径:$ORACLE_BASE/diag/tnslsnr/<hostname>/listener/alert/log.xml
    • 或查看 listener.log 文件(通常在 $ORACLE_HOME/network/log/ 下)

检查监听器配置文件 listener.ora

监听器配置错误是常见原因,检查 $ORACLE_HOME/network/admin/listener.ora 文件。

Linux TNS-12541错误怎么解决?Linux TNS-12541错误代码含义

示例正确配置:

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = <your_server_ip_or_hostname>)(PORT = 1521))
    )
  )
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = <your_db_name>)
      (ORACLE_HOME = /u01/app/oracle/product/19.0.0/dbhome_1)
      (SID_NAME = <your_sid>)
    )
  )

常见错误:

  • HOST 设置错误:HOST 设置为 localhost,远程客户端无法连接,应设置为服务器的主机名或 IP 地址。
  • 端口冲突:确保 1521 端口未被其他程序占用。
  • SID 不匹配:SID_NAME 必须与数据库实例名一致。

修改后,重启监听器:

lsnrctl stop
lsnrctl start

检查防火墙和网络设置

即使监听器在运行,防火墙也可能阻止连接。

检查防火墙状态:

# 检查 firewalld(CentOS/RHEL)
sudo firewall-cmd --state
# 检查 iptables
sudo iptables -L -n | grep 1521

开放端口(如果需要):

# 如果使用 firewalld
sudo firewall-cmd --permanent --add-port=1521/tcp
sudo firewall-cmd --reload
# 如果使用 iptables
sudo iptables -I INPUT -p tcp --dport 1521 -j ACCEPT
sudo service iptables save

Linux TNS-12541错误怎么解决?Linux TNS-12541错误代码含义

测试网络连通性:

从客户端机器测试:

telnet <server_ip> 1521
# 或
nc -zv <server_ip> 1521

检查 /etc/hosts 文件

确保服务器的主机名能正确解析为 IP 地址。

hostname
cat /etc/hosts
  • hostname 返回的主机名在 /etc/hosts 中没有对应的 IP 映射,监听器可能无法正确绑定地址。
  • 确保 /etc/hosts 中包含类似如下行:
    168.1.100   your_server_hostname

检查数据库实例是否注册到监听器

有时监听器在运行,但数据库实例未注册(静态注册或动态注册失败)。

检查动态注册:

lsnrctl status

查看输出中是否有 Instance "<sid>", status READY 或 BLOCKED,如果没有,可能需要静态注册(见第 3 步 SID_LIST_LISTENER)。

强制注册:

在数据库中执行:

ALTER SYSTEM REGISTER;

检查 sqlnet.ora 配置

检查 $ORACLE_HOME/network/admin/sqlnet.ora 文件,确保没有阻止监听的参数。


检查权限和文件所有权

Linux TNS-12541错误怎么解决?Linux TNS-12541错误代码含义

确保 listener.ora、tnsnames.ora 和 sqlnet.ora 文件的所有者是 oracle 用户,并且权限正确(通常为 644)。

chown oracle:oinstall $ORACLE_HOME/network/admin/.ora
chmod 644 $ORACLE_HOME/network/admin/.ora

查看日志文件

如果以上步骤都无法解决问题,查看监听器日志文件以获取详细错误信息:

  • 日志位置:$ORACLE_BASE/diag/tnslsnr/<hostname>/listener/alert/log.xml
  • 或使用 tail 命令:
    tail -f $ORACLE_BASE/diag/tnslsnr/<hostname>/listener/alert/log.xml

总结排查流程

  1. lsnrctl status → 确认监听器状态。
  2. lsnrctl start → 启动监听器。
  3. 检查 listener.ora → 确认 HOST、PORT、SID 配置正确。
  4. 检查防火墙 → 确保 1521 端口开放。
  5. 检查 /etc/hosts → 确保主机名解析正确。
  6. 查看日志 → 根据日志错误进一步排查。

如果问题仍然存在,请提供 lsnrctl status 的输出和 listener.ora 的内容(隐藏敏感信息),以便进一步分析。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/476474.html

赞 (0)
h5模板建站视频教程怎么用?零基础小白建站教程
上一篇 2026年7月9日 21:42
cdn安全技术有哪些,cdn安全防护原理
下一篇 2026年7月9日 21:44

相关推荐

  • aws最低配服务器一年多少钱

    AWS最低配服务器(t2.nano或t3.nano)按需付费一年的基础费用约45-50美元,但加上存储、流量和弹性IP后,实际支出普遍在800-1500元人民币区间,预留实例可降至500-800元,AWS最低配服务器配置与价格拆解实例规格与基础费用AWS最低配实例通常指t系列突发性能型,适合轻量负载,t2.na……

    2026年8月13日
    600
  • 注册阿里云后如何免费领代金券?新用户注册阿里云送多少优惠券

    注册阿里云账号后,新用户可通过完成实名认证、登录控制台领取新人礼包,并在活动页面或账单页使用代金券及优惠券,具体额度与使用规则取决于当前活动及账户类型,对于初次接触云计算的开发者或中小企业负责人来说,面对阿里云纷繁复杂的优惠体系,往往容易感到困惑,获取和使用这些优惠并没有想象中那么复杂,关键在于找准入口,理解规……

    2026年7月1日
    900
  • ai java开发是什么?基于Java开发如何入门?

    在当前的技术浪潮中,Java凭借其成熟的生态系统、严谨的类型系统以及卓越的跨平台能力,已成为企业级AI应用落地的首选语言,基于Java开发的AI解决方案正在从“实验性探索”转向“大规模工程化应用”,虽然Python在模型训练领域占据主导,但在模型部署、系统集成与高并发推理场景下,Java展现出了不可替代的工程优……

    2026年3月30日
    8400
  • Apache怎么配置虚拟服务器?详细步骤教程

    Apache配置虚拟服务器的核心在于修改httpd.conf或sites-enabled目录下的配置文件,通过定义ServerName和DocumentRoot来区分不同域名对应的网站目录,从而实现单IP多站点的托管,在2026年的Web开发环境中,Apache依然是许多企业级应用和传统架构的首选服务器软件,尽……

    2026年6月4日
    4400
  • 安视得n3连接服务器到底是多少,连接不上怎么办?

    安视得n3连接服务器是多少?默认地址为n3.ansd.com,端口TCP 443,支持HTTPS加密传输;若需自定义,推荐使用酷番云的企业级服务器集群,确保长期稳定,安视得n3服务器连接参数详解默认服务器地址与端口安视得n3系列设备出厂时预设的服务器地址为n3.ansd.com,通信端口采用TCP 443,该地……

    2026年8月4日
    1300
  • 安全态势感知系统是什么,安全态势感知哪家好

    在数字化转型的浪潮中,网络安全已不再是单纯的防御战,而是一场关乎全局的动态博弈,核心结论在于:构建高效的安全态势感知体系,是实现从“被动防御”向“主动防御”跨越的关键基石,它能够帮助组织在复杂的网络环境中实现安全风险的“看见、看清、看懂”,从而将安全隐患消灭在萌芽状态, 这不仅是技术的升级,更是安全管理理念的革……

    2026年3月22日
    11300
  • 简米云服务器公网IP到底访问多少次会被封,怎么解决

    阿里云服务器公网IP并没有一个固定的访问次数封禁阈值,阿里云不会因为单纯访问次数多就封IP,触发封禁的往往是攻击特征、并发异常、频控规则或违规内容,而非简单的次数统计,如果你正在运营网站、API接口或数据采集服务,担心IP被阿里云封禁,这篇文章会帮你弄清楚封禁的真正逻辑、常见触发场景、自查手段以及降低被封锁概率……

    2026年8月8日
    400
  • 服务器主机搭配应用场景怎么选?,什么配置性价比高?

    内存与IOPS是核心数据库服务器(MySQL、SQL Server、Oracle)、高并发Web应用或ERP系统对内存带宽和磁盘随机读写能力要求极高,CPU:高主频优先,4GHz以上更佳,核心数不必太多,8-16核足够,但需要支持大缓存(如Intel Xeon W系列或AMD EPYC 7F系列),内存:容量优……

    2026年8月5日
    1200
  • SiteGround主机真的好用吗?WordPress官方推荐主机怎么选

    SiteGround作为WordPress官方推荐主机,提供高达73%的折扣,月付低至$3.99,并配备30天退款保证、每日自动备份及免费CDN加速服务,是新手与进阶用户构建高性能网站的稳健选择,在网站建设领域,主机选择往往决定了网站的生死,很多站长在初期容易忽视服务器性能,直到流量激增或出现安全漏洞时才追悔莫……

    2026年7月11日
    4100
  • 1M宽带服务器能带多少人同时在线,怎么算

    1M带宽服务器在理想情况下,并发用户数通常不超过5人,实际业务中建议将并发控制在2-3人以获得流畅体验,带宽大小直接决定了服务器能同时传输的数据量,但用户能感受到的并发能力还受到页面大小、网络延迟、服务器处理能力等多重因素制约,本文将从底层计算逻辑出发,结合实际场景带你了解1M带宽的承载上限,并给出优化和服务商……

    2026年8月22日
    200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注