Cum să resetazi parola de un utilizator blocat în Oracle

O să vedem cum o sa putem modifica un parola de utilizator în Oracle.

  

Modificarea unei parole de utilizator poate fi destul de ușoara, dar cum facem când vrem să resetați parola de utilizator blocat la vechea parolă, chiar dacă nu o știm ? Acest lucru este util în cazul utilizatorilor Db_linksblocate sau utilizatori vechi.

       
  • Pasul 1 - trebuie sa execuți următorul script .O sa va ceara numele de utilizator pe care îl ceea ce a reseta parola.
  •  select 'alter user "'||d.username||'" identified by values '''||u.password||''';' c
    from dba_users d, sys.user$ u
    where d.username = upper('&&username')
    and u.user# = d.user_id;
     

    Exemplu:

     Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    
    SQL> select 'alter user "'||d.username||'" identified by values '''||u.password||''';' Run
    from dba_users d, sys.u  2  ser$ u
    where   3  d.username = upper('&&username')
    and u.  4  user# = d.user_id;
    Enter value for username: dbsnmp
    old   3: where d.username = upper('&&username')
    new   3: where d.username = upper('dbsnmp')
    
    Run
    --------------------------------------------------------------------------------
    alter user "DBSNMP" identified by values '03C6C5879738E60F';
    
     
  • Step 2 - Executați ieșirea generată de ultimul script:
  •  SQL> alter user "DBSNMP" identified by values '03C6C5879738E60F';
    
    User altered.
    
     

    Aceasta va reseta parola pentru utilizator "dbsnmp" la ultima parola.

    Acest lucru poate fi util atunci când vom ajunge "ORA-28000: contul este blocat". Eroare