簡體   English   中英

Oracle 12c 用戶名忘記了

[英]Oracle 12c Username forgot

幾天前我安裝了 oracle 12c。 一兩天后我運行了它,但我完全丟失了我的用戶名,我確實記得我的密碼但不記得用戶名。 我有什么辦法可以看到我設置的用戶名

假設您可以以SYS身份登錄,您可以使用:

select *
from dba_users

這將提供所有用戶,包括您定義的用戶; 在這里你會發現更多的東西。

從 Oracle 11g 開始,有新的密碼生成程序。 你可以使用

create or replace function get_hash_11g(p_password varchar2, p_salt varchar2) return varchar2 is
    lv_pwd_raw    RAW(128);
    lv_enc_raw    RAW(2048);
  BEGIN 
    lv_pwd_raw    := utl_raw.cast_to_raw(p_password) || hextoraw(p_salt);
    lv_enc_raw    := sys.dbms_crypto.hash(lv_pwd_raw, 3);

    return lv_enc_raw;
  end get_hash_11g;
/

然后運行選擇

select w.name from sys.user$ w
where substr(w.spare4, 3, 40) = get_hash_11g(/*your password*/'&pass', substr(spare4, 43, 20));
/

設置以下環境變量。 它們對於流程本身不是必需的,但會幫助您導航。 在這種情況下,我的域稱為“ClassicDomain”。 請記住更改該值以匹配您的域。

export MW_HOME=/u01/app/oracle/middleware
export DOMAIN_HOME=$MW_HOME/user_projects/domains/ClassicDomain

關閉 WebLogic 域。

$ $DOMAIN_HOME/bin/stopWebLogic.sh

重命名數據文件夾。

$ mv $DOMAIN_HOME/servers/AdminServer/data $DOMAIN_HOME/servers/AdminServer/data-old

使用以下命令重置密碼。 請記住替換適當的用戶名和密碼。

$ cd $DOMAIN_HOME/security
$ java weblogic.security.utils.AdminAccount <username> <password> .

如果您能夠調用sqlplus,請執行以下操作:

sqlplus:/ as sysdba - 這是作為sys登錄所需的命令。

password: - 不要提供任何密碼 直接按回車

SQL> select username from dba_users; - 此命令將提供數據庫中的用戶列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM