首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

Oracle 使用者帳號解鎖與鎖定完整操作指南

     編輯:Oracle 資料庫基礎

常見場景

Oracle 安裝預設會鎖定多個內建帳號(如 SCOTT、HR、OE 等),或因密碼錯誤超過限制導致帳號被鎖。DBA 需熟悉解鎖、鎖定、修改密碼的標準指令。

操作步驟

1. 以 SYSDBA 身分登入

sqlplus / as sysdba
-- 或指定密碼
sqlplus sys/your_password as sysdba

2. 解鎖使用者

ALTER USER scott ACCOUNT UNLOCK;

回傳 User altered. 即成功。

3. 鎖定使用者

ALTER USER scott ACCOUNT LOCK;

4. 修改密碼

ALTER USER scott IDENTIFIED BY new_password;

注意:Oracle 11g 區分大小寫,密碼建議包含大小寫、數字、特殊字元,長度 ≥ 8 碼。

5. 驗證連線

CONNECT scott/new_password
-- 或
conn scott/new_password

顯示 Connected. 表示帳號正常可用。

進階:批次解鎖所有預設帳號

BEGIN
  FOR u IN (SELECT username FROM dba_users WHERE account_status = 'LOCKED' AND username IN ('SCOTT','HR','OE','SH','PM','IX','BI'))
  LOOP
    EXECUTE IMMEDIATE 'ALTER USER ' || u.username || ' ACCOUNT UNLOCK';
  END LOOP;
END;
/

相關檢視

  • DBA_USERS:查看 ACCOUNT_STATUS 欄位(OPEN / LOCKED / EXPIRED / EXPIRED(GRACE))
  • USER_USERS:當前使用者狀態

最佳實踐

  1. 生產環境僅解鎖必要帳號,遵循最小權限原則。
  2. 定期稽核 DBA_USERS 異常狀態帳號。
  3. 搭配 Profile 設定 FAILED_LOGIN_ATTEMPTS、PASSWORD_LIFE_TIME 等密碼策略。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved