system用户登陆的时候提示 ora-28000/ora-28002

来源:互联网 发布:单片机rl 编辑:程序博客网 时间:2024/06/06 21:04

Oracle 使用system用户登陆的时候提示 ora-28000 the account is locked。用户被锁定了

用户为什么被锁定,可能是下面几个原因

  1. 尝试多次登录未成功(可能密码不正确);

  2. 此用户被管理员手工锁定;

  3. 用户密码到期、未按时修改密码,等等。

下面是我的解决办法

------------------------------------------------------------------------------------------------------------------
SQL> connect sys/sys as sysdba;
已连接。
SQL> alter user system account unlock;

用户已更改。

SQL> commit;

提交完成。

SQL> conn system/ok
已连接。
SQL> show user;
USER 为 "SYSTEM"

--------------------------------------------------------------------------------------------------------------------

锁定账号方法
  1、SQL> alter user system account lock;
    User altered.
修改帐号口令
  1、SQL> ALTER USER system IDENTIFIED BY sysPasswd;

学习 Oracle 数据库的几点经验:

  1. 在Dos命令下输入 sqlplus 可以打开 Oracle 自带的 SQL Plus 并出现登录提示,

            而输入 sqlplus/nolog 则打开 SQL Plus 后不出现登陆提示;

  2. 在 SQL Plus 中输入 conn 可以连接数据库,其中的一种格式为:

  SQL> conn 用户名/密码 如: conn scott/tiger

  3. Oracle 中给用户加锁与解锁的代码:

  SQL> alter user 用户名 account lock; (加锁)

  SQL> alter user 用户名 account unlock; (解锁)


修改的命令中要commit。

-----------------------------------------------------无聊的分割线--------------------------------------------------------------------------

今天在使用sqlplus时出现

===============================================

ERROR:
ORA-28002: the password will expire within 7 days

===============================================

提示密码快过期了,由于需要连接的测试数据库,所以决定将密码设置成永不过期。

1.查看用户的profile设置:

SELECT username,profile FROM dba_users;  

一般用户的profile设置都为DEFAULT。

2.查看系统profiles中PASSWORD_LIFE_TIME设置。

SELECT * FROM dba_profiles s WHERE s.profile='DEFAULT' AND resource_name='PASSWORD_LIFE_TIME';

PROFILE                        RESOURCE_NAME                    RESOURCE                      LIMIT

------------------------------ -------------------------------- ------------------------------------------------
DEFAULT                        PASSWORD_LIFE_TIME               PASSWORD                180dys

==============================================================

3.修改DBA_PROFILES中PASSWORD_LIFE_TIM的设置,改为ULIMITED。

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;  

修改后设置立即生效,不需要重启数据库,此时密码永远不会过期。

4.已经被报告了密码快要过期的账户必须再改一次密码(需要DBA权限)

以system用户为例

sqlplus / as sysdbaalter user system identified by root;

再连接数据再也不会出现密码过期的事情了。

如果是其他用户的话,那么就使用其他用户名。

alter user scott identified by tiger;  

---------------------------------

sys默认:change_on_install

使用SQL Plus登录数据库时,system使用密码manager可直接登录。

但如果是sys用户,密码必须加上as sysdba,即完整密码为:change_on_install as sysdba


0 0
原创粉丝点击