运行环境 WINDOWS 2000+ORACLE9I,正常运行2年.最近突然发现在服务器端或者客户端以SYS/PWD@SID AS SYSDBA 登陆就出现如下错误.
ERROR:
ORA-01031:insufficient privileges
为了进一步了解情况,在客户端和服务端,以SYSTEM用户登陆,OK.....
问题分析:
1 SYSTEM用户能登陆,首先排除了TNSNAME的问题
2 检查服务端SQLNET.ORA文件
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)
没问题
3 检查服务端密码文件
发现密码文件不存在
创建密码文件
ORAPWD FILE=***** PASSWORD=**** ENTRIES=5
创建成功后,在服务端 CONNECT SYS / ORACLE @SID AS SYSDBA
服务端登陆成功.
测试客户端,故障依旧,还是没足够权限
郁闷中~~~~~~~~
4 检查服务端ORA_DBA组,ADMIN已经是这个组成员
再次郁闷中~~~~~~~~
5 检查服务端参数REMOTE_LOGIN_PASSWORDFILE
参数等于EXCLUSIVE
接着郁闷中,感觉没招了
6 看到一篇文章部分内容
内容如下
"经常有些用户需要在客户端软件以SYSDBA登陆目标数据库,然后执行管
理, 但是ORACLE默认是关闭的,需要通过修改参数文件才能实现"
思路略微开阔了,这个参数就是REMOTE_LOGIN_PASSWORDFILE,虽然他等
于了EXCLUSIVE,为此做下尝试在SPFILE中明确写入这个参数
alter system set remote_login_passwordfile=exclusive scope=spfile;
然后重起DB
7 客户端以SYS 用户登陆问题解决.
奇怪故障解决了,之前一直正常的,我感觉如果我不改这个参数直接重起可能故障也能解决.上面就是我分析解决这个故障的全过程-----有点蹊跷不知道是否是WINDOWS版本下的BUG.
查阅了其他人遇到这个问题,有些可能是SQLNET文件问题,有些是密码文件问题,有些是参数设置问题,有些是ORA_DBA组问题~~~~~~~~~~~以前我也没这么关注过这个错误,今天竟然遇到了,而且更加古怪几乎绝望中,索性解决了
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/127656/viewspace-406851/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/127656/viewspace-406851/