EBS DBA指南笔记(一)
第一章? ORACLE APPLICATIONS 的組件與架構(gòu)
?
1.ebs組件的幾大構(gòu)成:客戶端,form server,web server,concurrent processor,數(shù)據(jù)庫。每個組件都可以分別在不同的節(jié)點跑。
?
2.幾大EBS組件為客戶提供服務(wù)的簡單流程:客戶通過瀏覽器(輸入地址)跳轉(zhuǎn)到用戶登錄界面(登錄界面由web server提供)--》用戶選擇一個職責(zé),進(jìn)一步選擇菜單(比如,用戶-》定義)? --》用戶開始工作。 (菜單選項會引導(dǎo)用戶跳轉(zhuǎn)到HTML,JAVASERVER PAGE(jsp page)或者是表單應(yīng)用。web server負(fù)責(zé)對HTML,java servlet提供服務(wù)。如果啟動了表單應(yīng)用,forms servlet或者form server將對其提供服務(wù)。整個過程可以在后臺數(shù)據(jù)庫獲得數(shù)據(jù)或執(zhí)行包。)
?
3.Admin Node: Administrative tasks executed on the Admin Node
?
4.概敘幾大組件
Client:為了運行ORACLE forms as java applets必須安裝ORACLE JInitiator plug-in
Web Node: 對于oracle applications來講,web server是oracle application server,它是基于APACHE技術(shù)的。我們通常稱之為iAS,AS,Oracle HTTP Server(OHS),Simply Apache。iAS也可以跑JServs來響應(yīng)JAVA的請求。iAS也可以配置成能跑Forms servlets,這樣它也可以響應(yīng)Forms sessions。
Forms Node:如果Forms servlets沒有配置成由iAS來處理,那么FORM SERVER將提供這樣的服務(wù)。
Concurrent Processing Node:并發(fā)處理是ebs的一個特色。EBS中會有很多請求,這些請求從類別上來說可以分oracle標(biāo)準(zhǔn)請求和自定義請求。從執(zhí)行周期來說可以分一次性請求,周期執(zhí)行請求。這些請求的調(diào)度由concurrent manager來進(jìn)行管理。
Admin Node: 用來執(zhí)行管理EBS的任務(wù),比如:生成表單,jar文件,布置patch,重新編譯彈性域。
Database Node:EBS的心臟,不多說了。
?
5.oracle application的架構(gòu)
簡單/基礎(chǔ)架構(gòu):在沒有大量事務(wù),和并發(fā)用戶下使用的架構(gòu)。所有的服務(wù)節(jié)點都運行在同一個物理服務(wù)器上。還有一種比較簡單的架構(gòu)叫兩層架構(gòu),一個節(jié)點跑應(yīng)用,另一個節(jié)點跑數(shù)據(jù)庫。多節(jié)點的架構(gòu)環(huán)境不需要特殊的配置和設(shè)計,除非多個節(jié)點跑同一個組件。傳統(tǒng)上來講,ORACLE建議并發(fā)處理節(jié)點和DB應(yīng)該在同一個節(jié)點,但是考慮到這兩個組件的快速網(wǎng)絡(luò)連接性,現(xiàn)在ORACLE建議并發(fā)處理節(jié)點應(yīng)該在應(yīng)用層。兩層結(jié)構(gòu)比較受推薦,單層結(jié)構(gòu)會導(dǎo)致應(yīng)用和數(shù)據(jù)庫進(jìn)程之間的競爭,從而導(dǎo)致性能下降。
復(fù)雜架構(gòu):同一組件由多個節(jié)點支持。多種服務(wù)由多個節(jié)點支持。這種結(jié)構(gòu)稱為復(fù)雜架構(gòu),節(jié)點的數(shù)量由事務(wù)數(shù)量和并發(fā)用戶數(shù)來決定。
復(fù)雜架構(gòu)的幾種形式:Load Blancing,Shared APPL_TOP or Application Tier Filesystem,Distributed APPL_TOP,Secure Sockets Layer (SSL) Encryption。
?
Load Blancing:這個術(shù)語是來描述在不同的節(jié)點提供相同功能的服務(wù),這些用戶和事務(wù)怎樣分布到這些節(jié)點的。當(dāng)多于一個節(jié)點提供相同的功能服務(wù)時我們把它叫做farm.比如說你有多個節(jié)點做web node,那么這些web node我們稱之為web farm。web node的load balancing實現(xiàn)可以通過雇傭?qū)iT的load balancing硬件或者DNS load balancing來實現(xiàn)。如果實施多個forms nodes,那么要設(shè)置一個primary web node用來指向其它的forms nodes。forms的原始服務(wù)運行在primary web node并為發(fā)送請求到多個forms nodes提供load balancer的服務(wù)。Parallel Concurrent Processing的load balancing由internal concurrent manager來控制,共享文件系統(tǒng)也必須實現(xiàn)。(主要用來存放并發(fā)管理器產(chǎn)生的共享log,output file) oracle rac是DB的load balancing。
?
Shared APPL_TOP or Application Tier Filesystem: APPL_TOP,COMMON_TOP都放在共享存儲上。這樣就減小了停機維護(hù)時間。
?
Distributed APPL_TOP: 你可以定義一個或多個服務(wù)節(jié)點作為admin node,管理任務(wù)將分布在多個節(jié)點多個人工上完成,這樣就加速了管理任務(wù)的完成。比如布置patche,patche session將跨越多個人工多個節(jié)點。
?
Secure Sockets Layer Encryption:主要是對比較敏感的數(shù)據(jù)(比如信用卡數(shù)據(jù))在進(jìn)行網(wǎng)絡(luò)傳輸?shù)臅r候進(jìn)行加密。
?
5.EBS架構(gòu)的最佳實踐
如果考慮實施多節(jié)點的load balancing可以考慮用較便宜的intel架構(gòu)的服務(wù)器然后安裝linux。
oracle web cache的實施可以提高EBS的性能。
?
?
第二章 配置
?
1.60%的問題源于oracle application的配置,EBS DBA應(yīng)該對配置熟悉。
?
2.關(guān)于配置的幾個部分:
application context file: 這個文件涵蓋了整個EBS的配置信息.
using AD configuration: 這是一個配置管理工具,可以自動配置應(yīng)用和DB層.
web node configuration: 介紹關(guān)于web節(jié)點的幾個重要配置文件.
forms node configuration: 介紹幾個關(guān)于form server的幾個重要配置文件
concurrent processing node configuration:
admin node configuration:
addtional service components:
database node configuration:
additional configuration topics
?
3.各配置部分的細(xì)節(jié):
application context file:
oracle ebs有個全局的配置文件我們稱之為:application context file 或者 application XML file。它位于$APPL_TOP/admin 下一般命名為:$SID.xml $SID_[HOSTNAME].xml? 如果這個文件不存在我們也可以手工創(chuàng)建:$./$AD_TOP/bin/adbldxml.sh
修改這個文件的方法:
a editcontext? 比較麻煩,需要運行X模擬軟件,不好定位屬性文件。
用法:export DISPLAY=MYCLIENT:0.0? -> cd $COMMON_TOP/util/editcontext? ->./editcontext
b OAM;
c 標(biāo)準(zhǔn)的文本編輯器。我常用的一種方法,修改前最好做備份。
?
創(chuàng)建端口號:創(chuàng)建之前看看系統(tǒng)有沒有使用這個端口號,用netstat實現(xiàn):netstat -a|grep 8000
用context parameters驗證節(jié)點類型。驗證的目的是供AD UTILITIES使用這些參數(shù)執(zhí)行創(chuàng)建控制腳本或維護(hù)必要的文件從而提供服務(wù)支持。
?
AD configuration:
修改了context文件必須跑autocfg,這樣才能使配置生效。跑autocfg前所有的應(yīng)用進(jìn)程都必須關(guān)閉。跑autocfg的腳本有兩種:11.5.10以前用$AD_TOP/bin/adconfig.sh 從11.5.10開始引進(jìn)$COMMON_TOP/admin/scripts/$CONTEXT_NAME/adautocfg.sh。兩者的用法有點區(qū)別,前者需要contextfile和apps passwd,后者只需要apps passwd。舉例如下:
$ ./$AD_TOP/bin/adconfig.sh \
contextfile=$APPLTOP/admin/$CONTEXT_NAME.xml \
appspass=password
?
$ ./$COMMON_TOP/admin/scripts/$CONTEXT_NAME/adautocfg.sh
如果你手工修改了某些配置文件那么相應(yīng)contextfile里的內(nèi)容也需要同步,否則下次autocfg的時候你原來手工改的配置就被覆蓋了。
adconfig.sh的日志路徑位于如下位置:應(yīng)用層:$APPL_TOP/admin/$CONTEXT_NAME/log/MMDDhhmm/adconfig.log
???????????????????????????????? 數(shù)據(jù)庫層:$ORACLE_HOME/appsutil/log/$CONTEXT_NAME/MMDDhhmm/adconfig.log
--MM是月,DD是日,mm是分鐘,
運行adconfig.sh后我們還可查看有哪些配置發(fā)生了改變,通過執(zhí)行adchkcfg.sh可以獲得一個HMTL格式的報告,這個腳本位于以下目錄:
$AD_TOP/bin. cfgcheck.html位于以下目錄:$APPL_TOP/admin/$CONTEXT_NAME/out/MMDDhhmm(應(yīng)用層)
?????????????????????????????????????? $ORACLE_HOME/appsutil/log/$CONTEXT_NAME/out/MMDDhhmm(數(shù)據(jù)庫層)
當(dāng)我們自動執(zhí)行adconfig.sh的時候會自動產(chǎn)生備份文件,備份文件位于下列位置:
$APPL_TOP/admin/$CONTEXT_NAME/out/MMDDhhmm(應(yīng)用層)
$ORACLE_HOME/appsutil/log/$CONTEXT_NAME/out/MMDDhhmm(數(shù)據(jù)庫層)
如果你想恢復(fù)執(zhí)行adconfig.sh時產(chǎn)生的備份文件,可以執(zhí)行restore.sh這個腳本,腳本路徑為:
$APPL_TOP/admin/$CONTEXT_NAME/out/MMDDhhmm/restore.sh(應(yīng)用層)
$ORACLE_HOME/appsutil/out/$CONTEXT_NAME/MMDDhhmm(數(shù)據(jù)庫層)
客制化配置文件:有時侯我們需要添加一些客制化參數(shù)和環(huán)境變量到配置文件,如果在跑完autocfg后我們還想保留這些配置,有兩種方法可以實現(xiàn):
a 添加客制化標(biāo)記或模板文件:
Here is an example of using customizations by editing the adovars.env
application configuration file:
# Begin customizations
# The SCRIPT_TOP environment variable is used for ease of navigation
# to the startup and shutdown scripts of the application
SCRIPT_TOP=/vis/applcomn/admin/scripts/VIS
export SCRIPT_TOP
# End customizations
通過添加# Begin customizations,# End customizations我們可以保留客制化的配置。
另外后續(xù)版本的autoconfig可以在客制化的節(jié)點上利用adcustomizer.sh腳本來使AD utility 保留客制化配置。
b 利用OAM添加:site map -》administration -》autoconfig -》manage custom parameters
?
web node configuration:
關(guān)于WEB主要配置文件的路徑主要在兩個地方:$APACHE_ORACLE_HOME/Apache/Apache/conf??? $APACHE_ORACLE_HOME/Apache/Jserv/etc
有些文檔會用這個路徑:$APACHE_TOP
apache的配置文件主要是關(guān)于端口定義,內(nèi)存設(shè)置,日志級別,日志文件路徑等一些其它配置信息。當(dāng)web服務(wù)啟動的時候會生成一個http.pid文件,這個文件的路徑由httpd.conf文件的PidFile參數(shù)指定。
httpd.conf比較重要的幾個參數(shù):
MinSpareServers:空閑進(jìn)程的最小數(shù)
MaxSpareServers:允許的最大空閑進(jìn)程數(shù)
Port
ServerName
LogLevel
MaxClients:并發(fā)客戶端請求的最大數(shù)
在apache的配置文件里還有個文件值的注意,它叫wdbsvr.app。它記錄了APPS的密碼。該文件的路徑為:$APACHE_ORACLE_HOME/Apache/modplsql/cfg
$APACHE_ORACLE_HOME/Apache/Jserv/etc的幾個重要的配置文件如下:
jserv.conf,jserv.properties,zone.properties
注意zone.properties文件的session.timeout屬性必須更應(yīng)用的ICX:Session Timeout一樣。一般建議這個值不應(yīng)該超過30MIN,大于這個值將會導(dǎo)致JVM堆內(nèi)存的問題。
?
forms node configuration: 兩個重要的配置文件:$COMMON_TOP/html/bin/appsweb_$CONTEXT_NAME.cfg; $APPL_TOP/$CONTEXT_NAME.env
Forms Metric Server and Forms Metric Client是實現(xiàn)FROMS的load balancing需要的。Metric Client可以定義在多個節(jié)點也可以跟 Metric Server 在同一個節(jié)點。
我們要定義一個web node是primary forms Metric Server 。實現(xiàn)forms load balancing的其它方法需要web nodes定義成支持forms nodes
?
concurrent processing node configuration:基本的配置文件:$APPL_TOP/$CONTEXT_NAME.env 其中關(guān)鍵的參數(shù):APPLCSF:描述并發(fā)管理器的log和output的路徑。
FNDFS的作用:它是一個文本閱讀器,用來查看并發(fā)管理器的log和outfile。當(dāng)用戶有查看log文件的需求時,FNDFS啟動FNDFS程序利用應(yīng)用層的監(jiān)聽($ORACLE_HOME/network/admin)器來處理用戶請求。FNDFS的監(jiān)聽器在$ORACLE_HOME/network/admin/listener.ora下進(jìn)行配置。FNDFS的連接屬性在$ORACLE_HOME/network/admin/tnsnames.ora文件配置。
?
admin node configuration:應(yīng)用的環(huán)境配置文件有:adovars.env,APPLSYS.env,$CONTEXT_NAME.env? 所有的應(yīng)用TOP都定義在應(yīng)用的環(huán)境變量文件里,比如AD_TOP。
管理identify.obj文件:這個文件在應(yīng)用用戶的$HOME目錄下。(11.10.5.2這個版本我沒發(fā)現(xiàn))如果這個文件出現(xiàn)問題,應(yīng)用在打PATCH的時候重新生成JAR文件將失敗或者在應(yīng)用的底部會出現(xiàn)一個黃色警告工具條。這個文件可以用adjkey命令重新生成:
$adjkey -initialize
管理數(shù)據(jù)庫連接文件(DBC):這個文件位于$FND_TOP/secure/<host>_<context_name>.dbc? 這個文件的作用是用來應(yīng)用連接數(shù)據(jù)庫的。
Generic Service Management(GSM):EBS11i版本(11.5.7及以后)里引進(jìn)了GSM,用來管理中間層服務(wù)(比如http servers,forms listeners,workflow mailer及其它。這些服務(wù)在引入GSM前是手工由DBA進(jìn)行管理的。),且這個服務(wù)是必需的。它跟ICM進(jìn)行通訊,ICM是內(nèi)部并發(fā)管理器,它控制著必需的服務(wù),當(dāng)服務(wù)發(fā)生錯誤時它會自動去重啟這些服務(wù)。我們可以通過OAM來管理這些服務(wù)。GSM最常見的就是配置錯誤,如FNDSM 監(jiān)聽器(主要作用:GSM連接應(yīng)用)
其它的服務(wù)組件:Thin Client Framework(TCF)它是個服務(wù)端進(jìn)程,用JDBC瘦驅(qū)動管理應(yīng)用的層次連接,比如對象瀏覽器。我們可以在context file找到有關(guān)它的屬性,比如以s_tcf..開頭的。我們可以使用以下連接來檢測這個服務(wù)的有效性:http://erptest.nj.chervon.com:8020/oa_servlets/oracle.apps.fnd.tcf.SocketServer
discoverer server:它是一個圖形工具,主要用來對應(yīng)用的數(shù)據(jù)做一些特別的查詢。具體的使用信息可以參考MetaLink Note 313418.1 contextfile中以s_disco..開頭的屬性。
Fulfillment Server:JTF是構(gòu)建CRM中HTML應(yīng)用的重要技術(shù)基礎(chǔ)架構(gòu)。EBS中也包括安裝JTF Fulfillment server。在contextfile中以s_jtff開頭的屬性。
?
數(shù)據(jù)庫節(jié)點的配置:這一部分內(nèi)容對純DBA來講比較簡單,我會一帶而過。DB的初始化參數(shù)比較重要,對與EBS系統(tǒng)來說,有些參數(shù)是推薦甚至是強制性的,metalink上有個詳細(xì)的列表。MetaLink Note 216205.1 MetaLink Note 248857.1.
查詢DB初始化參數(shù)除了查詢v$parameter ,show parameter 外還可以運行bd_chk_cbo.sql腳本。具體怎么使用可以參考MetaLink Note 174605.1。 db的網(wǎng)絡(luò)配置可以在應(yīng)用端的$TNS_ADMIN這個變量路徑中找到。檢查oracle的網(wǎng)絡(luò)連通性可以用tnsping命令。OATM(oracle applications tablespace model)為了簡化對應(yīng)用數(shù)據(jù)庫的管理,oracle引進(jìn)了OATM,它減少了表空間的數(shù)目,節(jié)省空間,易于管理。9.2.0.4及以后的oracle版本才可以使用OATM。以下是EBS中的一些表空間:
APPS_TS_TX_DATA Contains transactional data
APPS_TS_TX_IDX Contains indexes for transactional tables
APPS_TS_SEED Contains reference and setup data and indexes
APPS_TS_INTERFACE Contains interface and temporary data and indexes
APPS_TS_SUMMARY Contains summary objects, such as materialized views
APPS_TS_NOLOGGING Contains materialized views not used for summary management
APPS_TS_QUEUES Contains Advanced Queuing dependent tables and indexes
APPS_TS_MEDIA Contains multimedia objects, such as video, sound, and spatial data
APPS_TS_ARCHIVE Contains purge-related objects
UNDO The Automatic Undo Management tablespace
TEMP The temporary tablespace, used for sorting and temporary tables
SYSTEM The system tablespace
創(chuàng)建客制化的數(shù)據(jù)庫對象時建議單獨建一個schema,這些對象都在這個schema之下,這個schema有自己的數(shù)據(jù)、索引表空間。這些對象與EBS的標(biāo)準(zhǔn)對象分離。
?
4.關(guān)于額外配置的一些主題
除了以上講到的一些配置,EBS中還有一些混雜的配置。這一節(jié)將會介紹以下主題:Using the configuration wizards from OAM ;Using OAM to review licensed products and license new products;Configuring password security at the application and database level
?
Using the configuration wizards from OAM :Navigate to the Site Map menu and select Administration -> AutoConfig -> Configuration Wizards 這個路徑可以知道你配置比如loadbanlance,ssl這類的東西。
license管理器:可以查看已經(jīng)注冊的產(chǎn)品或想注冊新的產(chǎn)品。具體路徑如下:
Site Map ?License Manager ?License ?Products ? License Applications Product
Site Map ?License Manager ?License ?Reports ? Licensed Products
?
Configuring password security at the application and database level:應(yīng)用層密碼的驗證:可以以系統(tǒng)管理員的身份進(jìn)入系統(tǒng)界面然后修改profile(系統(tǒng)級)屬性以Signon開頭。數(shù)據(jù)庫層的密碼驗證:可以創(chuàng)建一個密碼驗證函數(shù),一旦定義可以分配給數(shù)據(jù)庫配置文件,然后再分配給用戶。
?
其它的contextfile比較重要的配置:
s_contextname Context name used by system
s_dbSid Database SID name
s_jinit_ver_dot Version information for JInitiator
s_jdk_top Home directory for Java Development Kit
s_adperlprg Location of Perl program
?
oraInst.loc和oratab的配置:這兩個文件位于/etc或/var/opt這根據(jù)你特定的UNIX來決定。對于oraInst.loc來說Oracle Universal Install和AD CLONE都會用它來定位oracle安裝的路徑。如果在單個物理服務(wù)器上存在多個實例,我們應(yīng)該確保這個文件含有正確的各實例信息。oratab這個文件在app,db節(jié)點都會存在,app節(jié)點不含有實例名,只有$ORACLE_HOME。這個文件有時候會被oracle智能代理使用。oracle啟動和關(guān)閉腳本有時也會用到它。當(dāng)我們的EBS系統(tǒng)clone或upgrades后會在這個文件寫上一些條目,我們應(yīng)該定期的去清楚這些無用的條目。
?
5.配置的最佳實踐:我們在改變系統(tǒng)配置的時候最好創(chuàng)建一個文檔來記錄這些改變。
?
轉(zhuǎn)載于:https://www.cnblogs.com/wanghang/p/6299282.html
總結(jié)
以上是生活随笔為你收集整理的EBS DBA指南笔记(一)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: robotframework基础学习(8
- 下一篇: jQuery核心