外部データベースの設定

注釈

グローバル管理者および Solution Manager 管理者のみがこのタスクを実行できます。

注釈

Denodo Standard の Solution Manager では、この機能を使用できません。「 Denodo Standard の制限事項 」も参照してください。

Solution Manager サーバーおよび License Manager サーバーは、以下の情報をデータベースに保存します。

  1. Solution Manager: 環境、クラスター、およびサーバー

  2. 昇格: 負荷分散変数、リビジョン、およびデプロイ

  3. ライセンス: グローバルライセンスおよびライセンスの使用状況

これらのコンポーネントはすべて同じデータベースを使用してこの情報を保存します。そのデータベースは、デフォルトではインストールに含まれるローカルデータベース (Apache Derby) です。この情報を外部データベースに保存するようにこれらのコンポーネントを構成できます。すべてのコンポーネントで同じデータベースを使用する必要があります。

注釈

この情報の保存先のデータベースを変更すると、既存の昇格にアクセスできなくなります。既存の昇格はローカルデータベースに残りますが、そのローカルデータベースにアクセスできなくなるためです。ライセンスは、自動的に新しいデータベースに転送されます。環境、クラスター、およびサーバーに関する情報は、このページで説明するプロセスの実行時に転送されます。

以下の手順に従って実施してください。

  1. ツリー領域 ですでに環境、クラスター、およびサーバーを定義済みの場合は、それらをファイルにエクスポートします。これを行うには、ツリーのルート ([Solution Manager]) を右クリックして、[Export] をクリックします。

    リビジョンとデプロイに関する情報は エクスポートできません

  2. データベースの JDBC ドライバーの jar ファイル (複数可) をフォルダー <SOLUTION_MANAGER_HOME>/lib/solution-manager-extensions にコピーします。

  3. 次のコンポーネントを再起動します。

    • License Manager サーバー

    • Solution Manager サーバー

    • Solution Manager Administration Tool

    ドライバーの jar ファイルがすでにこのフォルダーにあった場合は、これらのコンポーネントを再起動する必要はありません。

  4. [Configuration] メニュー > [Solution Manager database] をクリックします。新しいタブで、次のパラメーターを入力します。

    • Database: サポートされている以下のいずれかのデータベースを選択します。

      • Apache Derby。

      • Microsoft SQL Server 2014。Microsoft JDBC ドライバーを使用します (jTDS ドライバーはサポートされていません)。

      • Oracle 11g。これを使用するには、ディレクトリ <SOLUTION_MANAGER_HOME>/lib/extensions/jdbc-drivers/oracle-12c の jar ファイルを <SOLUTION_MANAGER_HOME>/lib/solution-manager-extensions にコピーします。Solution Manager が Oracle 11g および 12c 以降に接続するには Oracle 12c ドライバーが必要です。

      • Oracle 12c 以降。

      • MySQL 5.6。MySQL を使用する場合、または MySQL 互換エディションの Amazon Aurora を使用する場合に選択します。

      • PostgreSQL 9.5。PostgreSQL を使用する場合、または PostgreSQL 互換エディションの Amazon Aurora を使用する場合に選択します。

    • Driver Class: JDBC ドライバーのクラス名。たとえば、Oracle の場合は oracle.jdbc.OracleDriver です。

    • URL: データベースサーバーへの接続に使用する JDBC URL。

    • User および Password: データベースへの接続に使用する資格情報。このユーザーアカウントには、テーブルの作成と、テーブルの行の挿入、更新、および削除を行うための権限が必要です。

      後で、Solution Manager の構成ファイルを変更して、このパスワードを変更することができます (以下を参照)。

Database configuration panel

データベースを構成するためのパネル

注釈

  • データベースとして [Derby Embedded] を選択した場合、[Driver Class]、[URI]、[Username]、および [Password] の各フィールドは編集できません。これは、Solution Manager に付属の Derby データベースに接続することを表します。

  • [MySQL] を選択した場合は、URL にパラメーター useUnicode=true&characterEncoding=UTF-8 を追加します。たとえば、次のようになります。

    jdbc:mysql://mysql.acme.com:3306/denodo_solution_manager?useUnicode=true&characterEncoding=UTF-8
    

    このパラメーターは、非 ASCII 文字をデータベースに正しく保存するために必要です。

    また、Solution Manager で使用する MySQL のスキーマには、 Default Charset = utf8 および Collation = utf8_unicode_ci のオプションも必要です。

    これらのオプションを設定するには、この MySQL に接続して、次のステートメントを実行します。

    ALTER DATABASE <database name>
    CHARACTER SET utf8 COLLATE utf8_general_ci;
    
  1. save-btn をクリックします。Solution Manager は、このデータベースにアクセスできることを確認します。必要なテーブルが存在しない場合は作成するよう求められます。[Yes] をクリックすると、テーブルが自動的に作成されます。または、ディレクトリ <SOLUTION_MANAGER_HOME>/conf/solution-manager/sql のスクリプトを使用して、手動でテーブルを作成することもできます。

    注釈

    ターゲットデータベースが Oracle であり、これらのテーブルを SQL*Plus や Enterprise Manager などの対話的ツールを使用して作成する場合は、スクリプト solutionmanager.oracle.sql を変更し、文字 / からなる行を、ステートメント CREATE OR REPLACE TRIGGER (このステートメントはいくつかあります) のそれぞれの直後に追加する必要があります。以下に例を示します。

    CREATE OR REPLACE TRIGGER acl_class_id_trigger
    BEFORE INSERT ON acl_class
    FOR EACH ROW
    BEGIN
       SELECT acl_class_sequence.nextval INTO :new.id FROM dual;
    END;
    /
    
  2. License Manager サーバーSolution Manager サーバー 、および Solution Manager Administration Tool を停止します。

  3. License Manager を起動して、2 分間待ちます。

    License Manager は、ライセンス情報を自動的に外部データベースに保存するようになります。

  4. Solution Manager サーバーおよび Solution Manager Administration Tool を起動します。

    重要

    最初に License Manager がライセンスを外部データベースに保存する必要があるため、このインストールの他のコンポーネントよりも 先に License Manager を起動してください。この順序で起動しないと、Solution Manager は有効なライセンスを見つけることができないため起動しません。

  5. Solution Manager にログインします。すでに定義されていた環境、クラスター、およびサーバーは、以前の場所にはありません。新しいデータベースに自動的にコピーされるのはライセンスだけであるためです。

    環境、クラスター、およびサーバーを復元するには、ツリーのルートを右クリックして、[Import] をクリックします。手順 1 でエクスポートしたファイルを選択します。

外部データベースのパスワードの変更

すでに Solution Manager を構成して、その構成を外部データベースに保存してある場合、Solution Manager がこのデータベースへの接続に使用するパスワードを変更するには、次の 2 つの方法があります。

  1. Solution Manager の構成ファイルを変更する。このセクションでは、こちらの方法を説明します。

  2. Web インターフェイスを使用する (上で説明した方法)。

これを構成ファイルの変更で行う手順は次のとおりです。

  1. License Manager サーバーSolution Manager サーバー 、および Solution Manager Administration Tool を停止します。

  2. ファイル <SOLUTION_MANAGER_HOME>/conf/license-manager/LMConfigurationParameters.properties を編集して、以下のプロパティを変更します。

プロパティ名

意味

com.denodo.solutionmanager.storage.GenericStorageManager.password

外部データベースのパスワード。

パスワードは暗号化した状態で保存することをお勧めします。パスワードを暗号化するには、コマンド <SOLUTION_MANAGER_HOME>/bin/encrypt_password "<new password>" を実行し、値をコピーしてファイルに書き込みます。

このスクリプトの出力は、暗号化されたパスワードです。

com.denodo.solutionmanager.storage.GenericStorageManager.password.encrypted

暗号化されたパスワードを指定する場合は ENCRYPTED に設定します。暗号化されていないパスワードを保存する場合は、空のままにします。

暗号化されたパスワードを指定する場合のプロパティの例
com.denodo.solutionmanager.storage.GenericStorageManager.password=FCAOAB8jiithfHYd5Oq8Q==
com.denodo.solutionmanager.storage.GenericStorageManager.password.encrypted=ENCRYPTED
暗号化されたプレーンテキスト形式のパスワードを指定する場合のプロパティの例
com.denodo.solutionmanager.storage.GenericStorageManager.password=denodo
com.denodo.solutionmanager.storage.GenericStorageManager.password.encrypted=
  1. License Manager サーバーSolution Manager サーバー 、および Solution Manager Administration Tool を開始します。