今天在一个客户机上用netmanager配置完服务保存后,测试PASS。
但是用SQLPLUS访问这个服务的时候就提示TNS错误。
然后就将服务器上的TNSNAME.ORA里面复制了一段配置过来改改用,就能在SQLPLUS中访问了
很奇怪
但是用SQLPLUS访问这个服务的时候就提示TNS错误。
然后就将服务器上的TNSNAME.ORA里面复制了一段配置过来改改用,就能在SQLPLUS中访问了
很奇怪
解决方案 »
- SQL优化,急,在线等!!!
- 求教oracle与sql server之间一段时间相互订阅的方法【100分】
- 海量数据的备份和恢复策略求助?
- 字符串相加问题,
- 请教怎样交换分区,即怎样使用exchange命令?
- powerdesinger的问题,高手路过顶一下啊
- 安装 oracle 9i 时把symcjit.dll改名了,可以吗?现在出现错误。
- 在表设计中,有些表需要一个自动产生的主键,请问:在oracle中采用序列好,还是使用guid
- 封装ORACLE OCI和DB2 CLI 的数据库接口,可能你有用
- 转化一条时间相减的sql语句 sqlserver转oracle
- [求助] 求一个效率高的SQL
- pl/sql与sql*plus worksheet显示结果不一样?
用sqlplus程序通过test网络服务名进行测试,如sqlplus system/manager@test。如果不能连接到数据库,则在tnsname.ora文件中的test网络服务名(net service)后面加上Oracle数据库的DB_Domain参数值,通过用sqlplus> show parameter db_domain命令察看。此处db_domain参数值为testserver.com,将其加到网络服务名后面,修改后的tnsname.ora中关于该网络服务名的内容为:
test.testserver.com =
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT=1521))
)
(CONNECT_DATA=(SERVICE_NAME=orcl.testserver.com)
)
)
用sqlplus程序通过test.testserver.com网络服务名测试,如sqlplus system/[email protected]。
关于为什们在网络服务名后面加db_domain参数,需要了解sql*plus连接数据库的原理,解决12154常见故障中有详细的说明。
将客户端的网络服务名部分
test.testserver.com =
(DESCRIPTION=
(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=testserver)(PORT=1521))
)
(CONNECT_DATA=(SERVICE_NAME=orcl.testserver.com)
)
)
拷贝到服务器的tnsnames.ora文件中。然后再服务器端用sqlplus system/[email protected]连接到数据库。
如果能连接成功,说明你的客户端与服务器端的网络有问题。
将服务器上的TNSNAME.ORA里面复制了一段配置过来
======================================
配置和服务器上的一样吗?
也特注意了一下CONNECT_DATA中的是SERVICE_NAME还是SERVICE_SID(数据库创建的时候全局名同SID是一样的)