WebSphere Application Server バージョン 6.1.x のアップグレード時に、
マイグレーション・ツールは、組み込みフレームワークのみを介してアクセスされる、Cloudscape のインスタンスをアップグレードしようとします。
(新規バージョンの Cloudscape は、バージョン 10.1.x で、Derby をベースにしています。) 自動アップグレードでは、Network Server フレームワークを介して
アプリケーションと交渉する Cloudscape インスタンスは除外されます。
この除外により、WebSphere Application Server と同じデータベース・インスタンスにアクセスする、サード・パーティーのアプリケーションを破壊するリスクがなくなります。
Network Server フレームワークを介してアクセスされるデータベース・インスタンスは、手動でアップグレードする必要があります。
自動マイグレーションに失敗したデータベースにも同じ処理を実行してください。
始める前に
Cloudscape バージョン 10.1.x は、実働データベースとして使用しないでください。
開発およびテスト目的にのみ使用してください。
理解を深める: 新規バージョンの Cloudscape では、Derby ランタイムに IBM Quality Assurance (QA) や各国語サポート (NLS) などの利点が付加されています。
- Cloudscape バージョン 10.1.x のオープン・ソース・コード・ベースについて詳しくは、以下の IBM 関連情報セクションに示されている Cloudscape 製品の Web ページを参照してください。
- Cloudscape のバージョン 10.1.x とバージョン 5.1.60x (およびそれ以前のバージョン) の間の非互換性を調べるには、
Cloudscape マイグレーションに関するオンライン文書を参照する IBM 関連情報リンクを参照してください。
組み込みフレームワークを介してアクセスされる、Cloudscape のインスタンスの場合は、自動アップグレード処理に完全に失敗したインスタンスと、一部のみがアップグレードされたインスタンスとを判別してください。
項目
Cloudscape バージョン 10.1.x 自動マイグレーションの検査
には、
さまざまなマイグレーション・ログからデータベース・エラーと診断データを明らかにする方法の説明があります。
ログ・メッセージには、手動マイグレーションの実行に使用する必要がある新旧データベースの絶対パス名が含まれています。
これらの新規パス名を正確にメモしてください。
自動マイグレーション処理時に一部のみがアップグレードされたデータベースの場合のマイグレーション・エラーのリスクを最小にするには、新規データベースを削除します。
ログ診断データに基づいて元のデータベースのトラブルシューティングを行い、さらに、元のデータベースで手動マイグレーションを実行します。
このタスクについて
以下のセクションは、組み込みフレームワークと Network
Server フレームワークの両方を介してアクセスされる Cloudscape インスタンスをマイグレーションするステップから構成されています。
Cloudscape Network Server フレームワークのみに適用されるステップは、そのように記載されています。
マイグレーションのベスト・プラクティスとして、
ユーザー ID に次のいずれかの権限があるようにしてください。
- Cloudscape インスタンスにアクセスするアプリケーション・サーバーの管理者
- データベース・インスタンスにアクセスできる umask
それ以外の場合は、データベース・インスタンスの読み取り専用に関するランタイム・エラーが表示されます。
プロシージャー
- Network Server フレームワークのみ: Cloudscape データベースの各クライアントが Cloudscape v10.1.x をサポートできることを確認してください。
データベースの WebSphere
Application Server クライアントは、Application Server のバージョン 6.1.x または 6.02.x を実行している必要があります。
混合ノード・セルの場合、Cloudscape 10.1.x にアクセスするために事後マイグレーションが作成されたデータ・ソースを使用できるのは、WebSphere Application Server バージョン 6.02 以降のノードのみであることに注意してください。
本製品の旧バージョンは、新規の Cloudscape をサポートしません。
バージョン 6.02 以前のノードにあるアプリケーションが セル・スコープの Cloudscape
10.1.x データ・ソースにアクセスしようとすると、Application Server はランタイム例外を出します。
- Network Server フレームワークのみ: データベースをオフラインにします。
マイグレーション処理中は、どのクライアントもデータベースにアクセスできません。
- Application Server が提供するサンプルの Cloudscape マイグレーション・スクリプト db2jmigrate.bat または db2jmigrate.sh を調べます。
いずれのスクリプトのパスも、install_root¥derby¥bin¥embedded¥... になります。
スクリプトは、環境の要件に合わせて変更できます。
このスクリプトで使用できるオプションについては、
http://publib.boulder.ibm.com/epubs/html/c1894711.htmlの Cloudscape マイグレーション資料を参照してください。
例えば、オプション -DB2j.migrate.ddlFile=filename を使用して
新規データベースの DDL ファイルを指定できます。
- マイグレーション・スクリプトを実行する際にデータベースのデバッグ・ログを生成するには、
「debug migration trace」がアクティブになっていることを確認します。
デフォルトでは、このトレース機能は使用可能になっています。
デバッグ・トレース機能が無効になっている場合は、有効にしてください。
- 管理コンソールでトレース・オプションを設定するには、コンソール・ナビゲーション・ツリーで「トラブルシューティング」
> 「ロギングおよびトレース」をクリックします。
- アプリケーション・サーバー名を選択します。
- 「Change Log Level Details」をクリックします。
- オプション: 「すべてのコンポーネント」 が使用可能になっている場合は、
いったんオフにしてから、特定のコンポーネントを使用可能にできます。
- オプション: コンポーネントまたはグループ名を選択します。詳しくは、
ログ・レベル設定
を参照してください。
選択した
サーバーが稼働していない場合は、グラフィック・モードで個々のコンポーネントを見ることはできません。
- トレース・ストリング・ボックスにトレース・ストリングを入力します。 この場合、次のいずれかを入力します。
- all traces*=all
- com.ibm.ws.migration.WASUpgrade=all
トレースについて詳しくは、トレースによる処理
を参照してください。
- 「適用」を選択してから、「OK」を選択します。
- スクリプトを実行する際は、旧データベース名と、新規データベースの事後マイグレーションの絶対パスを指定します。
例: E:¥WebSphere¥AppServer¥derby¥bin¥embedded>db2jMigrate.bat myOldDB myNewDB
自動マイグレーションのログには、旧データベースとターゲット・データベースについて指定する絶対パス名が記載されています。
新規データベースを指定するには、このターゲット・データベース名を使用する必要があります。
それは、マイグレーションされた Cloudscape データ・ソース (WebSphere Application
Server のマイグレーション・ユーティリティーによって更新されています) が、現在はターゲット・データベース名を指すようになっているためです。
以下のサンプル・テキストは、ログ・メッセージでターゲット・データベース名がどのように表示されるのかを示しています。
DSRA7600E: Cloudscape migration of database instance C:¥temp¥migration2¥profiles¥AppSrv01¥
installedApps¥ghongellNode01Cell¥DynamicQuery.ear¥EmployeeFinderDB to new database instance
C:¥WebSphere¥AppServer¥profiles¥AppSrv01¥databases¥C__WAS602_AppServer_profiles_AppSrv01_installedApps_ghongellNode01Cell_DynamicQuery.ear_EmployeeFinderDB failed,
reason: java.sql.SQLException: Failure creating target db
Network Server フレームワークを介してアクセスされる Cloudscape のインスタンスの場合は、
新規データベース用に任意の名前を入力します。
既存のデータ・ソースを変更して新規のデータベース名を指すようにすることを忘れないでください。
- マイグレーション・プロセスが終了した後で、
データベースのマイグレーション・ログを調べて、その結果を確認します。
各データベース・マイグレーション・ログのパス名は、
install_root/logs/derby/myFulldbPathName_migrationLog.log です。
マイグレーションに成功すると、データベースの・マイグレーション・ログには
以下のテキストに類似したメッセージが表示されます。
Check E:¥WebSphere¥AppServer¥derby¥myOldDB_migrationLog.log for progress
Migration Completed Successfully
E:¥WebSphere¥AppServer¥derby¥bin¥embedded>
それ以外の場合は、ログには、次の例のフォーマットでエラー・メッセージが表示されます。
Check E:¥WebSphere¥AppServer¥derby¥myOldDB_migrationLog.log for progress
ERROR: An error occurred during migration. See debug.log for more details.
ERROR XMG02: Failure creating target db
java.sql.SQLException: Failure creating target db
at com.ibm.db2j.tools.migration.MigrationState.getCurrSQLException(Unknown Source)
at com.ibm.db2j.tools.migration.MigrateFrom51Impl.handleException(Unknown Source)
at com.ibm.db2j.tools.migration.MigrateFrom51Impl.go(Unknown Source)
at com.ibm.db2j.tools.migration.MigrateFrom51Impl.main(Unknown Source)
at com.ibm.db2j.tools.MigrateFrom51.main(Unknown Source)
...
- マイグレーション・エラーの詳細データについては、
データベース・マイグレーション・ログに対応するデバッグ・ログを参照してください。
デバッグ・ログ・ファイルの絶対パス名は、
install_root/logs/derby/myFulldbPathName_migrationDebug.log です。
以下の行は、デバッグ・テキストのサンプルです。
sourceDBURL=jdbc:db2j:E:¥WebSphere¥myOldDB
newDBURL=jdbc:derby:e:¥tempo¥myNewDB
ddlOnly=false
connecting to source db <jdbc:db2j:E:¥WebSphere¥myOldDB>
connecting to source db <jdbc:db2j:E:¥WebSphere¥myOldDB> took 0.611 seconds
creating target db <jdbc:derby:e:¥tempo¥myNewDB>
creating target db <jdbc:derby:e:¥tempo¥myNewDB> took 6.589 seconds
initializing source db data structures
initializing source db data structures took 0.151 seconds
recording DDL to create db <E:¥WebSphere¥myOldDB>
recording DDL to create db <E:¥WebSphere¥myOldDB> took 5.808 seconds
結果
今までのステップで示されたように、データベースのマイグレーション・ログには、
「Migration Completed Successfully」というメッセージ、
またはマイグレーション失敗の例外を含むメッセージが表示されます。
次の作業
- マイグレーションに失敗するデータベースについては、
ログされているエラー・データに従いトラブルシューティングをします。
その後、マイグレーション・スクリプトを再実行します。
- 組み込みフレームワークを介して正常にアップグレードされたデータベースにアクセスするには、データ・ソースを変更して、新規データベース名を指すようにします。
- Network Server フレームワークを介して正常にアップグレードされたデータベースにアクセスするには、DB2 Universal JDBC ドライバーを使用することも、Derby Client JDBC ドライバーを使用することもできます。