乍看這標題會很納悶。的確,尤其以 adpatch 指令做 AutoPatch 時,被問到下列 prompt 出來的問題,還會猶豫一下: You are about to use or modify Oracle Applications product tables in your ORACLE database 'PROD' using ORACLE executables in '/u01/apps/PROD/apps/tech_st/10.1.2'. Is this the correct database [Yes] ? 對於剛開始懵懂無知的人或許只要按下 return 鍵,心理就暗自祈禱。但,事實上比較仔細的人在以 adstpall.sh 指令 shutdown EBS AP 時,在起始要關閉 Forms server 當下有段 log 顯示:**************************************************** You are running adformsrvctl.sh version 120.15.12010000.3 Stopping FORMS Server (Socket Mode) ... Forms Server stopped... adformsrvctl.sh: exiting with status 0 adformsrvctl.sh: check the logfile /u01/apps/PROD/inst/apps/PROD_tw-srv/logs/ora/10.1.2/forms/socket.log for more information ... .end std out. .end err out. ****************************************************
看到這行 /u01/apps/PROD/inst/apps/PROD_tw-srv/logs/ora/10.1.2/forms/socket.log ,我們更加篤定我們的 Instance 使用的是 10.1.2 這 ORACLE_HOME,而非 10.1.3 的 ORACLE_HOME。 事實上在更稍早時,我們應該很確定此 Instance 使用 ORACLE_HOME 的版本。例如: 我們規劃 client 端的 Form 以 socket 方式與 Forms Server 連結,這就注定 Instance 的 ORACLE_HOME 的版本。 若 Client 端以 servlet 方式,則 ORACLE_HOME 使用 10.1.3 版本。這 2 個版本之間的差異,先窺其目錄結構大致上可知道:[mgr@tw-srv 10.1.2]$ pwd /u01/apps/PROD/inst/apps/PROD_tw-srv/ora/10.1.2 [mgr@tw-srv 10.1.2]$ ls -l total 20 drwxr-xr-x 2 mgr mgr 4096 Apr 4 2014 bin drwxr-xr-x 3 mgr mgr 4096 Apr 4 2014 forms drwxr-xr-x 3 mgr mgr 4096 Apr 4 2014 network -rw-r--r-- 1 mgr mgr 3140 Oct 24 00:11 PROD_tw-srv.env drwxr-xr-x 3 mgr mgr 4096 Apr 4 2014 reports [mgr@tw-srv 10.1.3]$ pwd /u01/apps/PROD/inst/apps/PROD_tw-srv/ora/10.1.3 [mgr@tw-srv 10.1.3]$ ls -l total 36 drwxr-xr-x 3 mgr mgr 4096 Apr 4 2014 Apache drwxr-xr-x 2 mgr mgr 4096 Apr 4 2014 cfgtoollogs drwxr-xr-x 2 mgr mgr 4096 Apr 4 2014 config drwxr-xr-x 2 mgr mgr 4096 Apr 4 2014 deconfig drwxr-xr-x 6 mgr mgr 4096 Apr 5 2014 j2ee drwxr-xr-x 3 mgr mgr 4096 Apr 4 2014 javacache drwxr-xr-x 3 mgr mgr 4096 Apr 4 2014 network drwxr-xr-x 5 mgr mgr 4096 Apr 4 2014 opmn -rw-r--r-- 1 mgr mgr 3240 Oct 24 00:11 PROD_tw-srv.env
若 Instance 的 ORACLE_HOME 採用 10.1.2 (Oracle Tools Home),這是早期 client / server 彼此做 communication 的版本,屬於舊的版本,而 10.1.3 (Oracle OC4J Home) 則採用 Apache / J2EE 等技術,屬於後期開發,而被採用作為 Oracle Fusion 的 Middleware 技術。前者老而穩定,而後者新,需上 patch。Instance 選用不同的 ORACLE_HOME 版本,對後續 Oracle EBS 的管理維護影響很大! 參考: 1. http://blog.csdn.net/cai_xingyun/article/details/40394497
“Those who are in love with practice without knowledge are like the sailor who gets into a ship without rudder or compass and who never can be certain [where] he is going. Practice must always be founded on sound theory.” by Leonardo da Vinci
2014年10月31日 星期五
【Oracle 筆記 】Oracle EBS: 你的 Instance 是用那一個 ORACLE_HOME?
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言