ORA-28001:密码已过期

luo*_*anh 48 oracle

我在Oracle中遇到了关于我的数据库的问题,当我打开我的数据库时,它显示一条消息:"ORA-28001:密码已过期"

我已经更新了我的帐户:

sqlplus /nolog
SQL> connect / as SYSDBA
Connected.

SQL> SELECT username, account_status FROM dba_users WHERE ACCOUNT_STATUS LIKE '%EXPIRED%';

SQL> ALTER USER system IDENTIFIED BY system;         
User altered.

SQL> ALTER USER system ACCOUNT UNLOCK;
User altered.

SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Profile altered.

SQL> exit
Run Code Online (Sandbox Code Playgroud)

我查看并查看,我的帐户:'system'已打开,但我在Oracle SQL Developer上打开它,它仍然有警报:

ORA-28001: The password has expired
Run Code Online (Sandbox Code Playgroud)

我已经提到了非常多的链接,但它仍然是同样的问题,如何解决这个问题?

luo*_*anh 33

我已经解决了这个问题,只需要检查一下:

open_mode from v$database
Run Code Online (Sandbox Code Playgroud)

然后检查:

check account_status to get mode information
Run Code Online (Sandbox Code Playgroud)

然后使用:

alter user myuser identified by mynewpassword account unlock;
Run Code Online (Sandbox Code Playgroud)

  • 我只使用了“更改用户”并且它起作用了。前两条语句有什么用? (3认同)

小智 28

ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
alter user EPUSR100 identified by EPUSR100 account unlock;
commit;
Run Code Online (Sandbox Code Playgroud)


小智 13

尝试连接 SQL Plus 中密码已过期的用户。它会提示输入新密码。输入新密码并确认密码。

它会工作

SQL Plus 输出图像


小智 10

检查"PASSWORD_LIFE_TIME"通过

Sql> select * from dba_profiles;

设置为永不过期

SQL> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;

然后重置锁定用户的密码.

  • 我尝试通过以下方式重置:alter user systemidentified by new_password account unlock; ,但同样的错误 (2认同)

小智 10

C:\>sqlplus /nolog
SQL> connect / as SYSDBA
SQL> select * from dba_profiles;
SQL> alter profile default limit password_life_time unlimited;
SQL> alter user database_name identified by new_password;
SQL> commit;
SQL> exit;
Run Code Online (Sandbox Code Playgroud)


小智 9

  • 连接到 Oracle

sqlplus sys/root 作为 sysdba 连接到甲骨文

  • 检查用户的状态和到期日期

从 dba_users 中选择用户名、帐户状态、到期日期;

地位

  • 更改用户密码以解决过期问题

更改由 dummy_password 标识的用户 dummy_user;

更改密码

  • 如果用户帐户已锁定,则将其解锁

更改用户虚拟用户帐户解锁;

  • 将密码过期限制设置为无限制,以避免将来出现问题

更改配置文件默认限制 PASSWORD_LIFE_TIME UNLIMITED;

密码无限制

  • 再次检查用户的状态以验证到期日期。账户状态现已开放,有效期无限制。

从 dba_users 中选择用户名、帐户状态、到期日期;

状态1

SQL命令:

sqlplus sys/root 作为 sysdba

从 dba_users 中选择用户名、帐户状态、到期日期;

更改由 dummy_password 标识的用户 dummy_user;

更改用户虚拟用户帐户解锁;

更改配置文件默认限制 PASSWORD_LIFE_TIME UNLIMITED;


Shw*_*eta 5

即使更改密码后我也遇到了同样的问题,它没有反映在 SQLDEVELOPER 中。

最后以下解决了我的问题:

  1. 打开命令提示符
  2. 类型 sqlplus
  3. 以 sysdba 身份登录
  4. 运行以下命令:更改由 NEW_PASSWORD 标识的用户 USERNAME;


小智 5

我遇到了同样的问题,我正在尝试登录数据库,它出现一条消息:“ORA-28001:密码已过期”,我已经解决了问题的简单步骤

1.打开命令提示符 2.输入 sqlplus 3.它将要求输入密码,您可以提供旧密码,它将显示密码已过期 ORA-28001 4.它将询问新密码并重新输入密码 5.它将用新密码更改6.进入sql数据库并尝试使用新密码连接,它将连接。