メタデータデータベースを手動で構成する方法¶
change_database_settings
スクリプトを使用すると、Scheduler の外部メタデータデータベースを構成できます。このスクリプトは、 <DENODO_HOME>/tools/scheduler
ディレクトリにあります。
注釈
このスクリプトを使用する前に、Scheduler Server を停止してください。
change_database_settings
スクリプト (Scheduler) の構文¶ change_database_settings [-?] -a <arg> -cp <arg> -d <arg> [-e
<arg>] [-krb] [-ktab <arg>] [-p <arg>] [-pi <arg>] [-pma <arg>] [-u
<arg>] -uri <arg> -v <arg> [-c <arg> [-cn <arg>] [-cii <arg>]]
パラメータ名 |
説明 |
---|---|
-? |
このヘルプを表示します。 |
-a --adapter <adapter-name> |
アダプター名 (サポートされているエンジンである derby、mysql、oracle、postgresql、sqlserver、azure、aurora mysql、aurora postgresql のいずれか) です。 例: |
-v --version <adapter-version> |
アダプターのバージョン (サポートされているエンジンのいずれか) です。 例: |
-d --driver <driver-classname> |
ドライバークラスの名前です。 例: |
-cp --classPath <driver-classpath> |
ドライバークラスのパスです。 例: |
-e --externalDriver <driver-classpath> |
ドライバーファイルが置かれる Denodo のデフォルト以外の場所へのパス。このファイルは新しいカタログに追加されます。指定されたパスがディレクトリである場合、その下にあるすべてのファイルが追加されます。 例: |
-uri --databaseUri <uri> |
データベースの URI です。 例: |
-u --user <user> |
データベースのユーザー名です。 例: |
-p --password <password> |
データベースのユーザーパスワードです。スクリプト「encrypt_password」を使用して、暗号化された値を取得することができます。 例: |
-krb --kerberos |
Kerberos 認証を使用します。 例: |
-ktab --keytab |
keytab ファイルへのパスです。SPN および keytab とともに Kerberos を使用する場合のみ適用されます。 例: |
-pi --initialSize <pool-initial-size> |
プールの初期サイズです。 例: |
-pma --maxActive <pool-max-active> |
プールの最大アクティブ数です。 例: |
-c --cluster |
クラスタリング機能を有効/無効にします。指定できる値は``enable`` または 例: |
-cn --clusterName |
クラスタノード ID です。 例: |
-cci --clusterCheckInterval |
このインスタンスがクラスタ内の他のインスタンスに状況を報告する間隔 (ミリ秒単位) を設定します。 例: |
例
例 1:
PostgreSQL データベースで外部メタデータデータベースを構成します。
change_database_settings --adapter postgresql
--version 12
--classPath "postgresql-12"
--databaseUri "jdbc:postgresql://psql-db:5432/schedcatalog"
--driver "org.postgresql.Driver"
--user "denodo_user"
--password "encrypted:passwordEncrypted"
この例では、パスワード (パラメータ --password
) は暗号化されています。このパスワードを暗号化するには、スクリプト <DENODO_HOME>/bin/encrypt_password
を実行し、PostgreSQL でのこのユーザーアカウントのパスワードを入力します。--password
の引数は、 encrypted:
の後ろに、このスクリプトの結果を追加したものです。
なお、Scheduler は、このスクリプトに渡されたパスワードが暗号化されているかどうかにかかわらず、暗号化された状態で保存します。
例 2:
MySQL データベースで外部メタデータデータベースを構成します。
change_database_settings --adapter mysql
--version 5
--classPath "mysql-5"
--externalDriver "/my-drivers/mysql5"
--databaseUri "jdbc:mysql://mysql-db:3306/schedcatalog"
--driver "com.mysql.jdbc.Driver"
--user "denodo_user"
--password "encrypted:passwordEncrypted"
この例では、パラメータ --externalDriver
を使用して、MySQL ドライバーが存在する Denodo 外部の場所を指定しています。スクリプトは指定された場所からドライバーを読み込み、コネクションを開きます。さらに、パラメータ --classPath
で指定された内部の Denodo クラスパスが示す場所にドライバーがコピーされ、Scheduler の起動時にサーバーがドライバーを読み込めるようになります。なお、 --externalDriver
パラメータの値はファイルでもディレクトリでも構いません。このケースでは、そのディレクトリに存在するすべてのファイルがドライバーの読み込みに使用されます。
加えて、パスワード (パラメータ --password
) が暗号化されています。このパスワードを暗号化するために、スクリプト <DENODO_HOME>/bin/encrypt_password
を実行して、MySQL におけるこのユーザーアカウントのパスワードを入力します。--password
の引数は、 encrypted:
の後ろに、このスクリプトの結果を追加したものです。
なお、Scheduler は、このスクリプトに渡されたパスワードが暗号化されているかどうかにかかわらず、暗号化された状態で保存します。