默認SCOTT用戶安裝後即被鎖定(STATUS=LOCKED),需解鎖並重置密碼恢復訪問。
-- 1. 以SYSDBA登錄
$ sqlplus /nolog
SQL> CONNECT / AS SYSDBA
-- 2. 解鎖賬號
SQL> ALTER USER scott ACCOUNT UNLOCK;
User altered.
-- 3. 重置密碼(原密碼TIGER亦可自定)
SQL> ALTER USER scott IDENTIFIED BY tiger;
User altered.
-- 4. 驗證登錄
SQL> CONNECT scott/tiger
Connected.
| 操作 | 命令 | 效果 |
|---|---|---|
| 鎖定 | ALTER USER test ACCOUNT LOCK; | 狀態變LOCKED,登錄報ORA-28000 |
| 解鎖 | ALTER USER test ACCOUNT UNLOCK; | 狀態變OPEN,恢復登錄 |
-- 解鎖 + 密碼過期(強制用戶首次登錄改密)
ALTER USER app_user ACCOUNT UNLOCK PASSWORD EXPIRE;
-- 批量解鎖所有被鎖用戶(謹慎)
BEGIN
FOR u IN (SELECT username FROM dba_users WHERE account_status LIKE 'LOCKED%')
LOOP
EXECUTE IMMEDIATE 'ALTER USER ' || u.username || ' ACCOUNT UNLOCK';
END LOOP;
END;
/
-- 解鎖並同步修改密碼(遷移/克隆場景)
ALTER USER migrate_user ACCOUNT UNLOCK IDENTIFIED BY "NewP@ssw0rd!";
-- 單用戶
SELECT username, account_status, lock_date, expiry_date
FROM dba_users WHERE username = 'SCOTT';
-- 全庫非OPEN用戶
SELECT username, account_status, profile
FROM dba_users WHERE account_status != 'OPEN';
CONNECT / AS SYSDBA → ALTER USER ... ACCOUNT UNLOCK → ALTER USER ... IDENTIFIED BY ... 三條命令,30秒搞定用戶解鎖。記住:解鎖後必須重置密碼(或確認原密碼可用),否則仍無法登錄。