Ingres - データのインポート/エクスポート

Ingresは日々成長しているオープンソースのデータベース管理システムであり、同様に巨大なオンラインコミュニティによってサポートされています。 Ingresには 、ユーザーがデータのインポートまたはエクスポートに利用できるカスタムコマンドがあります 。 これを行うには、 unloaddbまたはcopydbコマンドを使用できます。 ただし、主な違いはこれらのコマンドのパラメータにあります 。 unloaddbはすべての基本オブジェクトを再グループ化しますが、copydbは呼び出されたオブジェクトだけを再グループ化します。 これらのコマンドcオプションは、ターゲットデータベースのポータブルコピーを作成するためのデータASCII形式インポートまたはエクスポートするために使用できます。

  • これらのコマンドを利用する
    • copydb
    • unloaddb
  • ノート

Ingresでは、あるIngresインストールから別のインストールにデータをエクスポートできます(これはプラットフォームに依存しない手順です)。

 unloaddb 

 copydb 

これら2つのコマンドの主な違いは、それらを定義するパラメータにあります。

unloaddbはすべての基本オブジェクト(フロントエンドタイプABF、OpenROAD、またはReport Writer、Replicatorカタログ用のツールのソースを含む)を再グループ化します。

copydbは、呼び出すオブジェクトを再グループ化します。

これらのコマンドを利用する

copydb

 copydb mydatabase mytable 

このコマンドは、テーブルmyTableとmydatabaseが存在する限り、copy.inとcopy.outの2つのファイルを生成します。

これらのファイルには一連のSQLコマンドが含まれています。

コピーアウト:

データのアンロード中:COPY TABLE ... INTO ...

copy.in:

テーブルの作成:CREATE TABLE ...

テーブルの構造:MODIFY ...

データの再読み込み:COPY TABLE ... FROM ...

インデックスの作成:CREATE INDEX ...

これらのファイルを使う:

データを取得するには

 sql mydatabase <copy.out 

データをリロードするには:

 sql mydatabase <copy.in 

unloaddb

 unloaddb mydatabase 

4つのファイルが生成されます:copy.in、copy.out、reload.ingおよびunload.ing(またはWindowsではreload.batおよびunload.bat)。

copydbコマンドと同様に、copy.inおよびcopy.outファイルには、データのアンロード、オブジェクトの作成(テーブル、インデックス、ルール、プロシージャ、ビュー)、およびデータの再ロードに必要なSQLコマンドが含まれています。 主な違いは、SQLコードを含むこれらのファイルを呼び出すプログラムを生成できるunloaddbです。

ノート

あるOSから別のOSに移植可能なコピーを作成するには、ASCII形式でエクスポート/インポートデータを生成できる-cオプション(これら2つのコマンドのそれぞれに使用可能)を使用します。

以下の変数は網羅的なものではありません。

II_DATE_FORMAT :日付フォーマット

II_DECIMAL :小数点記号

II_MONEY_PREC :精密マネーデータ型

II_MONEY_FORMAT :通貨データフォーマットタイプ(通貨)

II_NULL_STRING :ナル値を表すための文字

これらの変数は、ソースマシンとターゲットマシンの間で同一でなければなりません。

同じ場所、同じ番号、名前、および型を宣言します。 ディレクトリは異なる場合があります。

ターゲットデータベースをソースデータベースと同じ場所に拡張します。infodbコマンドを使用して、データベースで両方の場所を確認し、accessdbまたはextenddbを使用してベースを拡張します。

ファイルの結果(stdout)をキャプチャして、E_で始まる行を探します。 これは、Ingresが分析する必要があるエラーを示しています。

reloadまたはcopy.inが失敗した場合は、作成しようとしているオブジェクトがすでに存在していることが原因である可能性があります。

前の記事 次の記事

トップのヒント