问题描述:

在使用 PL/SQL 连接 Oracle 数据库时,您可能会遇到 "TNS: 无法解析连接名" 的错误提示。

解决步骤:

  1. 检查 Oracle 服务是否已经启动

在 Windows 系统中,打开“服务”应用程序,查找“OracleService”服务是否已经启动。如果服务未启动,则需要手动启动该服务。

  1. 检查 TNS 配置文件

在 Oracle 安装目录下,找到“network\admin”目录,打开“tnsnames.ora”文件,检查是否存在数据库连接的配置信息。如果不存在,则需要添加。

例如:

ORCL = 
  (DESCRIPTION = 
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)) 
    (CONNECT_DATA = 
      (SERVER = DEDICATED) 
      (SERVICE_NAME = orcl) 
    ) 
  )

其中,ORCL 是连接名,HOST 是主机名或 IP 地址,PORT 是监听端口,SERVICE_NAME 是服务名。

  1. 检查监听程序配置文件

在 Oracle 安装目录下,找到“network\admin”目录,打开“listener.ora”文件,检查是否存在监听配置信息。如果不存在,则需要添加。

例如:

SID_LIST_LISTENER = 
  (SID_LIST = 
    (SID_DESC = 
      (SID_NAME = orcl) 
      (ORACLE_HOME = C:\app\Oracle\product\11.2.0\dbhome_1) 
    ) 
  )

其中,SID_NAME 是数据库实例名,ORACLE_HOME 是 Oracle 安装目录。

  1. 重新启动 Oracle 服务和监听程序

在 Windows 系统中,打开“服务”应用程序,找到“OracleService”服务,右键选择“重新启动”;打开命令行窗口,输入“lsnrctl stop”和“lsnrctl start”命令,分别停止和启动监听程序。

  1. 尝试登陆 Oracle

重新打开 PL/SQL,输入用户名和密码,选择正确的连接名,尝试登陆 Oracle。如果仍然出现 TNS: 无法解析连接名的错误提示,则需要检查以上步骤是否有误,并根据错误提示进行进一步排查。

Oracle 连接失败:TNS: 无法解析连接名 - 解决步骤详解

原文地址: https://www.cveoy.top/t/topic/nyug 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录