新手请教:
在命令行窗口中输入sqlplus sys/Pass1234 as sysdba,回车就报了上面那个错误,但是从开始菜单Oracle目录下,通过sqlplus工具输入用户名和密码就能连接上,不知道为什么出现这样的问题,查很久了都没解决,下面把client和oracl_home目录下面的配置贴出来
C:\Oracle\product\11.2.0\client_1\Network\Admin目录下的tnsnames.oraORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ORCL)
    )
  )C:\Oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN目录下的tnsnames.oraORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = ORCL)
    )
  )listener.ora:SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\Oracle\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:C:\Oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\Oracle\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:C:\Oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\Oracle\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:C:\Oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
    (SID_DESC =
      (SID_NAME = CLRExtProc)
      (ORACLE_HOME = C:\Oracle\product\11.2.0\dbhome_1)
      (PROGRAM = extproc)
      (ENVS = "EXTPROC_DLLS=ONLY:C:\Oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
    )
  )LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )ADR_BASE_LISTENER = C:\Oraclesqlnet.ora:
SQLNET.AUTHENTICATION_SERVICES= (NTS)NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
Lisnrctl status命令执行也成功,该开的服务也都开了,就是不知道错在哪,麻烦知道的说下,不甚感激!

解决方案 »

  1.   

    sqlplus sys/Pass1234@服务名 as sysdba 
      

  2.   

    你的服务就是装在本机上的吗?
    试着把tnsnam.ora中orcl中host改成本机ip地址
    然后命令
    sqlplus /nolog 连接数据库
    在通过conn sys/密码@orcl as sysdba连接上你安装数据库实例
      

  3.   

    改成ip地址,127.0.0.1还是真实的ip地址,服务是装在我本机的
      

  4.   

    ORA-12514:TNS:监听程序当前无法识别连接描述符中的请求的服务
      

  5.   

    在本机使用 sqlplus sys/Pass1234 as sysdba 命令,实际上是通过 TNS 协议(windows)连接数据库,要求设置 ORACLE_SID 环境变量。
    也就是在命令行下执行:
    C:\> SET ORACLE_SID=ORCL实际上,“从开始菜单Oracle目录下打开 sqlplus 工具”就是预先设置了 ORACLE_SID 环境变量。
      

  6.   

    试试修改你的Listerner,如下:SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = C:\Oracle\product\11.2.0\dbhome_1)
          (PROGRAM = extproc)
          (ENVS = "EXTPROC_DLLS=ONLY:C:\Oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
        )
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = C:\Oracle\product\11.2.0\dbhome_1)
          (PROGRAM = extproc)
          (ENVS = "EXTPROC_DLLS=ONLY:C:\Oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
        )
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = C:\Oracle\product\11.2.0\dbhome_1)
          (PROGRAM = extproc)
          (ENVS = "EXTPROC_DLLS=ONLY:C:\Oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
        )
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = C:\Oracle\product\11.2.0\dbhome_1)
          (PROGRAM = extproc)
          (ENVS = "EXTPROC_DLLS=ONLY:C:\Oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
        )
        (SID_DESC =
          (GLOBAL_DBNAME = ORCL)  
          (SID_NAME = ORCL)
        )
      )
      

  7.   

    --都是在同一台电脑上的 ?sqlplus sys/Pass1234@ORCL as sysdbaor 
    --dos 下运行set oracle_sid=ORCL
    sqlplus sys/Pass1234 as sysdba
      

  8.   

    估计是客户端的tnsname.ora出问题了,建议配置和移植工具->Net Configuration Assistant中重建下连接,
    然后sqlplus sys/Pass1234@服务名 as sysdba
    就可以了
      

  9.   

    监听删除重建下,配置和移植工具->Net Configuration Assistant中,
    然后sqlplus sys/Pass1234@服务名 as sysdba