我有一个用户收到一个 ORA-28002,表明密码将在六天内过期。我运行了以下内容:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Run Code Online (Sandbox Code Playgroud)
但是当我尝试以用户身份登录时,该消息仍然存在。执行这个:
select * from dba_profiles where RESOURCE_NAME LIKE 'PASSWORD_LIFE_TIME';
Run Code Online (Sandbox Code Playgroud)
显示这些值确实更改为 UNLIMITED。
REW*_*REW 19
密码已在 dba_users 中标记为“EXPIRED”或标记为“EXPIRY_DATE”。你将不得不改变它。您可以将其设置回相同的密码。简单的方法是“按值”设置密码。这通常会绕过历史检查。
12:28:33 SQL> select * from dba_users where username = 'MYUSER1';
USERNAME USER_ID PASSWORD
------------------------------ ---------- ------------------------------
ACCOUNT_STATUS LOCK_DATE EXPIRY_DATE
-------------------------------- ------------------ ------------------
DEFAULT_TABLESPACE TEMPORARY_TABLESPACE CREATED
------------------------------ ------------------------------ ------------------
PROFILE INITIAL_RSRC_CONSUMER_GROUP
------------------------------ ------------------------------
EXTERNAL_NAME
--------------------------------------------------------------------------------
MYUSER1 338 66856982BE5CD23F
OPEN
USERS TEMP 17-JAN-11
DEFAULT DEFAULT_CONSUMER_GROUP
Elapsed: 00:00:00.03
12:28:43 SQL> alter user myuser1 password expire;
User altered.
Elapsed: 00:00:00.00
12:29:11 SQL> select * from dba_users where username = 'MYUSER1';
USERNAME USER_ID PASSWORD
------------------------------ ---------- ------------------------------
ACCOUNT_STATUS LOCK_DATE EXPIRY_DATE
-------------------------------- ------------------ ------------------
DEFAULT_TABLESPACE TEMPORARY_TABLESPACE CREATED
------------------------------ ------------------------------ ------------------
PROFILE INITIAL_RSRC_CONSUMER_GROUP
------------------------------ ------------------------------
EXTERNAL_NAME
--------------------------------------------------------------------------------
MYUSER1 338 66856982BE5CD23F
EXPIRED 17-JAN-11
USERS TEMP 17-JAN-11
DEFAULT DEFAULT_CONSUMER_GROUP
Elapsed: 00:00:00.03
12:29:14 SQL>
Run Code Online (Sandbox Code Playgroud)
其格式为“更改由值 'hash from dba_users.password' 标识的用户 USER;”
[TEST] C:\>sqlplus system
SQL*Plus: Release 10.2.0.4.0 - Production on Mon Jan 17 12:18:16 2011
Copyright (c) 1982, 2007, Oracle. All Rights Reserved.
Enter password:
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
new: showmode BOTH
12:18:17 SQL> prompt end of LOGIN.SQL
end of LOGIN.SQL
12:18:17 SQL> create user myuser1 identified by mypassword1;
User created.
Elapsed: 00:00:00.01
12:18:21 SQL> grant connect, resource to myuser1;
Grant succeeded.
Elapsed: 00:00:00.01
12:18:30 SQL> connect myuser1/mypassword1
Connected.
12:18:39 SQL> connect system
Enter password:
Connected.
12:18:51 SQL> alter user myuser1 password expire;
User altered.
Elapsed: 00:00:00.00
12:19:05 SQL> connect myuser1/mypassword1
ERROR:
ORA-28001: the password has expired
Changing password for myuser1
New password:
Retype new password:
Password changed
Connected.
12:19:16 SQL> connect myuser1/mypassword1
ERROR:
ORA-01017: invalid username/password; logon denied
Warning: You are no longer connected to ORACLE.
12:19:21 SQL> connect system
Enter password:
Connected.
12:19:34 SQL> alter user myuser1 identified by mypassword1;
User altered.
Elapsed: 00:00:00.01
12:19:49 SQL> alter user myuser1 identified by mypassword1 password expire;
User altered.
Elapsed: 00:00:00.01
12:20:26 SQL> select username, password from dba_users where username = 'MYUSER1';
USERNAME PASSWORD
------------------------------ ------------------------------
MYUSER1 66856982BE5CD23F
Elapsed: 00:00:00.01
12:20:36 SQL> alter user myuser1 identified by values '66856982BE5CD23F' ;
User altered.
Elapsed: 00:00:00.01
12:21:01 SQL> connect myuser1/mypassword1
Connected.
12:21:13 SQL> exit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Run Code Online (Sandbox Code Playgroud)
小智 17
请找到以下三个查询并从系统数据库运行这些查询。
// For seeing full user details
SELECT profile FROM dba_users WHERE username = 'SYSTEM';
// This query is used to change the password life time to unlimited
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
// This query is used to change the default password.
alter user SYSTEM identified by "system";
Run Code Online (Sandbox Code Playgroud)
一位使用 Toad 的同事在“用户”下的“架构浏览器”中看到了指示的帐户。
我们通过右键单击解锁用户成功。在“更改用户”对话框中,我们重新输入旧密码并取消选中“密码已锁定”复选框。
小智 5
我知道这已经过时了,但对于那些使用 Oracle SQL Developer 的人来说,请遵循以下步骤:
使用另一个用户登录您拥有的任何数据库连接,您可以使用默认的“system”或“sys”用户名以及您在那里获得的任何密码。
打开连接树并找到“其他用户”节点并打开它,如下所示:
归档时间: |
|
查看次数: |
91323 次 |
最近记录: |