【ORACLE】Oracle 忘記用戶名和密碼的和用戶被鎖定的解決辦法


一、忘記用戶名和密碼的解決辦法:

方法一:

   1、首先進入sqlplus:進入的方式有兩種,一種是通過cmd命令台輸入sqlplus,另外一種是直接在開始-》程序-》Oracle-》應用程序開發-》sqlplus。

   2、搜索 “Oracle 11g默認用戶名,密碼”,可以找到很多相關的默認用戶名和密碼的信息,我就不貼過來了。

   3、然后用默認的用戶名和密碼逐一驗證,看看有沒有可以登錄的,如果顯示:“invalid username/password;logon denied” 就繼續試其他用戶。直到找到出現:“error; the account is locked”的用戶,記下用戶名,比如我找到了ordsys這個用戶被鎖定。

   4、重新登錄sqlplus,在“請輸入用戶名:”提示下輸入:“/as sysdba”,屏幕顯示“連接到:……”等信息。然后出現“SQL>”提示符,在此提示符下輸入:“alert user ordsys account unlock;”注意有個分號,不然還會在輸入后自動出現個“2”等待你繼續輸入。此時屏幕顯示:“用戶已更改。”

    

 

   5、重新登錄sqlplus,在“請輸入用戶名:”提示下輸入:“ordsys”,在“輸入口令:”后輸入“ordsys”,控制台會顯示:“error;the password has expired”,然后要求輸入新口令,確認新口令。至此,終於可以順利通過用戶名和密碼連接數據庫了。

      

提示:

oracle 11g
在本機安裝完Oracle以后,不記得sys用戶的密碼了,采用如下方法可以修改密碼:
1.打開cmd,輸入sqlplus /nolog,回車;輸入“conn / as sysdba”;輸入“alter user sys identified by 新密碼”,注意:新密碼最好以字母開頭,否則可能出現錯誤Ora-00988。有了這個方法后,只要自己對oracle服務器有管理員權限,不記得密碼的時候就可以隨意修改密碼了。
2.在命令行執行如下命令:sqlplus “/@服務名 as sysdba”,然后在sqlplus中alter user sys identified by 新密碼;
alter user system identified by 新密碼;
3.運行到C盤根目錄
1)輸入:SET ORACLE_SID = 你的SID名稱
2)輸入:sqlplus/nolog
3)輸入:connect/as sysdba
4)輸入:alert user sys identified by sys
5)輸入:alert user system identified by system
6)更改完成,密碼是Oracle數據庫初始密碼
4.首先,在CMD下輸入SQLPLUS/NOLOG然后再在出來的界面中打入CONN/AS SYSDBA,這樣就會以本地系統登錄的用戶為信任用戶進入數據庫的操作.解決這個問題的方式有兩種,一個是:ALTER USER (USERNAME) IDENTIFIED BY “密碼”;這個是可以改變USERNAME的密碼.當然這個USERNAME必須已經存在的
另一種是:CREATE USER (USERNAME) IDENTIFIED BY “密碼”;改變用戶權限的命令是:GRANT ROLES TO (USERNAME);以上2種方法都是針對ORACLE 9I的版本 。
5.用orapwd.exe命令,可以修改命令。
orapwd file=’/oracle/pwdsid.ora’ password=123456這個命令是修改sys用戶的密碼。你把生成的文件覆蓋原來的密碼文件。除sys其他用戶的密碼不會改變。
6.su - oracle
sqlplus /nolog
conn / as sysdba
startup (如果數據庫不是處於啟動狀態則啟動)
alter user sys identified by 123456
然后就可以使用sys用戶密碼登陸了

操作系統認證方式
conn / as sysdba
alter user sys identified by xxx

方法二:

還可以為系統在安裝Oracle時設定的System sys等用戶更改密碼:

    1、登錄sqlplus/nolog

    2、連接數據庫:connect /as sysdba

    3、修改用戶密碼(例:修改sys用戶密碼為123):alter user sys identified by 123;  格式:alter user sys identified by password; 

    

提示:

一、忘記除SYS、SYSTEM用戶之外的用戶的登錄密碼。
     用SYS (或SYSTEM)用戶登錄: CONN SYS/PASS_WORD AS SYSDBA;
     使用如下語句修改用戶的密碼: ALTER USER user_name IDENTIFIED BY "newpass";
     注意:密碼不能全是數字。並且不能是數字開頭。否則會出現:ORA-00988: 口令缺失或無效
 
二、忘記SYS用戶,或者是SYSTEM用戶的密碼。
     如果是忘記SYSTEM用戶的密碼,可以用SYS用戶登錄。然后用ALTER USER 命令修改密碼:
     CONN SYS/PASS_WORD AS SYSDBA;
     ALTER USER SYSTEM IDENTIFIED BY "newpass";
     如果是忘記SYS用戶的密碼,可以用SYSTEM用戶登錄。然后用ALTER USER 命令修改密碼。
     CONN SYSTEM/PASS_WORD ;
     ALTER USER SYSTEM IDENTIFIED BY "newpass";
 
三、如果SYS,SYSTEM用戶的密碼都忘記或是丟失。
 可以使用ORAPWD.EXE 工具修改密碼。
 開始菜單->運行->輸入‘CMD’,打開命令提示符窗口,輸入如下命令:
 orapwd file=D:\oracle10g\database\pwdctcsys.ora password=newpass
 這個命令重新生成了數據庫的密碼文件。密碼文件的位置在ORACLE_HOME目錄下的\database目錄下。
 這個密碼是修改sys用戶的密碼。除sys其他用戶的密碼不會改變。
不過Oracle提供了兩種驗證方式,一種是OS驗證,另一種密碼文件驗證方式,如果是第一種方式用以下方法修改密碼:
  sqlplus /nolog;
  connect / as sysdba
  alter user sys identified by ;
  alter user system identified by ;
  如果是第二種方法就用上述方式修改,也可以下方法修改密碼:
  orapwd file=pwdxxx.ora password=你設定的新密碼 entries=10
  設定完后,重新啟動服務,再次登陸就可以了。

 

方法三:

    使用OEM設置用戶信息。在瀏覽器中輸入:https://localhost:1158/em

        會進入到oem界面,選擇“服務器”頁簽,找到“用戶”點擊。

    

 

 

    選擇需要修改密碼的用戶,以sys為例:

    

 

 

    點擊編輯,進入用戶管理頁面。

    

 

 

    根據需要修改相應信息。需要注意的是,想要通過瀏覽器訪問oem,必須保證oracle的相應服務是開啟的。

    通過“控制界面”->“管理工具”->“服務”找到相應服務,如下圖所示,將其設為“啟動”即可。

    

二、用戶被鎖定的解決辦法

既然是被鎖住了,那就通過解鎖system用戶。

SQL> alter user system account unlock;

User altered.

SQL> select username,account_status from dba_users where username='SYSTEM';

USERNAME   ACCOUNT_STATUS
---------- --------------------------------
SYSTEM     OPEN

SQL>

 

 

參考來源:

1、忘記了oracle數據庫用戶的密碼,怎么辦?(來自百度百科)

2、Oracle 忘記用戶名和密碼的解決辦法(來自新浪博客)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM