首页 > 其他 > 详细

ora-01031:insufficient privileges 解决方案

时间:2014-03-09 09:31:02      阅读:550      评论:0      收藏:0      [点我收藏+]

sqlplus /as sysdba 连补上,ora-01031的解决方法:

(1)检查sqlnet.ora是否包含这句话:SQLNET.AUTHENTICATION_SERVICES=(NTS),没有加上。

(2)检查登录的windows用户(administrator或安装oracle时候使用的用户)是不是包含在ORA_DBA组中,域用户没有连上服务器时就可能出现这种现象。

(3)要保证remote_login_passwordfile 参数=EXCLUSIVE.

(4)看看是否需要使用orapassw生成口令文件.

 

0.select instance_name from v$instance;查看oracle实例名

1.检查系统参数 SQL>show parameter password (alter system set remote_login_passwordfile=EXCLUSIVE scope=spfile)

2.select * from v$pwfile_users; 返会为空则无dba权限

3.grant sysdba to sys.

4.建立password文件 (以PWD+SID,区分大小写) (orapwd file="$ORACLE_HOME/database/PWDorcl.ora" password=sys entries=10)

  原理:  之所以采用密码认证文件的方式来存放sys用户的口令,是因为sys用户要负责建库、启动数据库、关闭数据库等特殊任务,把以sys用户的中令单独存放于口令文件中,这样数据库末打开时也能进行口令验证。

基于这样的原理,我们可以在忘记SYS密码的情况下通过重建PWD文件重新设置SYS密码。

我采用如下步骤:

  1.确定原有PWD+SID.ora的密码文件和路径,找到并删除。

  2.在路径下新建一个PWD+SID.ora的密码文件

  3.进入CMD,输入 orapwd file=%oracle_home%/database/PWD+sid.ora password=sys 重新设置SYS密码为sys ,此外可以跟参数entries来指定数据库拥用DBA权限的用户的个数,

如:orapwd file=%oracle_home%/database/PWD+sid.ora password=sys entries=2则指定拥有DBA 权限的用户数为2,还有一个参数force定义了是否覆盖当前文件。重建密码文件会清除系统内除了sys用户以外所有sysdba用户的密码

ora-01031:insufficient privileges 解决方案,布布扣,bubuko.com

ora-01031:insufficient privileges 解决方案

原文:http://www.cnblogs.com/de0319gh/p/3589451.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!