問題:數據庫服務器重啓引發的ORA-01172,而且不知道oracle數據庫管理員的帳號密碼sql
首先先解決管理員的帳號問題,數據庫
1 查看sqlnet.ora文件,設置SQLNET.AUTHENTICATION_SERVICES= (NTS)服務器
2 用操做系統用戶登陸,查看用戶組能夠確認爲administrator(此步驟通常不須要)oracle
3 檢查環境變量app
修改前環境變量以下:spa
C:\app\Administrator\product\11.2.0\client_1;C:\app\Administrator\product\11.2.0\client_1\bin;G:\oracle\product\10.2.0\db_1\bin;。。。。操作系統
修改後blog
G:\oracle\product\10.2.0\db_1\bin;C:\app\Administrator\product\11.2.0\client_1;C:\app\Administrator\product\11.2.0\client_1\bin;。。。cmd
接下來開始搞數據庫了,">"表明我輸入的命令登錄
打開cmd命令
由於服務器數據庫較多,因此先設置oralce_sid
>set oracle_sid=orcl
>sqlplus /nolog
>conn / as sysdba
若是帳號沒問題,如今應該鏈接上了
>alter database open;
出現01172問題
>recover datafile 3;
恢復文件3,出現會話錯誤,沒有恢復成功
>select file#,name from v$datafile where file#=3;
發現文件3是SYSAUX01.DBF,不是應用數據,因此將sysaux01.dbf數據文件offline,先將數據庫open,而後將數據進行邏輯備份,重建數據庫,將數據恢復。
下圖命令只有「先將數據庫open」這步,到了這步就能夠用客戶端鏈接數據庫了,後面的備份重建就能夠經過客戶端完成了