并行数据库
select * from v$parameter where name like '%name%'得到如下参数:
instance_name mydb1
service_name  mydb
db_name      mydb
客户端连接使用service_name=mydb1能连接,可是使用service_name=mydb不能连接,为什么service_name=实例名能连接,而用服务名不能连接,不是说9i后是用服务名吗,看了些资料还是没明白,望大哥大姐指导知道咯
不能贴图只好这样了,不知道说清楚没有?

解决方案 »

  1.   

    主要是监听处理的问题,监听在做数据库注册的时候使用的是数据库的INSTANCE_NAME,所以实际使用的是INSTANCE_NAME.
      

  2.   

    其实在ORACLE数据库中,service_name与db_name的名字在默认情况下是相同的.但一个数据库可以有多个实例(instance),所以在数据库有多个实例时,只有instance_name能区别用户的连接.
      

  3.   

    数据库mydb有2个实例,分别是192.168.1.1:1521 mydb1 ;192.168.1.2:1521 mydb2tnsnames.ora中是不是只有使用实例名mydb1(mydb2),不能用数据库名mydb了?