oracle ORA-28001: 密码已过期
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/40581131/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
ORA-28001: The password has expired
提问by luongkhanh
I'm facing the problem about my database in Oracle, When I opened my database, it appear a message with: "ORA-28001: The password has expired"
我在 Oracle 中遇到有关我的数据库的问题,当我打开我的数据库时,它出现一条消息:“ORA-28001:密码已过期”
I have updated my account with somes:
我已经用一些更新了我的帐户:
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
I check and see that, my account: 'system' has OPEN, but I open it on Oracle SQL Developer, it still have alert:
我检查并看到,我的帐户:“系统”已打开,但我在 Oracle SQL Developer 上打开它,它仍然有警报:
ORA-28001: The password has expired
I have refered very much links but it still same the problem, how to fix this?
我参考了很多链接,但问题仍然存在,如何解决?
采纳答案by luongkhanh
I have fixed the problem, just need to check:
我已经解决了这个问题,只需要检查:
open_mode from v$database
and then check:
然后检查:
check account_status to get mode information
and then use:
然后使用:
alter user myuser identified by mynewpassword account unlock;
回答by Yosra
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
alter user EPUSR100 identified by EPUSR100 account unlock;
commit;
回答by user1979139
Check "PASSWORD_LIFE_TIME"by
检查“PASSWORD_LIFE_TIME”通过
Sql > select * from dba_profiles;
查询 > select * from dba_profiles;
Set to Never expire
设置为永不过期
Sql> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
查询> ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Then reset the password of locked user.
然后重置锁定用户的密码。
回答by mahesh kumar thiruveedula
Try to connect with the users in SQL Plus, whose password has expired. it will prompt for the new password. Enter the new password and confirm password.
尝试连接 SQL Plus 中密码已过期的用户。它会提示输入新密码。输入新密码并确认密码。
It will work
它会工作
回答by Taravat
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;
回答by Shweta
I had same problem even after changing the password, it wasn't getting reflected in SQLDEVELOPER.
即使在更改密码后我也遇到了同样的问题,但它没有反映在 SQLDEVELOPER 中。
Atlast following solved my problem :
Atlast 以下解决了我的问题:
- Open Command Propmt
- Type sqlplus
- login as sysdba
- Run following command : alter user USERNAME identified by NEW_PASSWORD;
- 打开命令提示符
- 键入 sqlplus
- 以 sysdba 身份登录
- 运行以下命令:更改由 NEW_PASSWORD 标识的用户 USERNAME;
回答by user3380585
you are in wrong cdb/pdb so connect to right pdb
你在错误的 cdb/pdb 所以连接到正确的 pdb