10g,11g中資料庫靜默安裝中的細小差別

jeanron100發表於2015-10-11
資料庫軟體的安裝根據工作需要主要有以下幾種方式,使用oui是普遍的圖形介面方式,還有兩種是不依賴圖形介面的,一種為靜默安裝,另外一種為克隆安裝。
靜默安裝的時候核心就在於響應檔案,在安裝目錄database/response下提供了幾個響應檔案,是oracle提供的模板。
比如安裝資料庫軟體的模板db_install.rsp,dbca的模板dbca.rsp,配置監聽的netca.rsp
[ora11g@oel1 response]$ ll
total 76
-rw-rw-r-- 1 ora11g dba 44969 Feb 14  2009 dbca.rsp
-rw-rw-r-- 1 ora11g dba 22663 Oct 11 16:02 db_install.rsp
-rwxrwxr-x 1 ora11g dba  5740 Feb 26  2009 netca.rsp
對這個檔案略作修改,然後開始嘗試靜默安裝11g的資料庫軟體,從我接觸的情況來看,靜默安裝失敗主要有幾個原因,一個是直接用root使用者操作有潛在的許可權問題,一個是一些必須的安裝包,還有的是因為命令的選項不對。
對於這些錯誤我都瞭然於心,所以很自然的用到了下面的命令,但是在10g裡面沒有問題的命令在11g卻丟擲了下面的錯誤。
[ora11g@oel1 database]$ ./runInstaller -silent -responsefile /u02/install/11g_install/database/response/db_install.rsp -ignoreSysPrereqs 
Starting Oracle Universal Installer...
Checking Temp space: must be greater than 80 MB.   Actual 3590 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 1994 MB    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2015-10-11_04-04-39PM. Please wait ...[ora11g@oel1 database]$ [INS-10103] Response file is not specified for this session.
Usage: 
runInstaller  [-options] [(<CommandLineVariable=Value>)*]
Where options include:
  -clusterware oracle.crs,<crs version>  
        Version of Cluster ready services installed.
  -crsLocation <Path>  
        Used only for cluster installs, specifies the path to the crs home location. Specifying this overrides CRS information obtained from central inventory.

  -invPtrLoc <full path of oraInst.loc>  
        Unix only. To point to a different inventory location. The orainst.loc file contains:
inventory_loc=<location of central inventory>
inst_group=<> 

根據提示資訊是響應檔案沒有定義,然後給我列出了一些命令使用的幫助,對於此也著實花了一些時間去分析去排除。
首先是檔案的許可權,但是複製到一個很簡單的目錄下,許可權都是正常讀寫,還是有這個錯誤。
自己都在懷疑是不是命令列中存在特殊字元導致的,但是把命令貼上到文字中,手工逐個輸入也還是同樣的錯誤。
最後帶著疑惑去網上檢視,但是網上也沒有相關的答案。
看來還是得靠自己了,於是我靜下心來自己看看錯誤,首先這個命令的錯誤資訊提示為: [INS-10103] Response file is not specified for this session.
那麼是否是命令的格式定義不對呢,應該為-responsefile=/u02/install/11g_install/database/response/db_install.rsp?
檢視提示的幫助內容,格式是沒有問題的。
  -responseFile <Path>  
        Specifies the response file and path to use.
但是反覆比較發現還是因為一個大小寫的F導致的,在11g裡面這個引數為responseFile而不是10g裡面的responsefile了。
明白了這點之後再次嘗試,就非常順利了。可以看到後臺有一個程式在/tmp下忙碌著。
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND               
10229 ora11g    17   0  369m  77m  25m S  7.9  5.6   0:48.01 /tmp/OraInstall2015-10
短暫的等待之後,就會看到日誌最後輸出下面的內容
INFO: Successfully executed the flow in SILENT mode
INFO: Finding the most appropriate exit status for the current application
INFO: Exit Status is -3
INFO: Shutdown Oracle Database 11g Release 2 Installer
標誌著靜默安裝已經結束。
這是一個很細小的例子,最開始發現的時候讓人還是有些鬱悶的,感覺就跟沒有打招呼就修改了的感覺。可能是不同的team所做的參與的10g,11g這部分的工作,可能是認為responsefile不夠清晰,
命名不夠規範等等原因修改來了,同時這也算是一個小驚喜,自己透過這個例子還是發現很簡單的一個地方,10g,11g都會有一些細小的差別,自己已經中招多次了,直接用10g的一些思路或者指令碼在
11g碰到了一些問題,自己繼續總結,把這些不同之處都扒一扒,也減少大家在使用中的一些困擾。

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

相關文章