UNIX と Windows の両方で、まず DB2 ツール db2imgr を使用し、 次に db2iupdt を使用して、 DB2 インスタンスをバージョン 7.2 からバージョン 8.1.x に移行します。 例:
db2imigr -u <fenced userid> <instance name> db2iupdt -u <fenced userid> <instance name>
その後、migrate コマンドと新規の db2extmdb ツールを使用して、 このインスタンスのすべてのデータベースを移行します。 例:
db2 migrate database <database name> db2extmdb <database name>
呼び出し元はインスタンス所有者でなければなりません。
プログラム db2extmdb は移行に関係のある db2ext 管理情報すべてを集めて DB2EXT.TMIGRATION という名前の新しい表に移動します。 この表では、各テキスト索引が 1 行で表わされます。 この移行情報表はデータベースの移行が正常に完了するまで残っていますが、 ユーザーがドロップしてはなりません。
エラーが起きた場合は、エラーを修正してもう一度 db2extmdb を呼び出します。
テキスト索引の移行中には、別の処理が行われます。 この処理の内容は「ログ表」の状態によって異なります。 ログ表が空であれば、索引が移行されて、最も早い方法で処理が行われます。 ログ表が空ではない場合、データベースとの整合状態が保証されないため、 索引を再作成することが必要になります。 この処理にはかなり時間がかかる場合があります。
移行の実行中には、 テキスト索引を持つユーザー表に何の変更も加えないようにします。
推奨事項 |
---|
db2extmdb プログラムを呼び出す前に、 ユーザーはすべての索引ディレクトリーとデータベースのバックアップを取っておく必要があります。 また、 バージョン 7.2 テキスト索引の作成のために使用したすべての文書モデル・ファイルが存在しており、 それらを読み取って使用できることを確認しておいてください。 DB2 インスタンスの移行後には、 以前の sqllib ディレクトリーが sqllib_v71 という名前に変更されます。 デフォルトの索引ディレクトリーに保管しているテキスト索引がある場合は、 sqllib_v71/db2ext/indexes ディレクトリーを 新規の sqllib ディレクトリー sqllib/db2ext/indexes に移動します。 |
注意および推奨事項 |
---|
移行のステップは次のファイルにログとして記録されます。 <os-dependent>/sqllib/db2ext/db2extm <database-name>.log HP-UX または Linux の場合、 これらのプラットフォームではテキスト情報エクステンダーがまだ使用できないため、 このステップは不要です。 また、DB2 テキスト情報エクステンダー バージョン 7.2 は、 今後使用できないことにも注意してください。 |