分享
 
 
 

從DBA到Oracle Applications DBA的轉變過程

王朝oracle·作者佚名  2008-08-06
窄屏简体版  字體: |||超大  

這篇論壇文章(賽迪網技術社區)講述了如何從一個普通的Oracle DBA轉變為一個Oracle applications DBA(Oracle應用程序數據庫管理員),接著講述一些Oracle應用軟件架構方面的內容 。

從一個「普通」的Oracle DBA(Oracle數據庫管理員)轉變為Oracle Applications DBA(Oracle應用程序數據庫管理員),有兩個內容你必須去弄清楚。第一個內容是如何成為一個Oracle Applications DBA(Oracle應用程序數據庫管理員)。第二個內容是你要搞清楚Oracle應用程序背後的架構體系,也就是說你要明白諸如以下產品的結構體系:Oracle電子商務套件、Oracle 11i數據庫、Siebel產品等。

如何成為Oracle應用程序數據庫管理員

首先是角色的轉變

Oracle Applications DBA(Oracle應用程序數據庫管理員)對「普通」的Oracle DBA(Oracle數據庫管理員)來說是一個很大的挑戰。拿Oracle EBS DBA(Oracle 電子商務套件DBA)來說,不僅需要了解EBS的各個組件、服務,而且還要更主動和其他相關人員接觸。 一個Oracle Applications DBA(Oracle應用程序數據庫管理員)不僅需要和其他DBA一樣去負責managing、 sizing、maintaining和 tuning database這些日常的數據庫管理的工作,如果他的Apps database是OLTP系統的話,他還需要監察wait和lock 。Oracle E-Business Suite還有一些特性需要DBA去完成,比如從外部資源裏灌數據到Apps database裏,或支持開發人員從已有數據中提取數據。

接著工作內容的轉變

作為一個Oracle Applications DBA(Oracle應用程序數據庫管理員),要想更好的對Oracle Application database做支持,需要仔細記住以下幾項。

1.網絡上沒有什麽比較容易簡單的文檔讓你去熟悉Apps DBA,所以我建議去看幫助。

2.在你沒有經過多次測試並且得到客戶認可的時候不要去打補丁,並且你要確信這個補丁解決了現有的問題,而且沒有帶來其它新的問題。

3.記住Oracle Applications會有很多索引,定期rebuild index會對性能有好處,當然做這項工作應該在系統的空閑時間。

4.不要為了提高性能而在沒有詢問oracle Support前試著去增加額外的indexes。如果你一定要去做,那千萬記住要有文檔作記錄,因為在這之後你再打patch的時候它可能會把你做的修改自動復原。

5. 知道怎麽樣是正確的打patch,先計劃打哪個patch,然後取得patch,接著打patch,測試,最後文檔記錄。

6. 要知道任何時刻數據庫都可能會有一些object 是invalid的,你的一些操作也會增加invalid objects,定期檢查這些invalid objects的數量,然後定期用utlrp去重新編譯,utlrp.squ在ORACLE HOME的rdbms/admin下,需要用SYS運行。在你的DB運行過程中如果碰到錯誤,就可以先重新編譯invalid objects,如果沒有解決問題再去遞交iTAR(Internet created Technical Assistance Request).

7.能看懂日誌。

8.了解Apps database的環境,包括操作系統和DB的,當你對你的工作環境了如指掌後,一切也就變得容易了,那時,你就是一個悠閑的Apps DBA了。

另外,對於APPS DB(應用程序數據庫)來說,你可能需要創建或拷貝(克隆)多個生產庫以外的數據庫,比如測試和開發數據庫,當然,需要多少數據庫是由你的商業需求所決定的。開發環境數據庫是供開發人員進行report,PL/SQL等開發的,這個環境可以在開發人員覺得數據已經不再滿足開發需求的時候,當然也可以在這個環境測試補丁(patches)。當然最終使用patch的時候還需要在測試環境做測試,因為測試數據庫是和生產數據庫環境最接近的。(上面說的克隆cloning是一種將applications layer和database layer完全復制的一種方法。)所以,當你擁有這三個數據庫的時候,打patch的步驟是先development database再test database最後才在PRoduction database環境應用。

構架應用體系

如果你研究過Oracle Forms,使用過Application Server和Developer Suite來開發、配置部署form和report,並且曾經作為一名Oracle DBA,經歷過許多管理和維護的工作如patching和cloning的話,那麽你就已經能夠掌握了OA 90%的內容。Oracle Apps應該是這樣的應用軟件,高速度、低拖延的ERP應用軟件,使用Oracle所能提供的最好的web和數據庫組件。我說的對嗎?實際上不完全對,在11.5.9的版本裏,你能看到應用服務器最早期的一個版本,並且Oracle的版本還是8.0.6。

EBS環境最簡單配置也包括兩個服務器,這兩個服務器也就是我們熟知的兩層:數據庫層,和中間層,也叫應用層。數據庫層就如字面的意思,就是應用程序的後端數據庫。中間層就類似Application Server(應用程序服務器)。

中間層

在中間層,更確切的說運行在中間層上的還有幾種服務。所有的服務都不相同,有OC4J、report engine、form等。你能看到應用服務器(Application Server)存在於中間層,另外還有Oracle應用程序具體的服務器。總的來說,有六種服務器存在於中間層和應用層,它們是:

• Web 服務器

• Forms服務器

• Reports 服務器

• Discoverer服務器

• 並發處理服務器

• Admin服務器

至於Application Server,上面列舉的其它服務器和Application Server性質不同的就是並發處理服務器了。對於並發處理服務器,我們可以認為它是一個助手的角色,在EBS用戶請求和數據處理過程中協調作業和過程;另外,如現代的Application Server,上面列舉的服務並不是每個都必須在相同的服務器上。

我們可以類似的認為Oracle Apps配置就是對Forms 和 Reports 服務,以及後端數據庫的配置。在app server 和數據庫之間物理或者邏輯關系是什麽樣的?在Oracle應用程序世界裏,在中間層生成的文件能夠,有時是需要放到數據庫層。這些文件大多以文本文件的形式存在,包括配置信息。其他文件是與cloning相關的。

下面的圖標有助於說明每層的主要組成部分。該圖標來自Oracle Applications Concepts Release 11i的圖2-1。如下圖所示:

在中間層有許多的「父級」目錄。特別要提到其中的兩個,這個兩個在文檔中一次又一次的看到,它們就是APPL_TOP 和COMMON_TOP。

數據庫層

數據庫層又是什麽樣子了?令人驚奇的是,Oracle Apps數據庫文件格式或許令人難以置信,並不是由於它的復雜性,而恰恰是一點都不復雜。同樣在「父級」結構中,數據庫有四種數據,他們分別是數據、索引、系統和臨時表空間位置。你或許能看到所有的和數據庫文件相關的數據都放在一個路徑,或者分區裏,所有的索引也是在一個路徑下,同樣系統和臨時表空間也是如此。重做日誌能夠放在兩個位置。你或許看到上百的表空間都有一到兩個文件,你能看到四個表空間模型。

說到重做日誌和一般的重做操作,我們肯定知道的一件事情就是在真實的DBA世界裏,我們希望重做日誌存在快速磁盤中,由於寫入量的緣故。你曾經在磁盤中放置一個控制文件嗎?如果你沒有看到控制文件在事務等待過程中並行寫入,那麽看一看Oracle Apps安裝過程,情況就是這樣的。當前文檔聲稱或者說分配重做日誌緩衝區大小最好是1MB。Oracle在MetaLink上有一個註釋,推薦Oracle Apps DBA將重做日誌緩衝區設為10MB。

另外一個和一般數據庫不同的地方就是必須要設置初始參數。在初始文件中設置初始參數還不常見。

在使用Oracle Apps時,你不得不向你的OLTP或者DSS數據庫打補丁的時候,如何保證5個9的可靠性呢,5個9的可靠性意味著每年只有5分鐘的停機時間。好了,雖然說沒有這麽嚴格,但是仍舊有許多測試工作和質量保證工作需要完成。為了更好的服務於最終用戶,你還需要了解些Apps的結構,並且掌握專有名詞的含義,比如雖然你不需要掌握財務模塊是如何實現的,但是還是需要知道AR是借,AP是貸,GL是總帳,這樣你在遇到問題的時候就可能及時知道數據是怎麽來的,是那個模塊,該找什麽人去溝通。

你如何備份你的數據庫?在EBS中,數據庫備份時非常直接的,中間層組件就有一些復雜了。慶幸的是,Oracle開發了一個叫做Rapid Clone的工具,步驟歸納如下:

• 在每層運行基於perl的腳本語言(創建一個xml文件,裏面包含了配置信息,不過對源系統不影響)

• 將每層的相關部分復制到目標系統

• 運行基於perl語言的config/clone腳本來重新配置環境或者每層的context文件。

Application,middle tier,database之間有著復雜的連接,常常某一個地方出了問題卻在其他地方上表現出來(有點象中醫),或者說在一個地方出的問題,影響到另一個地方,又影響到其他,然後最終影響到整體性能。比如一個FORM 沒有被正確執行,而你作為一個DBA可能最先發現的是性能的下降,這會讓你很頭疼。另外,在打補丁後,原有的forms 或 reports也可能在執行上與打補丁之前有所不同了。

最後,我要說,你現在接觸和管理的是比你以前復雜的多的系統,這套系統的每一個部分都不能單獨來看,一葉障目,不見泰山,遇到問題應該從整體思考。一個Apps DBA是一個對這套系統每一部分都有所了解的人。

結論:

Oracle Applications DBA(Oracle應用程序數據庫管理員)比「普通」的Oracle DBA(Oracle數據庫管理員)門檻高了很了很多,不僅要有處理數據庫問題的能力,還需要了解整個應用程序的構架,從大處著眼,整體考慮問題。總之,扮演者DBA 和 系統分析師的角色。

 
 
 
免責聲明:本文為網絡用戶發布,其觀點僅代表作者個人觀點,與本站無關,本站僅提供信息存儲服務。文中陳述內容未經本站證實,其真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考,並請自行核實相關內容。
2023年上半年GDP全球前十五強
 百态   2023-10-24
美眾議院議長啟動對拜登的彈劾調查
 百态   2023-09-13
上海、濟南、武漢等多地出現不明墜落物
 探索   2023-09-06
印度或要將國名改為「巴拉特」
 百态   2023-09-06
男子為女友送行,買票不登機被捕
 百态   2023-08-20
手機地震預警功能怎麽開?
 干货   2023-08-06
女子4年賣2套房花700多萬做美容:不但沒變美臉,面部還出現變形
 百态   2023-08-04
住戶一樓被水淹 還衝來8頭豬
 百态   2023-07-31
女子體內爬出大量瓜子狀活蟲
 百态   2023-07-25
地球連續35年收到神秘規律性信號,網友:不要回答!
 探索   2023-07-21
全球鎵價格本周大漲27%
 探索   2023-07-09
錢都流向了那些不缺錢的人,苦都留給了能吃苦的人
 探索   2023-07-02
倩女手遊刀客魅者強控制(強混亂強眩暈強睡眠)和對應控制抗性的關系
 百态   2020-08-20
美國5月9日最新疫情:美國確診人數突破131萬
 百态   2020-05-09
荷蘭政府宣布將集體辭職
 干货   2020-04-30
倩女幽魂手遊師徒任務情義春秋猜成語答案逍遙觀:鵬程萬裏
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案神機營:射石飲羽
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案昆侖山:拔刀相助
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案天工閣:鬼斧神工
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案絲路古道:單槍匹馬
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案鎮郊荒野:與虎謀皮
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案鎮郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案鎮郊荒野:指鹿為馬
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案金陵:小鳥依人
 干货   2019-11-12
倩女幽魂手遊師徒任務情義春秋猜成語答案金陵:千金買鄰
 干货   2019-11-12
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有