oracle命令---oradim

dawn009發表於2014-05-04

oracle命令---oradim

 
 今天我學會了使用oradim 命令的使用,謝謝張丹梅....
ORADIM: [options]。  請參閱手冊。
請輸入以下命令之一:
  透過指定以下引數建立例程:
    -NEW -SID sid | -SRVC service [-INTPWD password] [-MAXUSERS number] [-STARTM
ODE a|m] [-PFILE file] [-TIMEOUT secs]
  透過指定以下引數編輯例程:
 -EDIT -SID sid [-NEWSID sid] [-INTPWD passwd] [-STARTMODE a|m] [-PFILE file] [-
SHUTMODE a|i|n] [-SHUTTYPE srvc|inst]
  透過指定以下引數刪除例程:
    -DELETE -SID sid | -SRVC service name
  透過指定以下引數啟動服務和例程:
    -STARTUP -SID sid [-USRPWD password] [-STARTTYPE srvc|inst|srvc,inst] [-PFIL
E filename]
  透過指定以下引數關閉服務和例程:
    -SHUTDOWN -SID sid [-USRPWD password] [-SHUTTYPE srvc|inst|srvc,inst] [-SHUT
MODE a | i | n]
  透過指定以下引數查詢幫助: -? | -h | -help
您為 -NEW 命令輸入了無效的選項
 
主要引數說明:
 
-SID sid        
指定要啟動的例項名稱
 
-SRVC 服務        
指定要啟動的服務名稱
 
-USRPWD 口令        
指定內部使用者的口令,如果作為 NT管理員登入,不用此引數
 
-PFILE 檔名        
為例項指明初始化引數檔案,如果引數檔案在 Oracle的預設位置,則不需要此命令
 
例如在windows上建一例程:
C:\Documents and Settings\User>oradim -new -sid cjh -srvc OracleServicecjh
 
-STARTMODE:
oradim -edit -sid biti -startmode a :使用這個命令,可以改 OracleServiceBITI 服務啟動型別為自動,並且把登錄檔中的 ORA_BITI_AUTOSTART 改為 true ;如果 -startmode 後面的引數寫 m ,則把服務改成手動,並且把登錄檔中的 ORA_BITI_AUTOSTART 改為false 。但是在服務中改啟動型別和在登錄檔中改值,不會互相影響,但是以登錄檔中的設定為準。
 
-STARTTYPE:
oradim -startup -sid biti -starttype srvc :使用這個命令,只啟動 OracleServiceBITI 服務而不啟動例程;如果 -starttype 後面的引數寫 srvc,inst ,則啟動服務和例程;如果 -starttype 後面的引數寫 inst ,則只啟動例程,如果服務還沒有啟動會報錯 ORA-12560: TNS:protocol adapter error。
 
-SHUTTYPE:
跟上面的 -STARTTYPE 類似
 
-SHUTMODE
表示終止例項所使用的關閉模式,a | i | n 分別為 abort | immediate | normal
 

登錄檔裡的主要引數說明:
 
-ORA_BITI_AUTOSTART
為 true 時,表示當 OracleServiceBITI 服務啟動型別為自動,且服務啟動時,例程也啟動。
 
-ORA_BITI_SHUTDOWN
跟 ORA_BITI_AUTOSTART 類似。
 
-ORACLE_SID
這裡為 biti ,這個是當前預設的資料庫。如果在 cmd 下 set ORACLE_SID=newsid 或者在 sqlplus 裡面 startup pfile=newdec ,則以當前設定的為準,否則找登錄檔中的 ORACLE_SID 。當前的設定值對當前 cmd window 有效。
 
 
===========================================
 
在Windows系統中有些時候,Oracle的資料庫會無法自動啟動成功,但是手動啟動卻是可以的,在這種情況下我們可以嘗試重新建立Oracle服務來看看問題是否能夠解決。

重建Oracle服務可以利用Oracle在Windows作業系統下特有的oradim使用程式。


資料庫的SID可以透過下面的方法知道:


檢查windows的服務,找到類似於OracleServiceXXXX的服務名稱,其中的XXXX部分就是資料庫的SID,比如如果資料庫的SID是test,那麼服務名稱就是OracleServiceTEST。


假設我們的Oracle例項名稱是test,使用的引數檔案是c:oracleadmin estinittest.ora


那麼我們執行下面的命令:


oradim -EDIT -SID test -PFILE c:oracleadmin estinittest.ora -STARTMODE auto -SRVCSTART system


然後重新啟動服務,看看Oracle資料庫是否可以自動啟動

 

===============================

使用oradim恢復windows上的資料庫

 

很多朋友都問過這樣的問題:
在Windows上如果系統崩潰了,資料檔案、控制檔案、日誌檔案等都還在,怎樣來恢復Oracle資料庫?

前幾天重新安裝了系統,正好需要恢復一下資料庫。
如果軟體也損失了,那麼需要重新安裝一下資料庫軟體,以恢復Windows相關環境變數等資訊。

很多人抱怨我的新書很少關於Windows的內容,實際上,Windows和Linux/Unix上的操作沒有什麼不同,Windows本身就是一個仿Unix的系統。
那麼好吧,我還是用一個系列的文章介紹一下我所使用的Windows系統,以及我所認為的資料庫系統無關性。

大家可以跟隨我看一下這樣一個過程。
首先開啟一個cmd命令列視窗。
開始->執行->cmd

我的Oracle軟體安裝在D:\oracle :

D:\>dir oracle
 驅動器 D 中的卷是 PRIVAT
 卷的序列號是 94B0-FD3B

 D:\oracle 的目錄

2006-08-16  14:14    

          .
2006-08-16  14:14              ..
2006-08-16  14:14              ora10gR2
               0 個檔案              0 位元組
               3 個目錄    941,744,128 可用位元組

 我的資料檔案位於D:\oradata下:

D:\>dir d:\oradata
 驅動器 D 中的卷是 PRIVAT
 卷的序列號是 94B0-FD3B

 d:\oradata 的目錄

2006-08-16  14:25    

          .
2006-08-16  14:25              ..
2005-09-12  16:40              flash_recovery_area
2005-09-12  16:40              EYGLE
               0 個檔案              0 位元組
               4 個目錄    941,744,128 可用位元組

 現在讓我們用oradim建立一個例項,實際上也就是建立一個Windows服務:

C:\>oradim -new -sid eygle
例項已建立。

 我們用net命令可以檢視系統啟動了哪些服務,我們看到Oracle的服務已經啟動:

C:\>net start
已經啟動以下 Windows 服務:

...............
   O&O Defrag
   OracleServiceeygle
   Plug and Play
   Print Spooler
...............

命令成功完成。

 如果你的系統裝了一些Unix增強工具,那麼可以透過grep過濾一下:

C:\>net start |grep Oracle
   OracleServiceeygle

Unix命令工具可以在Sourceforge () 下載.

 此時我們就可以透過啟動例項,掛接原有資料庫,啟動Oracle資料庫了。當然你可能還有一些其他工作需要完成,比如重建口令檔案等。

如果你想刪除這個服務,那麼也很簡單:

C:\>oradim -delete -sid eygle
例項已刪除。

當然做好備份仍然是最重要的,我見過有的企業將檔案分散在很多邏輯分割槽上,結果隨系統崩潰丟失了部分檔案,損失也是相當慘重的。

在Linux/Unix上不需要服務來啟動例項,也就不存在這樣類似的操作。不過在命令列操作,一切都是類似的。

系列文章參考:

=================================================================

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29119536/viewspace-1153226/,如需轉載,請註明出處,否則將追究法律責任。

相關文章