oracle数据库连接问题:TNS

问题描述:
       安装数据库之后发现$ORACLE_HOME/network/admin/下面的文件除了samples目录和shrept.lst文件之外没有期望中的sqlnet.ora,tnsname.ora,listener.ora三个文件。外界能够正常的对数据库实例进行访问(多个实例),但是在数据库服务端不能进行正常访问,因为数据库不能自己建立tns,实例的管理可以通过修改ORACLE_SID正常进行。这是一个非常严重的问题,因为需要进行相应的测试工作需要在不同的实例之间进行交互。

尝试方法:
在$ORACLE_HOME/network/admin/目录下自己建立所有上面提到的三个文件,并配置好。在进行数据库重启,监听重启后执行tnsping orcl,结果还是报错:
TNS Ping Utility for Linux: Version 10.2.0.1.0 - Production on 18-JUL-2006 17:27:03
 
Copyright (c) 1997, 2005, Oracle.  All rights reserved.
 
Used parameter files:
/home/u01/app/oracle/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora
 
TNS-03505: Failed to resolve name

解决方法:
在root用户下使用查找命令查找tnsname.ora,命令如下:find / -name tnsname.ora。结果找到三个文件:
/home/u01/app/oracle/oracle/product/ 10.2.0 /db_1/network/admin/samples/tnsnames.ora
/home/u01/app/oracle/oracle/product/10.2.0/db_1/network/admin/tnsnames.ora
/usr/local/tt/udp/lib/tnsnames.ora
前面两个很正常应该有的,但是第三个引起了怀疑。对第三个文件进行重命名(使其失效),重新执行上面的尝试,能正常工作了。
tnsping orcl:
TNS Ping Utility for Linux: Version 10.2.0.1.0 - Production on 18-JUL-2006 17:27:33
 
Copyright (c) 1997, 2005, Oracle.  All rights reserved.
 
Used parameter files:
/home/u01/app/oracle/oracle/product/10.2.0/db_1/network/admin/sqlnet.ora
 
 
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = ORCL)))
OK (0 msec)

你可能感兴趣的:(oracle数据库连接问题:TNS)