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

Oracle 10g XE默認用戶解鎖全流程:從忘記密碼到恆通訪問

     編輯:Oracle 資料庫基礎

典型場景

Oracle 10g Express Edition (XE) 安裝後長期未用,默認用戶(DBSNMP、HR等)因密碼過期或登錄失敗被鎖,且忘記初始密碼。本文提供從SYS登錄到批量解鎖的標準化操作。

步驟一:以SYSDBA免密登錄

C:\> sqlplus /nolog
SQL> CONNECT / AS SYSDBA
Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production

前提:OS用戶屬於ORA_DBA組(Windows)或dba組(Linux)。

步驟二:查詢被鎖用戶

SELECT username, account_status, lock_date, expiry_date
FROM dba_users
WHERE account_status != 'OPEN';

常見輸出:DBSNMP 狀態 EXPIRED & LOCKED(TIMED)。

步驟三:解鎖並重置密碼

-- 解鎖
ALTER USER dbsnmp ACCOUNT UNLOCK;

-- 重置密碼(同步修改應用端連接串)
ALTER USER dbsnmp IDENTIFIED BY new_password;

-- 若密碼已過期,需先標記過期再重置(避免ORA-28001)
ALTER USER dbsnmp PASSWORD EXPIRE;
ALTER USER dbsnmp IDENTIFIED BY new_password;

Oracle 10g XE 默認用戶速查表

用戶名默認密碼用途備註
SYSCHANGE_ON_INSTALL核心字典擁有者,最高權限安裝時可自定義
SYSTEMMANAGER第二管理員同上
DBSNMPDBSNMPEnterprise Manager監控代理最常被鎖
SYSMANCHANGE_ON_INSTALLEM Repository擁有者Grid Control專用
HRHR示例模式(人力資源)安裝可選不安裝
OEOE示例模式(訂單入口)同上
SCOTTTIGER經典教學模式需執行?/rdbms/admin/utlsampl.sql創建
CTXSYSCTXSYSOracle Text文本索引
MDSYSMDSYSOracle Spatial空間數據
ORDSYSORDSYSOracle interMedia多媒體
OUTLNOUTLN計劃穩定性Stored Outlines

批量解鎖腳本(生產環境慎用)

SET SERVEROUTPUT ON
BEGIN
  FOR u IN (SELECT username FROM dba_users WHERE account_status LIKE 'LOCKED%')
  LOOP
    BEGIN
      EXECUTE IMMEDIATE 'ALTER USER ' || u.username || ' ACCOUNT UNLOCK';
      DBMS_OUTPUT.PUT_LINE('Unlocked: ' || u.username);
    EXCEPTION WHEN OTHERS THEN
      DBMS_OUTPUT.PUT_LINE('Failed: ' || u.username || ' - ' || SQLERRM);
    END;
  END LOOP;
END;
/
-- 後續需逐個重置密碼或統一設置默認密碼

安全加固建議

  1. 安裝即修改:所有默認用戶密碼改為複雜隨機串,存入密碼管理器。
  2. 鎖定不用賬號:ALTER USER ctxsys ACCOUNT LOCK PASSWORD EXPIRE;(XE輕量級,多組件可禁用)。
  3. 啟用密碼複雜度:ALTER PROFILE DEFAULT LIMIT PASSWORD_VERIFY_FUNCTION VERIFY_FUNCTION_11G;
  4. 審計登錄失敗:AUDIT SESSION WHENEVER NOT SUCCESSFUL;

總結

XE環境輕量但默認賬號風險同樣存在。掌握SYS/AS SYSDBA → 查詢狀態 → 解鎖重置 → 安全加固四步曲,配合默認用戶速查表,可在5分鐘內恢復所有受阻訪問。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved