如题,想从远程访问asm,可是配置监听和服务命名等一直没搞对,那位能给个成功的、完整的示例啊?
我现在的情况是一直提示这个错误:
ORA-12505: TNS:listener does not currently know of SID given in connect descriptor
我的listener.ora:
SID_LIST_ASM=
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = +ASM)
      (ORACLE_HOME = /opt/oracle/product/10.2.0/db_1)
    )
ASM =
 (DESCRIPTION_LIST=
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.15)(PORT = 1522))
  )
 )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost.localdomain)(PORT = 1521))
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
    )
  )TNSNAMES.ora:asm =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.15)(PORT = 1522))
    )
    (CONNECT_DATA =
      (SID = +ASM)
      (UR=A)
    )
  )
asm 实例在本地已经可以运行了,但是只要sqlplus sys/123@asm as sysdba就出上面给出的错误,各位老大,帮帮忙吧!~~~~~

解决方案 »

  1.   

    监听数据库的实例名不对,为何是"+ASM"
    查看一下实例名是什么?
    select * from v$instance
      

  2.   

    参考Doc ID:  340277.1
      

  3.   

    远程连接ASM实例总结
    服务器配置
    找到ASM实例的LISTENER.ORA文件,在目录$ORACLE_HOME\network\admin下,进行如下修改:增加监听器(下面红色部分),增加监听描述(绿色部分,注意这是静态参数),然后重启监听。SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = /oracle/product/10.2.0/asm)
          (PROGRAM = extproc)
        )
        (SID_DESC =
          (GLOBAL_DBNAME = +ASM)
          (ORACLE_HOME = /oracle/product/10.2.0/asm)
          (SID_NAME = +ASM)
        )

      )LSNRASM =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = dbhp)(PORT = 1521))
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
        )
      )
    客户端配置
    注意红色部分:ASM =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = dbhp)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME = +ASM)
          (UR=A)
        )
      )
    客户端连接
    SQLPLUS sys/passwd@asm as sysdba
      

  4.   

    谢谢大家这么热心
    楼上的朋友,你这个我看见过,不好用哦
    还有,那个ur=a是什么意思?看看是不是对症啊
      

  5.   

    (UR=A) 
    是必须要的,否则实现不了remote to asm
      

  6.   


    正解啊,这位是liuyi8903 oracle管理高人啊!