變更關聯式資料庫伺服器或連接埠

在「備份 / 回復」程序中,您可以使用新的 Oracle 資料庫執行處理來重新設定 Essbase 。本主題說明如何變更關聯式資料庫伺服器或連接埠。

變更關聯式資料庫伺服器

  1. 停止目前執行中的 Essbase 例項。
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin
    ./stop.sh
  2. 建立新的資料庫 <export_user_name> 使用者並執行 'expdp' 命令以進行綱要備份。只匯出 RCUPrefix_essbase 綱要。

    舉例而言:

    alter session set container="containername";
    create user <export_user_name> identified by <password>;
    grant create session, create table to <export_user_name>;
    create or replace directory dmpdir to <export_user_name>;
    grant DATAPUMP_EXP_FULL_DATABASE to <export_user_name>;
    grant DATAPUMP_IMP_FULL_DATABASE to <export_user_name>;
    grant user <export_user_name> default tablespace users;
    alter user <export_user_name> quota unlimited on users;
    exit;
    expdp <export_user_name>/<password>@<pdbname> dumpfile=<RCUPrefix>.dmp logfile=<RCUPrefix>.log schema=<RCUPrefix>_ESSBASE directory=dmpdir
  3. 建議您備份您的應用程式目錄。如果已經有備份,或者您的應用程式目錄有許多大型應用程式,您可以略過此步驟。

    舉例而言:

    cd user_projects/applications/essbase/
    tar -cvfz ~/Backup/Apps.tar.gz app/*
  4. 針對新的 Oracle 資料庫設定新的 Essbase 例項。您將有機會輸入「網域根目錄」和「應用程式目錄」路徑,選項如下:
    • 如果您要重複使用 'user_projects' 作為主要執行處理,而且舊執行處理已經使用它,請先將舊的 user_projects 重新命名為其他執行處理,再啟動「組態設定工具」。
    • 或為新組態的「網域根目錄」和「應用程式目錄」路徑輸入新的 'user_projects_XXX」。

    附註:

    在新執行處理啟動並在執行中之前,請勿嘗試移除任何項目。
    例如 (在網域詳細資訊組態頁面上,選取「網域」和「應用程式」位置):
    • 網域名稱 essbase_domain
    • 網域根目錄Oracle/21.4.2/Middleware/Oracle_Home/user_projects/domains
    • 應用程式目錄 /Middleware/Oracle_Home/user_projects/applications/essbase
    • WebLogic 管理員帳戶

      ...

  5. 完成對新的 Oracle 資料庫設定新的 Essbase 例項。請確定使用新的綱要名稱。
  6. 設定工具完成後,再次停止 Essbase (請參閱步驟 #1)。
  7. 為新的 Oracle 資料庫建立相似的 'expuser' 使用者,然後執行 'impdp' 命令,從步驟 #3 中從備份取得的傾印檔回復資料。只有在新綱要具有新名稱時,才使用重新對應選項匯入 RCUPrefix_essbase 綱要。

    舉例而言:

    alter session set container="containername";
    create user <export_user_name> identified by <password>;
    grant create session , create table to <export_user_name>;
    create or replace directory dmpdir to <export_user_name>;
    grant DATAPUMP_EXP_FULL_DATABASE to <export_user_name>;
    grant DATAPUMP_IMP_FULL_DATABASE to <export_user_name>;
    grant user <export_user_name> default tablespace users;
    alter user <export_user_name> quota unlimited on users;
    exit;
    impdp expuser/<password>@<pdbname>  dumpfile=<schema_name>.dmp logfile=<schema_name>.log REMAP_SCHEMA=[OLD_SCHEMA]_ESSBASE:[NEW_SCHEMA]_ESSBASE directory=dmpdir partition_options=merge table_exists_action=replace  
  8. 從備份回復應用程式目錄,或從先前的執行處理移動應用程式目錄。
    cd user_projects/applications/essbase/
    tar xvf ~/Backup/Apps.tar
  9. 為新例項啟動 Essbase ,並確定所有項目都已順利執行。因為您尚未刪除任何項目,所以您可以視需要隨時回到上一個好的執行處理。一旦一切都正常運作,您就可以繼續前進並清理不需要的項目。
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin
    ./start.sh
  10. 請注意,WebLogic 中舊受管理伺服器的所有設定值,一旦完成新組態,就必須手動新增至新建立的受管理伺服器。

僅變更資料庫伺服器連接埠

  1. 停止 Essbase 伺服器。
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin./stop.sh
  2. 將資料庫伺服器上 tnsnames.ora 和 listener.ora 檔案中的資料庫連接埠變更為必要的連接埠,例如 1524。
  3. 重新啟動監聽器,然後重新啟動資料庫。檢查 SQL 開發人員中的連線。
  4. 在 Essbase 伺服器上的下列位置中,執行下列動作:
    cd <ORACLE_HOME>/user_projects/domains/essbase_domain/config/fmwconfig
    在 jps-config.xml 中,將連接埠變更為此特性中的新連接埠。
    <property name="jdbc.url" value="jdbc:oracle:thin:@(description=(address=(host=DBhost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBname)(server=dedicated)))"/>
    在 jps-config-jse.xml 中,對參照資料庫連接埠的特性進行類似的變更。
    <property name="jdbc.url" value="jdbc:oracle:thin:@(description=(address=(host=DBhost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBname)(server=dedicated)))"/>
  5. 在下列位置中,執行下列動作:
    cd <ORACLE_HOME>/user_projects/domains/essbase_domain/config/jdbc
    將資料庫連接埠變更為下列檔案中的新連接埠號碼

    essbase_datasource-jdbc.xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    本機服務藍本資料來源 JDBC

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    作業系統稽核 JDBC.xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    作業系統稽核檢視資料庫

     <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    作業系統 - 資料來源 - 資料庫 .xml

    <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>

    WLSSchemaDataSource-jdbc.xml

     <url>jdbc:oracle:thin:@(description=(address=(host=DBHost)(protocol=tcp)(port=1524))(connect_data=(service_name=DBPDBName)(server=dedicated)))</url>
  6. 在下列位置中,執行下列動作:
    cd <ORACLE_HOME>/user_projects/domains/essbase_domain/init-info
    將下列檔案中的資料庫連接埠變更為新的連接埠號碼。

    start-plan-unsub.xml:

     <jvm:value>'OCI;SERVICE=DBHost:1524/DBPDBName'</jvm:value>

    start-plan.xml:

    <jvm:value>'OCI;SERVICE=DBHost:1524/DBPDBName'</jvm:value>
  7. 重新啟動 Essbase
    cd <Oracle_HOME>/user_projects/domains/essbase_domain/esstools/bin
    ./start.sh