OBIEE10g跨平臺遷移過程及問題總結

jaymarco發表於2020-09-22


1、遷移背景

    OBIEE 全稱叫Oracle Business Intelligence Enterprise Edition

它是oracle的一套綜合的企業BI產品,可提供完整的BI功能,包括互動式資訊板、完全即席的主動式智慧和警報、企業和財務報表、實時預測智慧以及離線分析等。目前常用版本是10.1.3.3,10.1.3.4,11.1.1.3~11.1.1.9,12.2.1.0。

    由於BIEE 10g現已不在oracle服務範圍了。現在大部分的主機都X86虛擬化了,客戶為了節省成本將物理主機卸下替換成X86虛擬機器。而於此同時跑在物理主機上的應用面臨著需要遷移。有些客戶會這麼想他的平臺現在10g版本上執行很正常,幹嘛去折騰一下將10g升級到11g,升級後程式碼也要升級不知會帶來太多的麻煩,還想繼續保持原來版本。那我們如何跨平臺遷移了,遷移後會碰到哪些不為人知的問題了。接下來給大家介紹的是OBIEE10.1.3.4如何從AIX平臺遷移到LINUX平臺,遷移後碰到的問題。


2、BIEE軟體安裝

    從oracle官網上獲取OBIEE10.1.3.4 linux版本軟體,然後在目標linux環境下安裝OBIEE軟體。Obiee軟體安裝非常簡單,按安裝嚮導下一步完成所有操作。OBIEE具體安裝文件請參考我之前分享的一篇文章< Oracle Biee 10g安裝指引介紹>,接下來還是重點介紹一下如何將OBIEE從生產AIX主機遷移到新linux主機。


3、遷移步驟

需要準備從生產環境遷移檔案:

1、   Repository資訊資料庫檔案遷移

2、   Web Catalog檔案遷移

3、   二次開發用程式analytics.ear遷移

4、修改配置


3.1、BIEE檔案遷移

1、從OBIEE 生產環境將$BI_HOME\OracleBI\server\Repository 目錄下的.rpd 檔案複製到新環境相同目錄。

2、 OBIEE 生產環境將$BI_HOME\OracleBIData\web\catalog 目錄下的Web Catalog 打包後複製到新環境相同目錄

  3、開發商對analytics.ear做了二次開發,我們需要從生產環境將此包遷移到新環境,然後透過EM控制檯將這個程式包部署上去。

生產環境應用路徑:

  /oracle/biee/OracleBI/oc4j_bi/j2ee/home/applications/analytics.ear


3.2、BIEE配置修改

1) NQSConfig.INI配置檔案設定:

  修改新環境$BI_HOME\OracleBI\server\Config\NQSConfig.INI修改對應生產環境的rpd命名。將samplesales.rpd替換成生產的RPD檔案biee_gdrpd_demo.rpd。

2) 修改instanceconfig.xml配置檔案

  修改新環境$BI_HOME\OracleBIData\web\config\instanceconfig.xml指向生產環境移動過來的catalog目錄。


3.3、RPD模型物理層資料來源修改

  如果BIEE 的資料庫密碼被修改了,同時RPD 檔案連線的資料庫賬號密碼也要修改,

以下方法是如何修改RPD 檔案的資料庫賬號密碼。

  安裝windows版本BIadministrator tool工具用於修改rpd檔案連線池中資料庫密碼和連線池名字,至於軟體安裝就不詳細說明了,安裝選擇client安裝。

  1、將生產環境rpd檔案放在windows機,在透過BI administrator tool工具來修改配置,點選rpd檔案,輸入Administator密碼

  2 、rpd檔案內的oracle連線池tns要與伺服器下的完全一致,那麼我們要再建一個tns,所以在遷移BI時,伺服器也要安裝一套oracle客戶端,RPD是透過oracle客戶端的tns去連線資料庫來查資料的。

以下配置是配置到BIEE伺服器,oracle客戶端的tnsnames.ora中。不然是無法跟BIEE資料庫連線的。

bieedb=

  (DESCRIPTION =

    (ADDRESS =(PROTOCOL = TCP)(HOST = 192.168.1.2)(PORT = 1521))

    (CONNECT_DATA =

      (SERVER =DEDICATED)

      (SERVICE_NAME= BIDB)

    )

  )

注意:如果BIEE資料庫也遷移到其它主機,只需要修改BIEE伺服器上面的oracle客戶端的 tnsnames.ora檔案TNS主機指向目標主機就可以了。


3.4、BI服務重啟

重新啟動BI Server、BI Presentation Services、OC4J


4、BIEE遷移問題總結

1 、BIEE部分報表已更新資料,但無法查詢最新資料結果問題

問題原因:初步定位是BIEE快取問題

解決方法:

1)清除瀏覽器快取

2)如果1沒有解決問題,請您使用 Call SAPurgeAllCache()命令來清理BIEE的快取:

用管理員賬戶登入BIEE系統, 點選 設定 -> 管理  -> Issue SQL -> 輸入命令 Call SAPurgeAllCache()並且執行

2 、下載報表分析臨時檔案不能大於2G問題

報錯資訊:

<div>Odbc  驅動程式返回一個錯誤 (SQLFetchScroll)。</div>
 <div style="margin-top:2pt"  return false;">
 <img border="0"  src="res/sk_oracle10/common/errorplus.gif">  <a  href="javascript: void(null)">錯誤明細</a>
 <divstyle="margin-left:15px;display:none"compresssrc="res/sk_oracle10/common/errorminus.gif"
 <div>錯誤程式碼:  <span dir="ltr"> OPR4ONWY:U9IM8TAC </span>
 </div> <div style="margin-top:4pt"> <div>狀態: HY000。 程式碼: 10058。 [NQODBC] [SQL_STATE: HY000]  [nQSError: 10058] A general error has occurred. [nQSError: 46073] Operation  'stat()' on file '/biee/biee10g/OracleBIData/tmp/nQS_76150_431_13611528.TMP'  failed with error: (75) €5Qó. (HY000)</div>

原因分析:

初步定位是一個BIEE10g的BUG

解決方法:

將BUG 5543386打上,問題解決。

Patch 6998143: ANALYTICS TEMP FILES  CANNOT BE LARGER THAN 2GB (  BUG 5543386  )

Please note that a patch  for  BUG 5543386  - ANALYTICS TEMP FILES  CANNOT BE LARGER THAN 2GB, for Linux is now available.

3 、OBIEE  EM輸入賬號和密碼無法正常登入問題

報錯資訊:

登入 輸入使用者名稱和密碼後報錯此 OC4J 配置為透過 RMIS 建立 JMX 連線, 如果未配置 RMIS  埠, 則後退到 RMI。OC4J 本地例項上的 RMIS 連線已配置, 但無法建立連線JMX 協議是由  opmn.xml 中oracle.oc4j.jmx.internal.connection.protocol  屬性指定的

原因分析:

RMIS埠無法建立連線,原因是主機名配置問題,主機名XXXX_XXX這樣配置系統是無法識別主機名。因為RMIS埠無法建立。

解決方法:

修改BIEE主機名,將XXXX_XXX主機名修改成規劃主機名XXXX-XXX。重啟BIEE服務,RMIS埠正常建立,EM能夠正常登入。

4 、登入analytics頁面報錯 Odbc 驅動程式返回一個錯誤 (SQLExecDirectW)業務無法正常查詢報表

報錯資訊:

錯誤程式碼: OPR4ONWY:U9IM8TAC:OI2DL65P
 狀態: HY000。 程式碼: 10058。 [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has  occurred. libclntsh.so.10.1: wrong ELF class: ELFCLASS64
 [nQSError: 46029] Failed to load the DLL  /biee/biee10g/OracleBI/server/Bin/libnqsdbgatewayoci10g.so. Check if 'Oracle  OCI 10G' database client is installed. (HY000)
 發出的 SQL: SELECT "- BIEE_戰略圖_策略樹指標"."月份" FROM tbz where "- BIEE_戰略圖_策略樹指標"."型別" = '總體市場' order by "- BIEE_戰略圖_策略樹指標"."月份" desc

原因分析:

OBIEE10g 只有linux 32位的版本,所以資料庫客戶端也需要安裝32位的版本,這就需要32位驅動程式連線資料庫。當前OBIEE主機上面安裝的是64位oracle客戶端,而32位庫不附帶64位資料庫客戶端。

解決方法:

安裝32位 ORACLE客戶端。

 

有需要的朋友可以關注我的公眾號,文章每日一更


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

相關文章