Essbase 21.8へのアップグレードに手動ODBC構成が必要

Essbase 21.8デプロイメントには、更新されたDataDirect ODBCドライバ(バージョン8.0.2)が含まれています。Essbase 21.8 OPatchを独立Essbaseデプロイメントに適用した後、ODBC構成を手動で更新する必要があります(LinuxおよびWindowsに適用されます)。

この問題は、以前のバージョンからEssbase 21.8にアップグレードしていて、ODBCドライバを使用して外部ソース・データ/ディメンションをEssbaseにロードする必要がある場合に影響します(ODBC接続を使用したデータ・アクセスを参照)。

ノート:

Essbase 21.8 OPatchを適用すると、古いODBCドライバ・バージョン(7.1.6や5.3など)が削除されます。Essbase 21.8ではサポートされていないため、機能しません。

Essbase 21.8は、次のDataDirect ODBCドライバ・バージョンにのみバンドルされており、次のバージョンのみがサポートされています:

[ODBC Drivers]
Oracle 8.1 MongoDB
Oracle 8.0 Amazon Redshift Wire Protocol
Oracle 8.0 Apache Hive Wire Protocol
Oracle 8.0 Apache Spark SQL
Oracle 8.0 DB2 Wire Protocol
Oracle 8.0 Greenplum Wire Protocol
Oracle 8.0 Informix Wire Protocol
Oracle 8.0 MySQL Wire Protocol
Oracle 8.0 Oracle Wire Protocol
Oracle 8.0 PostgreSQL Wire Protocol
Oracle 8.0 SQL Server Wire Protocol
Oracle 8.0 Sybase IQ Wire Protocol

Essbase 21.8 OPatchを適用した後、

  • ODBC構成を手動で更新する必要があります(LinuxとWindowsの両方に適用されます)。
  • 古いドライバを使用する以前のEssbaseバージョンにロールバックする必要がある場合に備えるため、Oracleでは、古い7.1.6ドライバのODBC構成を手動でバックアップすることをお薦めします。

Linuxの手順

開始する前に、Essbaseサーバー・ドメイン上の古い7.1.6ドライバ構成の場所をメモします:

  • odbc.ini。場所は次のとおりです

    <Domain Root>/<Domain Name>/config/fmwconfig/essconfig/core
  • odbcinst.ini。場所は次のとおりです

    <Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/7.1.6/odbcinst.ini
  • ODBCドライバのライブラリ。場所は次のとおりです

    <Essbase Product Home>/modules/
  1. Essbaseが実行されている場合は、サーバーの起動、停止およびチェックの説明に従ってサーバーを停止します。

  2. 古い7.1.6ドライバ構成のバックアップ・コピー(odbc.ini) (必須)およびodbcinst.ini (Teradataなどのサード・パーティ・ドライバを使用している場合は必須)を作成します。

    ノート:

    偶発的な上書きを回避するために、7.1.6ドライバ構成のバックアップが次の場所の外部に保存されていることを確認します
    <Essbase Product Home>/modules/

    例:

    cp <Domain_Home>/config/fmwconfig/essconfig/core/odbc.ini <Oracle_HOME>/odbc.ini_orig
    cp <Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/7.1.6/odbcinst.ini <Oracle_HOME>/odbcinst.ini_orig
  3. Essbase 21.8 OPatchを適用します(パッチ適用とロールバックを参照)。

  4. odbc.iniを開いて編集します。

  5. 古いドライバ名を新しいドライバ名に置き換え、ドライバ名エントリに絶対ライブラリパスを指定します。たとえば、次のようにします(Oracle_HOMEをシステムのOracle_HOMEパスに置き換えます):

    • 変更前

      Driver=<Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/7.1.6/lib/ARsqls27.so

      変更後

      Driver=<Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/8.0.2/lib/ARsqls28.so
    • 変更前

      Driver=<Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/7.1.6/lib/ARdb227.so

      変更後

      Driver=<Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/8.0.2/lib/ARdb228.so
    • 変更前

      Driver=<Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/7.1.6/lib/ARmysql27.so

      変更後

      Driver=<Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/8.0.2/lib/ARmysql28.so
  6. (オプション)古いドライバの説明を新しいものに置き換えます。

    • Oracle 7.1 SQL Server Wire ProtocolOracle 8.0 SQL Server Wire Protocolに変更します
    • Oracle 7.1 DB2 Wire ProtocolドライバOracle 8.0 DB2 Wire Protocolドライバに変更します
    • Oracle 7.1 MySQL Wire ProtocolOracle 8.0 MySQL Wire Protocolに変更します
  7. odbc.iniを保存します。

  8. odbcinst.iniファイル<Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/8.0.2/odbcinst.iniを編集します。

    DB2の例

    (Oracle_HOMEをシステムのOracle_HOMEパスに置き換えます):

    Driver=<Oracle_HOME>/essbase/modules/oracle.essbase.datadirect.odbc/8.0.2/Ardb228.so

    Teradataの例

    バックアップ・ファイル<Oracle_HOME>/odbcinst.ini_origからTeradata関連のエントリをコピーして貼り付け、Teradata ODBCドライバに関する情報をodbcinst.iniに追加します:

    Teradata=Installed
    [Teradata]
    Driver=/opt/teradata/client/20.00/odbc_64/lib/tdataodbc_sb64.so
    APILevel=CORE
    ConnectFunctions=YYY
    DriverODBCVer=3.51
    SQLLevel=1
  9. odbcinst.iniを保存します。

  10. Essbaseを起動します。サーバーの起動、停止およびチェックを参照してください。

ノート:

Essbase 21.8 OPatchをロールバックする必要がある場合は、バックアップodbc.iniファイル(およびTeradataなどのサード・パーティ・ドライバを使用している場合はodbcinst.ini)に復元する必要もあります。例:

cd <DOMAIN_HOME>/config/fmwconfig/essconfig/core
cp odbc.ini.orig odbc.ini

Windowsの手順

Windowsでは、ODBCデータ・ソースの構成(Windows)で説明されているように、以前に構成されたシステムDSNは、Essbase 21.8 OPatchの適用後に機能しなくなります。8.0.2ドライバを使用するようにシステムDSNを再構成する必要があります。

  1. Essbaseが実行されている場合は、サーバーの起動、停止およびチェックの説明に従ってサーバーを停止します。

  2. Essbase 21.8 OPatchを適用します(パッチ適用とロールバックを参照)。

  3. Essbase Windows Serverで、Windowsレジストリ・エディタを開きます(「スタート」メニューからregeditを実行します)。

  4. Computer\HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INIに移動します。

  5. ODBC.INIを右クリックし、「エクスポート」を選択します。OPatchをロールバックする必要がある場合に備えて、バックアップとして保存します。たとえば、構成をodbc.orig.regとして保存します。

  6. Computer\HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INIに移動します。

  7. ODBCINST.INIを右クリックし、「エクスポート」を選択します。OPatchをロールバックする必要がある場合に備えて、バックアップとして保存します。たとえば、構成をodbcini.orig.regとして保存します。

  8. ODBC.INIに移動し、essbase_datasourceを選択します

  9. DriverおよびDescriptionという名前のエントリに対して、右クリックして「修正」を選択し、すべてのデータ・ソースの情報を更新します。

    変更前

    • Oracle 7.1 SQL Server Wire Protocol

      変更後

      Oracle 8.0 SQL Server Wire Protocol

    • 変更前

      Oracle 7.1 DB2 Wire Protocol Driver

      変更後

      Oracle 8.0 DB2 Wire Protocol Driver

    • 変更前

      Oracle 7.1 MySQL Wire Protocol

      変更後

      Oracle 8.0 MySQL Wire Protocol

  10. Essbase Windows Serverで、<ESSBASE_PRODUCT_HOME>\modules\oracle.essbase.datadirect.odbc\8.0.2に移動します。

  11. ODBC802.regのバックアップ・コピーを作成します(たとえば、ODBC802_orig.reg)。

  12. ODBC802.regを編集し、$ODBC_PATHのすべての出現箇所をODBCドライバの絶対パス(C:\\Oracle\\Middleware\\Oracle_Home\\essbase\\modules\\oracle.essbase.datadirect.odbc\\など)に置き換えます。

  13. 編集したODBC802.regファイルをダブルクリックします。これにより、Windowsレジストリが編集され、DataDirect 8.0.2ドライバのエントリがEssbase 21.8にバンドルされます。

  14. Essbaseを起動します。サーバーの起動、停止およびチェックを参照してください。

ノート:

Essbase 21.8 OPatchをロールバックする必要がある場合は、バックアップODBC.INIおよびODBCINST.INIのWindowsレジストリ・エントリに復元する必要があります。たとえば、regeditからODBC.INIエントリを削除し、odbc.orig.regをダブルクリックして前のエントリを復元します。または、レジストリ・エントリをインポート/マージすることもできます。