【SAP BO】無法識別賬戶信息:無法訪問CMS。計算機上的CMS由於某個嚴重錯誤而停止。(FWM 20031)


1、系統環境

OS:Windows Server 2008 R2

RDBMS:Oracle 11g R2(Server、Client同時存在)

BI:SAP Business Objects 4.2

 

2、問題描述

         測試環境下BO系統安裝完畢,可以正常運行服務,登錄系統界面做一些簡單報表和ETL的操作。

但在一次工作需要重啟了服務器之后發現,CCM中央配置管理中的三項服務(1.Appache Tomcat;2.Server Intelligence Agent、3.World Wide Web Publish Services)可以正常啟動,但是無法登錄到CMS進行管理,也無法登錄BI Platform,如下圖:

 

3、解決步驟

(1)查看BO錯誤信息文檔(sbo42_error_messages_zh_CN.pdf

一開始沒有這個文檔,首先按照以往解決BO錯誤信息問題的經驗,在Google上搜索錯誤信息關鍵,可以找到SAP提供的該文檔。

搜索界面上提示的錯誤信息:FWM 20031,如下圖:

提示需要參見error_cms<port>.log文件。

 

(2)查看error_log<port>.log錯誤日志文件

因為我這個BO系統的CMS端口默認的是6400,所以應該查找error_cms6400.log

BO <INSTALLER>目錄下搜索”error_cms6400.log”或直接到

” D:\BI\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\logging”目錄下查找該日志文件,如下圖:

 

打開后,發現是由於【CMS:無法連接到 CMS 系統數據庫“WHNG”。原因:ORA-12154: TNS:could not resolve the connect identifier specified】,如下圖:

發現問題是由於oracle數據庫連接的問題導致的。

 

(3)查找Oracle錯誤:ora-12154

         首先檢查操作系統的oracle環境,發現有一個oracle_server,還有一個oracle_client。按照以往經驗,oracle服務端和客戶端同時存在的情況很容易出現因為TNS配置指向混亂導致的無法連接錯誤。我們在cmd里使用【tnsping WHGN】查看當前系統連接的WHNG是由哪一個端配置的TNS,如下圖:

可以看到當前的WHNG連接是由oracle_client端配置的,oracle_client端是32位程序。

但是,SAP BO4.2是64位程序,不會去讀取32位的oracle_client配置的TNS。顯然是因為oracle_server64端的TNS配置出了問題。

 

(4)查看oracle_server的NetManager或者dbhome_1下的TNSlistener文件

         發現oracle_server的TNS配置文件中,缺少”WHNG”。如下圖:

 

接下來就在oracle_server的TNS配置中增加一個”WHNG”測試連接並保存,如下圖:

 

在這里有一個知識點擴展

  網上有人說ora-12154問題跟oracle服務端與客戶端的安裝順序有關,如果先安裝客戶端后安裝服務端就可能會出現這個問題,本質原因是oracle的安裝過程中,會在Windows系統環境變量Path中添加<oracle_home\bin>路徑。因為安裝順序的不同,填入Path中的<oracle_home\bin>順序也會不同,其他應用程序在調用oracle的TNS時,會優先選擇Path中第一個路徑。所以解決這個問題的方式也可以是調換系統環境變量Path中oracle客戶端與服務端的<oracle_home\bin>路徑的順序。但是此方法不能解決我們這篇文章中遇到的BO無法登錄的問題,因為BO42只認64位的oracle。

 

(5)重啟CCM三項服務

         回到正題,打開CCM中央配置管理,重新啟動三項服務,如下圖:

 

啟動完成后,可以登錄到CMS管理服務,也可以正常登錄BIPlatform啟動板,如下圖:

注意:上圖中的狀態大部分是”已停止”,等待系統自啟動一段時間后,刷新一下即可正常為”運行中”。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM