也有可能是用户权限问题.
看 WinXp 是否用 Administrator 权限登录?是否有 Oracle DBA 的权限等等...
可以参考一下Win2000(服务器)里,登录的属性。
(因为除了 Administrator 之外,还有 Oracle 的一些设置)具体做法:
在 控制面板->管理工具->计算机管理->本地用户和组->用户
 选定用户之后,按右键 "属性" ,选 隶属于 加多一个 ORA_DBA 的权限进去试试.

解决方案 »

  1.   

    系统中设置已经是这样子了,oracle安装默认就是这样啊
    那接下来在oracle中怎么设置?
    在网络上查找了资料说是在init.ora中设置os_authent_prefix='ops$'
    但是没有用啊?
      

  2.   

    主  题:  用orapwd修改internal密码碰到问题,提示ORA-01031: insufficient privileges? 
    作  者:  JCC0128 (JCC)  
    等  级:    
    信 誉 值:  100 
    所属论坛:  Oracle 基础和管理 
    问题点数:  20 
    回复次数:  5 
    发表时间:  2003-07-24 12:54:14 
       
     
       
    我的sqlnet.ora文件中的认证参数已改为NONE
    执行命令如下:
    C:\>ORAPWD FILE=C:\ORACLE\ORA81\DATABASE\PWDTEST3.ORA PASSWORD=jcc ENTRIES=10
    在dba studio中连接时报错ORA-01031: insufficient privileges?
    为何?>  
     
     
     回复人: kerisyml(魂之利刃) ( ) 信誉:101  2003-07-24 13:11:00  得分:0 
     
     
      权限不够,你需要用sys用户以sysdba身份登录修改密码。
    或者以internal用户登录,直接用alter user internal identified by newpassword;
      
     
    Top 
     
     回复人: lilylamb(小羊羔) ( ) 信誉:100  2003-07-24 13:12:00  得分:0 
     
     
      我记得这个密码只能在数据库建立时设置?
      
     
    Top 
     
     回复人: lilylamb(小羊羔) ( ) 信誉:100  2003-07-24 13:15:00  得分:0 
     
     
      我试了一下没成功,WHY???
      
     
    Top 
     
     回复人: JCC0128(JCC) ( ) 信誉:100  2003-07-24 13:18:00  得分:0 
     
     
      魂之利刃的方法我试过,的确可以!!!结贴时再给你分,thanks!
    我现在还有问题就是用orapwd的方法修改密码为什么不行??
      
     
    Top 
     
     回复人: JCC0128(JCC) ( ) 信誉:100  2003-07-24 13:43:00  得分:0 
     
     
      用魂兄的方法,从dba studio登陆不管是sys还是internal都不需要以sysdba身分,normal也行!
    用orapwd时一定要注意,先要关闭数据库,再执行orapwd.(请保存原密码文件的备分,万一失败,只需将文件名改回即可)。
    还发现一个有趣的问题,
    用orapwd时internal的密码已经更改,sys的不变!;而在dba studio中用internal或sys登陆修改sys密码时,internal跟sys的密码同时改变!!!  
     
    修改你的登陆认证方式为系统认证方式,然后用internal登陆,输入错误密码也能登陆C:\Oracle\Ora81\network\ADMIN\sqlnet.ora
    中将
    SQLNET.AUTHENTICATION_SERVICES= (NONE)
    中的NONE改为NTS,即:
    SQLNET.AUTHENTICATION_SERVICES= (NTS)修改密码后将此参数改回为none不过碰到过有的机器没有sqlnet文件,那就试试楼上的哈.
      

  3.   

    JCC0128(看到delphi报表就想呕吐) :
    能不能具体一点,按照最后一段话的设置不行啊?如果可以解决继续加分
      

  4.   

    你都没把问题描述清楚,我怎么说呀?留下你的qq or msn
      

  5.   

    加 ORA_DBA 权限不行吗?但不装客户端也要连数据库吗?
      

  6.   

    环境:Win2000 Professional+Oracle 8.1.7
    默认安装后,初始化参数
    os_authent_prefix="" #不需要在操作系统用户名前加前缀
    sqlnet.ora中的参数
    SQLNET.AUTHENTICATION_SERVICES= (NTS) #允许操作系统验证
    并且在系统中创建了操作系统用户组:ORA_DBA,默认系统管理员Administrator(安装Oracle时要求系统管理员权限)属于该组,属于改组的操作系统用户使用以下语句可以直接登录数据库:
    SQL>CONNECT / AS SYSDBA;--注意,是以DBA的身份登录
      要使用操作系统验证的方式,需要在数据库中如下创建用户(假设机器名为Win,操作系统用户名为admin):
    SQL>CREATE USER "Win\admin" IDENTIFIED EXTERNALLY DEFAULT TABLESPACE users TEMPORARY TABLESPACE temp;
    SQL>GRANT CREATE SESSION TO "Win\admin";
      这样在Win上以admin用户登录操作系统后,就可以在SQL*PLUS中直接使用"conn /"登录数据库了。注意,在Windows域中,应使用"域名\域用户名"来作为对应的数据库用户名。