TNS-03505 名称无法解析

TNS-03505 名称无法解析

问题现象:

[oracle@db01 admin]$ tnsping pri

TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 15-JUN-2015 21:57:52
Copyright (c) 1997, 2013, Oracle.  All rights reserved.

Used parameter files:
TNS-03505: Failed to resolve name

[oracle@db01 admin]$ sqlplus system/oracle@pri

SQL*Plus: Release 11.2.0.4.0 Production on Mon Jun 15 21:58:48 2015
Copyright (c) 1982, 2013, Oracle.  All rights reserved.

ERROR:
ORA-12154: TNS:could not resolve the connect identifier specified

Enter user-name: ^C

问题分析:

    出现该问题的原因通常有两个:1、名称不存在  2、tns配置文件不存在。

问题处理:

1、首先检查tnsnames.ora的所有配置信息,一切正常没有任何问题。

[oracle@db01 admin]$ cat tnsname.ora
pri =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.50)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = woo)
    )
  )

2、检查tnsnames.ora的文件及文件所属用户及用户组  

[oracle@db01 admin]$ ll tnsnames.ora
-rwxr--r-- 1 oracle oinstall 350 Jun 16 22:04 tnsname.ora

#从这里来看也是没有问题,文件是属于oinstall用户组,及其所有权限也是Oracle

3、那么这个时候我们选择跳过tnsnames.ora通过手工登陆进行验证数据库是否正常

[oracle@db01 admin]$ sqlplus system/oracle@192.168.1.50/woo

SQL*Plus: Release 11.2.0.4.0 Production on Tue Jun 16 22:34:40 2015
Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - Production
With the Partitioning, Oracle Label Security, OLAP, Data Mining,
Oracle Database Vault and Real Application Testing options

SQL> select name from v$database;

NAME
---------
WOO

SQL> select instance_name,status from v$instance;

INSTANCE_NAME    STATUS
---------------- ------------
woo              OPEN

SQL> 

--从这里我们可以看到,数据库肯定是没有问题的,那么下一步我们通过拿一个好的监听文件替换这个监听文件来处理该问题。

4、通过上传一个之前可用的监听配置文件进行对比

[oracle@db01 admin]$ ls
listener.ora  samples  shrept.lst  sqlnet.ora  tnsname.ora  tnsnames.ora

[oracle@db01 admin]$ chmod u+x tnsnames.ora 

[oracle@db01 admin]$ ll
total 24

-rwxr-xr-x 1 oracle oinstall  711 Jun 16 22:08 listener.ora
drwxr-xr-x 2 oracle oinstall 4096 Jun 11 21:56 samples
-rw-r--r-- 1 oracle oinstall  381 Dec 17  2012 shrept.lst
-rw-r--r-- 1 oracle oinstall  221 Jun 16 21:59 sqlnet.ora
-rwxr--r-- 1 oracle oinstall  350 Jun 16 22:31 tnsname.ora
-rwxr--r-- 1 oracle oinstall  350 Jun 16 22:04 tnsnames.ora        #这个是后面上传的

#通过对比,我发现之前手工些的那个文件名称不对,即使里面内容正确也无济于事。

5、通过修改替换监听文件,该问题得到解决:

[oracle@db01 admin]$ cat tnsname.ora > tnsnames.ora
[oracle@db01 admin]$ rm -rf tnsname.ora
[oracle@db01 admin]$ sqlplus system/oracle@pri

SQL*Plus: Release 11.2.0.4.0 Production on Tue Jun 16 23:02:15 2015
Copyright (c) 1982, 2013, Oracle.  All rights reserved.

Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - Production
With the Partitioning, Oracle Label Security, OLAP, Data Mining,
Oracle Database Vault and Real Application Testing options

SQL> select name from v$database;

NAME
---------
WOO

SQL> select instance_name,status from v$instance;

INSTANCE_NAME    STATUS
---------------- ------------
woo              OPEN

SQL> 

SQL> host ls -rtl
total 20

-rw-r--r-- 1 oracle oinstall  381 Dec 17  2012 shrept.lst
drwxr-xr-x 2 oracle oinstall 4096 Jun 11 21:56 samples
-rw-r--r-- 1 oracle oinstall  221 Jun 16 21:59 sqlnet.ora
-rwxr-xr-x 1 oracle oinstall  711 Jun 16 22:08 listener.ora
-rwxr--r-- 1 oracle oinstall  350 Jun 16 23:02 tnsnames.ora

SQL> 
时间: 2024-08-03 22:56:46

TNS-03505 名称无法解析的相关文章

oracle的网络结构解析

最近看到好多人说到tns或者数据库不能登录等问题,就索性总结了下面的东东. 首先来说oracle的网络结构,往复杂处说能加上加密.LDAP等等..这里不做讨论,重点放在基本的网络结构也就是我们最常用的这种情况 三个配置文件 listener.ora.sqlnet.ora.tnsnames.ora ,都是放在$ORACLE_HOME etworkadmin目录下. 重点:三个文件的作用和使用 #----------------------- sqlnet.ora-----作用类似于linux或者其

android应用资源预编译,编译和打包全解析

我们知道,在一个APK文件中,除了有代码文件之外,还有很多资源文件.这些资源文件是通过Android资源打包工具aapt(Android Asset Package Tool)打包到APK文件里面的.在打包之前,大部分文本格式的XML资源文件还会被编译成二进制格式的XML资源文件.在本文中,我们就详细分析XML资源文件的编译和打包过程,为后面深入了解Android系统的资源管理框架打下坚实的基础.         在前面Android资源管理框架(Asset Manager)简要介绍和学习计划一

报文解析 parse2 16-关于parse2报文转换的问题

问题描述 关于parse2报文转换的问题 我在用parse2 org.parse2.aparse.jar包生成的代码进行报文转换时,遇到了解析的问题,解析过程正常不报错,但是解析出来的结果,不符合自己的要求,烦请各位大神指点:具体情况如下: 这个是直接报文转换成XML的时候的格式,但是实际上的需要的是这样的格式:就是在报文转换成XML格式的时候,那些数字都换行了,成一个个的保存了,正常情况下应该为1行保存,应该是一个属性的值,而不是一个属性数组.这种问题的出现主要是版本问题造成的,报文的格式为F

全面解析JDBC

综述:Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法.JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型.作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法.JDBC使用已有的SQL标准并支持与其它数据库连接标准,如ODBC之间的桥接.JDBC实现了所有这些面向标准的目标并且具有简单.严格类型定义且高性能实现的接口. 如何选择合适的JDBC产品? 有关JDBC最新的信息,有兴趣的读者

JSP学习——全面解析JDBC(2)

js 如何建立JDBC连接? Connection 对象代表与数据库的连接.连接过程包括所执行的 SQL 语句和在该连接上所返回的结果.一个应用程序可与单个数据库有一个或多个连接,或者可与许多数据库有连接. 1. 打开连接 与数据库建立连接的标准方法是调用DriverManager.getConnection方法.该方法接受含有某个URL的字符串.DriverManager类(即所谓的JDBC管理层)将尝试找到可与那个URL所代表的数据库进行连接的驱动程序.DriverManager类存有已注册

详解XML各种解析方法

即便对高级 XML 问题具有丰富经验的开发人员也不一定就完全了解 XML 最基本的一些问题.为了为您打下坚实的基础,本文讨论了最基本的 XML 服务:解析.本文介绍了各种解析方法,着重说明了各自的优缺点. 了解基础 从 XML 的出现至今大约有 9 年的时间了.对于可扩展标记语言来说这是一段不短的历程.现在很难找到完全不用 XML 的应用程序了. 但是和客户在一起的时候,仍然不可避免地发现基础性的东西尚未被透彻地全部理解.对复杂的 XML 主题理解透彻的开发人员,最近却发现对基础性的东西(比如解

springMVC4(13)视图解析器分类详解

在<springMVC4(7)模型视图方法源码综合分析>一文中,我们介绍了ModelAndView的用法,它会在控制层方法调用完毕后作为返回值返回,里面封装好了我们的业务逻辑数据和视图对象或视图名 .下一步,视图对象往往会对模型进一步渲染,再由视图解析器进一步解析并向前端发出响应.在下面,我们详细介绍视图和视图解析器的各种分类. 在View接口中,定义了一个核心方法是: void render(Map<String, ?> model, HttpServletRequest req

Android使用Dom解析xml

一.理论准备                 二.上代码  <?xml version="1.0" encoding="utf-8" ?> <persons> <person id="23"> <name>Jack</name> <age>21</age> </person> <person id="20"> <n

PHP V5.3 中的新特性,第 3 部分: 名称空间

很多语言都提供了名称空间特性,包括 C++ 和 Java 编程语言.引入名称空间是为了帮助组织大型的代码库,因为在大型代码库中,应用程序经常会出现函数名或类名重叠问题,这会引起其他问题.使用名称空间可以帮助识别代码提供的函数或实用程序,甚至可以帮助指定其来源.一个例子就是 C# 中的 System 名称空间,它包含有 .NET 框架提供的所有函数和类. 在其他未提供正式名称空间的语言中(比如 PHP V5.2 以及更早版本),人们常常通过在类或函数名中使用特定的命名约定来发挥名称空间的作用.比如