ITPub博客

首页 > 数据库 > Oracle > TNS-03505 名称无法解析

TNS-03505 名称无法解析

原创 Oracle 作者:wuweilong 时间:2015-06-16 17:29:41 0 删除 编辑
TNS-03505 名称无法解析

问题现象:

  1. [oracle@db01 admin]$ tnsping pri

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

  4. Used parameter files:

  5. TNS-03505: Failed to resolve name

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

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

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


  6. Enter user-name: ^C


问题分析:

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


问题处理:

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

  1. [oracle@db01 admin]$ cat tnsname.ora
  2. pri =
  3.   (DESCRIPTION =
  4.     (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.50)(PORT = 1521))
  5.     (CONNECT_DATA =
  6.       (SERVER = DEDICATED)
  7.       (SERVICE_NAME = woo)
  8.     )
  9.   )

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

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

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

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

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

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


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

  8.               
  9. SQL> select name from v$database;

  10. NAME
  11. ---------
  12. WOO

  13. SQL> select instance_name,status from v$instance;

  14. INSTANCE_NAME STATUS
  15. ---------------- ------------
  16. woo OPEN

  17. SQL>


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

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

  1. [oracle@db01 admin]$ ls
  2. listener.ora samples shrept.lst sqlnet.ora tnsname.ora tnsnames.ora
  3. [oracle@db01 admin]$ chmod u+x tnsnames.ora
  4. [oracle@db01 admin]$ ll
  5. total 24

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

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

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

  1. [oracle@db01 admin]$ cat tnsname.ora > tnsnames.ora

  2. [oracle@db01 admin]$ rm -rf tnsname.ora

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

  4. SQL*Plus: Release 11.2.0.4.0 Production on Tue Jun 16 23:02:15 2015

  5. Copyright (c) 1982, 2013, Oracle. All rights reserved.


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

  10. SQL> select name from v$database;

  11. NAME
  12. ---------
  13. WOO

  14. SQL> select instance_name,status from v$instance;


  15. INSTANCE_NAME STATUS
  16. ---------------- ------------
  17. woo OPEN

  18. SQL>
  19. SQL> host ls -rtl
  20. total 20
  21. -rw-r--r-- 1 oracle oinstall 381 Dec 17 2012 shrept.lst
  22. drwxr-xr-x 2 oracle oinstall 4096 Jun 11 21:56 samples
  23. -rw-r--r-- 1 oracle oinstall 221 Jun 16 21:59 sqlnet.ora
  24. -rwxr-xr-x 1 oracle oinstall 711 Jun 16 22:08 listener.ora
  25. -rwxr--r-- 1 oracle oinstall 350 Jun 16 23:02 tnsnames.ora

  26. SQL>


 


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/20674423/viewspace-1701606/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
暂无介绍

注册时间:2010-01-08

  • 博文量
    251
  • 访问量
    1983016