2017-04-05 1 views
0

1つのdashdbデータベースにいくつかのテーブルをコピーして、dashdbデータベースを分離する必要があります。通常、私はCSVファイルを1つからエクスポートし、Webコンソールを使用して別のファイルにロードしますが、特に1つのテーブルにCLOB列があるため、ixf + lobファイルにエクスポートしてインポートする必要があります。残念ながら、clpplusはデータベースがあるサーバーにのみエクスポートできます(私はアクセス権がありません)。これを取得する方法はわかりませんlobファイルをエクスポートします。誰もがこれを達成するために最高の方法を知っていますか?dashdbからIXFファイルとLOBファイルをエクスポートする方法

答えて

0

実際にCLOB値が32Kより小さい場合、EXPORTに提供するSELECTステートメントの一部としてVARCHAR値に変換しようとすることができます。

本当にLOBファイルをエクスポートする必要がある場合は、dashDBインスタンス内のユーザーのホームディレクトリに書き込んでから、/ home REST APIを使用してファイルをダウンロードできます。カール付き:https://developer.ibm.com/static/site-id/85/api/dashdb-analytics/

0

また、LOBを含む表をローカル・マシンにエクスポートし、別のdashDBにインポートすることもできます。

dashDBテーブルをローカルクライアントにエクスポートする1​​つの方法は、クライアントマシンのDB2コマンドラインプロセッサ(CLP)でEXPORTコマンドを実行することです。そのためには、このように、IBM Data Server Runtime Clientをインストールして、クライアントにごdashDBデータベースをカタログする必要があります。

CATALOG TCPIP NODE mydash REMOTE dashdb-txn-small-yp-lon02-99.services.eu-gb.bluemix.net SERVER 50000; 
CATALOG DATABASE bludb AS dash1 AT NODE mydash; 
CONNECT TO dash1 USER <username> USING <password>; 

さて、LOB列があるようにのは「mytableは」と呼ばれるテーブルをエクスポートしてみましょう

export to mytable.del of del 
     lobfile mylobs 
     modified by lobsinfile 
     select * from mytable; 

このエクスポートコマンドは、ファイルmytable.delおよびmylobs.001.lobを生成します。ファイルmytable.delには、各値のオフセットと長さを指定するファイルmylobs.001.lobへのポインタが含まれています。

LOBデータが大きすぎて単一のファイルに収まらない場合、追加ファイルmylobs.002.lob、mylobs.003.lobなどが作成されます。

エクスポートされたデータは、非圧縮形式でdashDBからローカルクライアントに送信されるため、データ量によっては時間がかかる場合があります。


れる.delと.LOBファイルは、あなたのラップトップまたはローカルサーバとして、クライアントマシン上に存在する場合は、LOB列を持つテーブルにこれらのファイルを摂取するIMPORTコマンドを使用することができます。 CLPでは、まずロードするdashDBデータベースに接続します。

元のテーブルがファイルmytable.delとmylobs.001.lobにエクスポートされ、これらのファイルがクライアントマシンのディレクトリ/ mydataにあるとします。次に、このコマンドは、ターゲット表にデータおよびLOBをロードします:

IMPORT FROM /mydata/mytable.del OF DEL 
    LOBS FROM /mydata 
    MODIFIED BY LOBSINFILE 
    INSERT INTO mytable2; 

このIMPORTコマンドは、クライアント・マシン上のDB2コマンド行プロセッサーで実行することができます。

関連する問題