码迷,mamicode.com
首页 > 其他好文 > 详细

ORA-28000错误心得分享

时间:2018-02-08 11:10:47      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:str   false   ram   指定   sel   audit   comm   users   nbsp   

    这个毛病特别稀奇,用户好端端的就登陆不上!根据提示 The account is locked 这账户被锁定,啥情况,我们登陆sysdba看一看

    格式:

        select account_status,lock_date,profile from dba_users where username='USERNAME';

    解析:

        这句话查询字段account_status(账户状态),lock_date(锁数据),profile配置文件字段,然后dba_users查看所有用户状态的视图表,指定username你的账户名就可以看状态

        查看这个状态的时候发现是LOCKED(TIMED),锁(时间)以前没见过这种状态,我就百度了一下,系统默认配置密码登录(错误登录)登录10次,所以就给个时间锁,知道了这些就好办了,我感觉输入10次才给锁太不安全了!

我想把他改成3次,我们首先要知道怎么查看这个系统默认设置,如下

    格式:

        select resource_name,resource_type,limit from dba_profiles where profile='DEFAULT';

    解释:

        查询资源名字,类型,限制源表是dba_profiles视图(dba配置文件),指定default,这样就出来了!

    格式:

        alter profile default limit FAILED_LOGIN_ATTEMPTS unlimit(无限次);--本人为了安全设置了3次(非生产环境下)

   解释:

      翻译英语  改变配置文件默认的限制 登录失败尝试 为3次!很好理解无难度

这时候我们就可以给用户解锁了

    格式:

       alter user scott account unlock;--改变用户scott账户解锁

    这时候我们在dba_users视图查看发现已经解锁,登录成功,我还特意尝试了3次失败登录,报错ORA-28000看来还是很有效果!这时候问题解决希望对对大家有一些帮助

补录:

    因为我其实查看了show parameter resource,这时候我惊奇发现没有开启resource limit,values --> false,这里资源显示没有开启,却10次生效,为什么??

    查阅一些资料和了解,FAILED_LOGIN_ATTEMPTS 不为受resource limit的约束,修改用alter profile是用户口令管理,变量是资源管理,口令并不受RESOURCE LIMIT的限制,一些教材中把profile分为管理密码与资源两大类我也查实了。

    引用网友的帖子感觉特别好 http://www.php.cn/mysql-tutorials-135104.html 比我讲解详细 思路明确 特别引用请大家参考 本人看了也有很大知识面提升

    最后想查看Oracle中用户已经登录失败几次了?

        格式:

            select lcount from user$ where name='USERNAME';--就可以看到统计信息

        格式:

            SQL> audit session whenever not successful;

            审计已成功。

            SQL> set linesize 1000;

            SQL> col userhost for a20;

            SQL> col COMMENT$TEXT for a30;

            SQL> col SPARE1 for a20;

            SQL> col NTIMESTAMP# for a35

            SQL> select sessionid,userid,userhost,comment$text,spare1,to_char(ntimestamp#+1/3,'yyyy-mm-dd hh24:mi:ss') from aud$ where returncode=1017 order by ntimestamp# desc;

            user$与aud$的信息非常有用!!

   



ORA-28000错误心得分享

标签:str   false   ram   指定   sel   audit   comm   users   nbsp   

原文地址:http://blog.51cto.com/13352079/2070092

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!