export スクリプト

export スクリプトは、Virtual DataPort サーバーのメタデータをエクスポートします。このスクリプトの機能は、Administration Tool の [Export] ダイアログおよび [Export database] ダイアログと同等です (「 サーバーメタデータのエクスポートとインポート 」を参照)。

メタデータは、以下の形式でエクスポートできます。

  • エクスポートされたエレメントを再作成するための VQL ステートメントをすべて含むファイル (--file オプション)。

  • 2 つのファイル (--property includeProperties オプション):

    1. データベースのすべてのエレメントの VQL ステートメントを含むファイル。環境に依存するパラメーターの値は、実際の値ではなく、変数で表されます。

    2. 変数の値を含むプロパティファイル。詳細については、「 プロパティファイルへのエクスポート 」を参照してください。

  • リポジトリ: メタデータは一連のファイルに保存され、各ファイルにはエレメントを 1 つ作成するための VQL ステートメントが含まれます (--repository オプション)。

    エクスポートプロセスを実行すると、サーバーの仮想データベースそれぞれに対して 1 つずつフォルダーが作成されます。各フォルダー内には、エレメントの各タイプ (フォルダー、データソース、ビューなど) に対応するフォルダーが 1 つずつ存在し、そのフォルダー内には各エレメントに対応するファイルが 1 つずつ存在します。各ファイルには、そのエレメントを作成するための VQL ステートメントが記述されています。これは、バージョン管理システム (VCS) などのリビジョン管理システムを使用して、サーバーのメタデータと構成の変更を追跡する場合に役に立ちます。

    注釈

    サーバーのメタデータを VCS に保存する場合、Virtual DataPort の VCS 統合を使用することが推奨されます (「 バージョン管理システムの統合 」を参照)。ただし、サポートされていない VCS を使用する場合は、リポジトリへのエクスポートが必要になる可能性があります。

このスクリプトは、 <DENODO_HOME>/bin ディレクトリにあります。その構文は次のとおりです。

export --login <login> [ --password <password> ]
       [ --configurationfile <filename> ]
       --server [//]<host>:[<port>][/<database name>] [ --nobom ]
       [ --itponly ] [ --metadatapassword <password> ]
       {   --file <filename>
         | --repository <path to repository>
           [ {   --element <path to element>
              | --repository-element <identifier path> }
           ]*
       }
       [ --singleuser ] [ -P <property name>=<property value> ]*
export スクリプトのパラメーター

パラメーター名

説明

-l

-\-login <login>

サーバーに接続するために使用するログイン名。サーバーのすべてのメタデータをエクスポートする場合、 <login>管理者 である必要があります。

-p

-\-password <password>

サーバーに接続するために使用するパスワード。

パスワードを暗号化するには、 encrypt_password スクリプトを使用します。暗号化すると、プレーンテキストでパスワードを入力するのを避けることができます。

例: --password encrypted:Gr16MjvuXhRzPtPH/yTXHw==

パラメーター -p-cf も指定しない場合は、パスワードの入力を求められます。

-cf

-\-configurationfile <filename>

次の内容が記述された 1 行のファイルを指定します。

password=<password>

または

password=encrypted:<encrypted_password>

パスワードを暗号化するには、 encrypt_password スクリプトを使用します。暗号化すると、プレーンテキストでパスワードを入力するのを避けることができます。

-p と同時に指定することはできません。

-h

-\-server <サーバーの URI>

サーバーの URI (<host>:[<port>][/<database name>])。

<database_name> を指定している場合、 <database_name> のメタデータがエクスポートされます。指定していない場合、すべての仮想データベースのメタデータに加えて、サーバーの設定もエクスポートされます。

-f

-\-file <filename>

VQL ステートメントを保存するターゲットファイルの名前。

このオプションを、 --repository (-r) オプションと同時に指定することはできません。

-nb

-\-nobom

このパラメーターを追加した場合、「バイトオーダーマーク」 (BOM) なし で出力ファイルが生成されます。

デフォルトでは、出力ファイルが UTF-8 でエンコードされていることを示す BOM マークが出力ファイルに追加されます。このマークが追加されていると、出力ファイルを読み取る必要があるアプリケーションは、そのエンコードをすぐに検出でき、推定する必要がありません。ただし、BOM を処理できないアプリケーションもあるため、その場合にこのパラメーターを追加します。

-i

-\-itponly

WWW ラッパー (ITPilot ラッパー) のみをエクスポートします。

: このオプションを使用するには、 --server パラメーターで <database_name> を指定する必要があります。

-mp

-\-metadatapassword <password>

指定したパスワードで機密値 (データソースのパスワードなど) を暗号化します。

プレーンテキストでパスワードを入力するのを避けるため、暗号化したパスワードを指定することができます。これを行うには、 encrypt_password スクリプトを使用して暗号化したパスワードを取得し、その値に接頭辞 encrypted: を付加します。

例: -mp "encrypted:Gr16MjvuXhRzPtPH/yTXHw=="

-r

-\-repository <path to repository>

リポジトリを作成するディレクトリ、またはリポジトリがすでに存在するディレクトリのパス。

このオプションを、 --file (-f) オプションと同時に指定することはできません。

-e

-\-element

リポジトリにおける 1 つのエレメントの相対パス。リポジトリにおける将来の位置を基準にして指定します。

例: /databases/admin/view s/incidents.vql

-re

-\-repository-element

エレメントの ID パス。

この ID の構文は、 database:type[:subtype]:[folderPath/]name です。

例: admin:view:/incidents

type の値は、 datasourceviewwebservicewidgetstoredprocedurefolder 、または database です。

subtype の値として、 customdfessbaseitpjdbcjsonldapodbcolapsalesforcesapbwbapisaperpws 、または xml を指定できます。

-su

-\-singleuser

1 つのファイルにエクスポートする場合 (--file) にのみ有効。

指定されている場合、生成されるファイルの先頭に ENTER SINGLE USER MODE 、最後に EXIT SINGLE USER MODE が追加されます。

これにより、Virtual DataPort は、このファイルをインポートする間、シングルユーザーモードに切り替わります。

リポジトリにエクスポートする場合は、このオプションは無視されます。

: シングルユーザーモードで Virtual DataPort サーバーにメタデータをインポートすることが強く推奨されます。

-P

-\-property

エクスポートプロセスを制御する一連の設定。次の構文を使用して 1 つまたは複数のプロパティを指定できます。

<property name> = {yes | no}

使用可能なプロパティを、表「 Properties than can be passed to the export script (--property parameter)」に示します。

エクスポートプロセスを制御するプロパティ (-P--property) を以下に示します。

export スクリプトに渡すことができるプロパティ (パラメーター -\-property)

cluster

デフォルト値: no

yes の場合、以下のエレメントはエクスポート されません

  • JMS リスナー: JMS キューまたは JMS トピックに接続するのは、複数のサーバーの中の 1 つだけである必要があります。

  • 各データベースの「キャッシュメンテナンスタスク」の構成: ただし、このオプションを指定しても、「キャッシュメンテナンスタスク」のグローバル構成はエクスポートされます。

  • サーバーコネクション設定:

    • サーバーポート番号

    • ODBC ポート番号

    • 監視ポート番号

    • 補助監視ポート番号

    • シャットダウンポート番号

    • Web コンテナー HTTP ポート番号

    • Web コンテナーシャットダウンポート番号

    • 補助 Web コンテナーポート番号

  • サーバーおよび組み込み Web コンテナーの JVM 設定

Virtual DataPort サーバーのクラスターが存在する環境で動作する場合、メインサーバーには、それ以外のサーバーとは異なる設定を使用する必要があります。たとえば、「キャッシュメンテナンスタスク」はサーバーの 1 つでのみアクティブにすることができます。このシナリオでは、メインサーバーからメタデータをエクスポートして他のサーバーにインポートする際に、パラメーター -P cluster=yes を追加することが推奨されます。

パラメーター -P cluster=yes を追加することは、以下のプロパティを追加することと同等です。

-P includeJMSListeners=no

-P includeDatabaseCacheMaintenanceProperties=no

-P
excludeServerConfigurationProperties
=com.denodo.vdb.vdbinterface.server.
VDBManagerImpl.registryURL,com.denod\
o.vdb.vdbinterface.server.VDBManager\
Impl.registryPort,com.denodo.vdb.vdb\
interface.server.VDBManagerImpl.shut\
downPort,com.denodo.vdb.vdbinterface\
.server.VDBManagerImpl.factoryPort,c\
om.denodo.vdb.vdbinterface.server.VD\
BManagerImpl.odbcPort,com.denodo.vdb\
.cache.cacheMaintenance,java.env.DEN\
ODO_OPTS_START,java.env.DENODO_OPTS_STOP

-P
excludeWebContainerConfigurationProp\
erties=com.denodo.tomcat.http.port,c\
om.denodo.tomcat.shutdown.port,com.d\
enodo.tomcat.jmx.rmi.port,com.denodo\
.tomcat.jmx.port,java.env.DENODO_OP\
TS_START,java.env.DENODO_OPTS_STOP

exclude_jdbc_wrapper_properties

-P includeProperties=yes を追加する場合に、 CREATE WRAPPER JDBC ステートメントのパラメーター CATALOGNAMESCHEMANAME にプロパティではなく実際の値を含めたいときは、 -P exclude_jdbc_wrapper_properties=yes を追加してください。

デフォルト値: no

excludeServerConfigurationProperties

Virtual DataPort サーバー全体をエクスポートする場合、出力にはサーバーのすべての設定 (キャッシュモジュール、同時リクエスト数、デフォルトロケールなど) が含まれます。

このプロパティは、プロパティのカンマ区切りリストであり、プロパティの値はエクスポートされません。カンマと各プロパティ名の間にスペース文字が入っていないことを確認してください。

デフォルト値: 空のリスト

有効な値:

  • com.denodo.vdb.vdbinterface.ser ver.VDBManagerImpl.registryURL

  • com.denodo.vdb.vdbinterface.ser ver.VDBManagerImpl.registryPort

  • com.denodo.vdb.vdbinterface.ser ver.VDBManagerImpl.shutdownPort

  • com.denodo.vdb.vdbinterface.ser ver.VDBManagerImpl.factoryPort

  • com.denodo.vdb.vdbinterface.ser ver.VDBManagerImpl.odbcPort

  • com.denodo.vdb.cache.cacheMaint enance

  • java.env.DENODO_OPTS_START

  • java.env.DENODO_OPTS_STOP

excludeWebContainerConfigurationProperties

Virtual DataPort サーバー全体をエクスポートする場合、出力には、組み込み Web コンテナーのすべての設定が含まれます。

このプロパティは、プロパティのカンマ区切りリストであり、プロパティの値はエクスポートされません。

デフォルト値: 空のリスト

有効な値:

  • com.denodo.vdb.vdbinterface.ser ver.VDBManagerImpl.registryURL

  • com.denodo.tomcat.http.port

  • com.denodo.tomcat.shutdown.port

  • com.denodo.tomcat.jmx.rmi.port

  • com.denodo.tomcat.jmx.port

  • java.env.DENODO_OPTS_START

  • java.env.DENODO_OPTS_STOP

includeEnvSpecificElements

yes の場合、出力には、環境に依存しないエレメントを作成するための VQL は含まれず、環境に依存するエレメント (データソース、ユーザーとその権限、JMS リスナー、サーバー設定など) を作成するための VQL のみが含まれます。

環境に依存しているとみなされるエレメントのリストについては、「 Exporting Environment-Dependent and Independent Elements to Different Files 」のセクションを参照してください。

: このオプションは非推奨です。代わりに includeProperties オプションを使用してください。

includeNonEnvSpecificElements

yes の場合、出力には、環境に依存するエレメントを作成するための VQL は含まれず、環境に依存しないエレメント (ビュー、Web サービス、ウィジェットなど) を作成するための VQL のみが含まれます。

環境に依存していないとみなされるエレメントのリストについては、「 Exporting Environment-Dependent and Independent Elements to Different Files 」のセクションを参照してください。

: このオプションは非推奨です。代わりに includeProperties オプションを使用してください。

replaceExistingElements

yes の場合、CREATE ステートメントで REPLACE 句が使用されます。次に例を示します。

CREATE OR REPLACE VIEW p_customer AS SELECT ...

dropElements

yes の場合、各エレメントの CREATE ステートメントの前に DROP ステートメントが付加されます。次に例を示します。

DROP VIEW IF EXISTS p_customer CASCADE; CREATE VIEW p_customer AS SELECT ...

includeContents

yes の場合、フォルダーをエクスポートすると、出力には、このフォルダーとそこに含まれるエレメント (他のフォルダーを含む) を作成するための VQL ステートメントが含まれます。

no の場合、出力には、このフォルダーを作成するための VQL ステートメントのみが含まれます。

デフォルト値: no

includeCreateDatabase

データベース全体をエクスポートする場合にのみ有効です。

yes の場合、出力には、エクスポートされたデータベースを再作成する以下のステートメントが含まれます。

DROP DATABASE IF EXISTS <exported db name>; CREATE DATABASE <exported db name>;

サーバーのすべてのメタデータをエクスポートする場合、出力にはすでに、データベースを作成するためのステートメントが含まれています。

includeCustomComponents

yes の場合に、出力に ITPilot ラッパーが含まれていると、出力には、それらのラッパーによって使用される ITPilot カスタムコンポーネントも含まれます。

includeDatabaseCacheMaintenanceProperties

サーバーまたは 1 つのデータベースのメタデータをエクスポートする場合、出力には、「キャッシュメンテナンスタスク」の設定が含まれます。

no の場合、出力にはどのデータベースの「キャッシュメンテナンスタスク」の設定も含まれません。ただし、サーバー全体のメタデータをエクスポートする場合、出力には、このタスクのグローバル設定が含まれます。

デフォルト値: yes

includeDependencies

yes の場合、出力には、エクスポートするエレメントが依存しているエレメントを作成するための VQL ステートメントが含まれます。

たとえば、このオプションを yes にして基本ビューをエクスポートする場合、データソースのメタデータもエクスポートされます。

データベース全体またはサーバー全体のメタデータをエクスポートするのではない場合にのみ役立ちます。

includeDeployments

yes の場合、出力には、デプロイされている Web サービスの DEPLOY ステートメントが含まれます。

デフォルト値: no

includeJars

yes の場合、出力には、Administration Tool の [File] > [Jar Management] ウィザードでサーバーにインポートした jar が含まれます。

サーバー全体のメタデータをエクスポートするのではない場合、出力には、エクスポートするエレメントで使用される jar のみが含まれます。

デフォルト値: no

includeJMSListeners

yes の場合、出力には、JMS リスナーを作成するためのステートメントが含まれます。

デフォルト値: yes

includeProperties

2 つのファイルを生成します。一方にはメタデータが含まれ、もう一方にはサーバーが動作する環境に値が依存するパラメーターの値が含まれます。

リポジトリにエクスポートする場合 (--repository) は、このオプションを使用できません。

includeScanners

yes の場合に、出力に ITPilot ラッパーが含まれていると、出力には、それらのラッパーによって使用される ITPilot スキャナーも含まれます。

includeStatistics

デフォルトでは、ビューの統計情報は、サーバー全体をエクスポートするときにのみエクスポートされます。データベースやビューをエクスポートするときにはエクスポートされません。ビューの統計情報を結果に含めるには、オプション 'includeStatistics'='yes' を追加してください。

デフォルト値: no

includeUserPrivileges

yes の場合、出力には、エクスポートされたエレメントの権限を複製するステートメントが含まれます。つまり、以下の処理を実行するステートメントが含まれます。

  • エクスポートされたエレメントの所有者またはそれらに対する権限が割り当てられているユーザーとロールを作成する。

  • 作成したユーザーまたはロールに、エクスポートされたビューに対する権限を割り当てる。

デフォルト値: no

includeVCSConfiguration

オプション -P includeCreateDatabase=yes を指定してデータベースをエクスポートすると、出力にステートメント CREATE DATABASE と ALTER DATABASE が含まれるので、データベースの VCS 設定を含め、同じ構成でデータベースが作成されます。VCS 設定をエクスポートしたくない場合は、 -P includeVCSConfiguration=no を追加してください。

デフォルト値: yes

このスクリプトは、以下のいずれかの終了コードを返します。

  • 0: エラーなし。メタデータは正常にエクスポートされました。

  • 126: エレメントのいずれかをエクスポートできませんでした。

  • 1: 他のエラー。たとえば、スクリプトで Virtual DataPort サーバーとのコネクションを開くことができませんでした。

例 1:

export --server "//localhost:9999/database1"
       --login admin
       --password encrypted:Gr16MjvuXhRzPtPH/yTXHw==
       --singleuser
       --file serverexport.vql
       --property includejars=yes
       --property includescanners=yes
       --property includeCustomComponents=yes

この例では、 localhost のポート 9999 で動作するサーバーの database1 のメタデータを、資格情報 admin/admin を使用してエクスポートしています。暗号化されたパスワードは encrypt_password スクリプトを使用して取得しています。

結果は serverexport.vql ファイルに保存されます。

例 2:

export --server "//localhost:9999"
       --login admin
       --password admin
       --singleuser
       --repository "C:/repository"
       --property includejars=yes
       --property includescanners=yes
       --property includeCustomComponents=yes

この例では、すべてのデータベースのメタデータと、サーバーの設定をリポジトリにエクスポートしています。リポジトリは C:\repository ディレクトリに作成されます。

例 3:

export --server "//localhost:9999"
       --login admin
       --password encrypted:Gr16MjvuXhRzPtPH/yTXHw==
       --singleuser
       --repository "C:/repository"
       --repository-element
         "vdp_testing:datasource:jdbc:/Data sources/internet_ds"

この例では、 vdp_testing データベースの internet_ds という名前の JDBC データソースのメタデータをリポジトリにエクスポートしています。