你的数据库实例没启动吧
连接到sysdba后,执行startup,启动数据库实例

解决方案 »

  1.   

     幸好楼主是系统认证的。
    先startup open;打开数据库之后,然后再修改密码:alter user xx identified by xx;
      

  2.   

    你现在数据库是关闭的。 所以会提示连接到空例程。  startup 然后 alter user xx identified by xx;每个都改过去吧。 
    密码忘了,oracle 是找不回来的。 只能重新设置。
      

  3.   

    实例没有启动,密码不记得了,可以ORAPWD重建 了
      

  4.   

    楼主是windows的系统。先检查控制面板--服务,看你的oracle数据库服务是否启动(找到OracleServiceXXXX的服务,其中XXXX是你的实例的具体名称),如果是已启动状态,那么在ms-dos窗口中,如果系统默认的环境变量不正确,是不能连接到已启动的数据库的。你可以在ms-dos中,设置一下环境变量,即 set ORACLE_SID=XXXX 
    (其中XXXX是你的实例的具体名称),再通过你的方式sqlplus /nolog 然后conn /as sysdb 连接进去。成功进入后,运行
    alter user 用户名称 identified by 新密码;
    进行密码的修改动作。如果用户帐号已被锁定,在修改密码的同时需要进行帐号解锁操作,可用用下面的命令:
    alter user 用户名称 identified by 新密码 account unlock;
    (补充,有时你在控制面板--服务中看到OracleServiceXXXX的服务是启动状态,但是数据库其实是没有真正启动的,是因为window中注册表可以进行控制,需要检查注册表regedit中HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\KEY_oraDB10g_home1下面(假如是10g版本,其他版本请找此路径下的对应home),ORA_SHAI_AUTOSTART这个属性是否为true,只有为true才能通过控制面板--服务进行真正的启动。