データベースがアップグレード可能であることを検査します。
有効範囲
パーティション・データベース環境では、db2ckupgrade コマンドは、各データベース・パーティションを検査します。
コマンド構文
>>-db2ckupgrade--+-database-+-- -l--filename--+--------+-------->
'- -e------' '- -not1-'
>--+----------------------------+------------------------------><
'- -u--userid-- -p--password-'
コマンド・パラメーター
- database
- スキャンするローカル・データベースの別名を指定します。
- -e
- スキャン対象のローカルにカタログ作成されたデータベースをすべて指定します。
- -l filename
- データベースのスキャンで生成されたエラーおよび警告のリストを維持するログ・ファイルを指定します。
- -not1
- タイプ 1 索引の検査を使用不可にします。
このオプションが指定されていない場合、db2ckupgrade コマンドはタイプ 1 索引を検査し、type1_index_database-name.db2 スクリプト・ファイルを、ログ・ファイルに示されたのと同じディレクトリー内に作成します。このスクリプト・ファイルには、識別されたそれぞれのタイプ 1 索引に対する ALLOW WRITE ACCESS および CONVERT 節が指定された REORG
INDEXES ALL コマンドが含まれます。
- -u userid
- システム管理者のユーザー ID を指定します。
- -p password
- システム管理者のユーザー ID のパスワードを指定します。
使用上の注意
db2ckupgrade コマンドを実行するには、以下のようにします。
- Linux および UNIX オペレーティング・システムでは、アップグレード先にする新規 DB2® コピーをインストールします。
その後、DB2DIR/bin ディレクトリーから db2ckupgrade コマンドを実行します。ここで、DB2DIR は DB2 コピーがインストールされる場所です。
- Windows オペレーティング・システムでは、アップグレード先にする DB2 データベース製品 CD を挿入します。
それから db2ckupgrade コマンドを、CD 上の db2¥Windows¥Utilities ディレクトリーから実行します。
db2ckupgrade コマンドは、リモート・データベースとしてカタログされているデータベースに対して実行できません。
このコマンドは、以下のすべての条件が真であることを検査します。
- カタログされたデータベースが実際に存在している。
- データベースが不整合な状態ではない。
- データベースがバックアップ・ペンディング状態ではない。
- データベースがリストア・ペンディング状態ではない。
- データベースがロールフォワード・ペンディング状態ではない。
- 表がロード・ペンディング状態ではない。
- 表が再配分ペンディング状態ではない。
- (バージョン 9.8 以降の場合)
すべての表スペース・コンテナー・パスに同じマウント・ポイントを使用している。
- バージョン 9.8 フィックスパック 3 以降の場合、データベースの入出力書き込み操作がサスペンドされない。また、サスペンド中でない。
- システム・ビューに依存する MQT が存在しない。
- 表スペースが正常な状態である。
- データベースに、名前が ARRAY、BINARY、CURSOR、DECFLOAT、ROW、VARBINARY、または XML の、ユーザー定義タイプ (UDT) が含まれていない。
- データベースに、組み込みの DATALINK データ・タイプが含まれていない。
- データベースに、SYSPUBLIC という名前のスキーマがない。
- データベースに、データベース・アップグレード失敗の原因となる、システム・カタログ表内の孤立行がない。
- HADR 1 次データベースとして使用可能になっているデータベースが正常に接続できる。
- HADR データベースの役割がスタンバイでない。
- SYSCATSPACE が DMS 表スペースであり、AUTORESIZE が使用不可の場合、SYSCATSPACE には合計ページのうち少なくとも 50% の未使用ページがある。
- データベースが XML Extender には使用不可である。
アップグレード・プロセスに成功するには、ローカル・データベースはこれらすべてのチェック項目にパスする必要があります。
db2iupgrade コマンドは、db2ckupgrade コマンドを -not1 パラメーターを指定して呼び出し、db2ckupgrade のログ・ファイルとして update.log を指定します。
db2iupgrade 用に作成されるデフォルトのログ・ファイルは /tmp/db2ckupgrade.log.processID です。 db2ckupgrade コマンドで上にリストした条件のいずれかが真でないことが検出された場合、
db2iupgrade は失敗し、
DBI1205E エラー・コードを戻します。
インスタンスのアップグレード前にこれらのエラーを解決する必要があります。
db2ckupgrade コマンドは以下のいずれかの条件に対して、
-l パラメーターで指定されたログ・ファイルに警告メッセージを書き込みます。
- 列名、ルーチン・パラメーター名、または変数名が NULL と呼ばれている。
- タイプ 1 索引がデータベース内に存在している。
- ワークロード接続属性にアスタリスク (*) が含まれている。
- データベースが DB2 WebSphere® MQ 関数に使用可能である。
Windows オペレーティング・システムでのインストール中に、DB2 コピーを
「既存の処理」ウィンドウで
「アップグレード」アクションを指定して選択した場合、インスタンスにカタログされたローカル・データベースがあれば、メッセージ・ボックスによって
db2ckupgrade コマンドを DB2 データベース製品 CD から実行しなければならないことが警告されます。
それから、以下のいずれかのアクションを選択できます。
- メッセージを無視し、インストール・プロセスを続行する。
- db2ckupgrade コマンドを実行する。
このコマンドが正常に実行された場合、インストール・プロセスを続行します。
エラーを検出した場合は、インストール・プロセスを終了し、エラーを修正し、インストール・プロセスを再実行します。
- インストール・プロセスを終了します。
バージョン 9.5 データベースの場合、
-not1 パラメーターが省略されると、
db2ckupgrade コマンドは
db2IdentifyType1 コマンドを呼び出してタイプ 1 索引を識別し、指定のデータベースのタイプ 1 索引をタイプ 2 索引に変換するスクリプトを生成します。
db2IdentifyType1 コマンドは、処理を完了するのに長い時間がかかる可能性があります。
db2IdentifyType1 コマンドの実行時間は、データベース内の表の数、およびデータベース・パーティション数に比例します。
以下のパフォーマンスの考慮事項に注意してください。
- バージョン 9.5 データベースに多数の表がある場合、またはデータベース・パーティションの数が多い場合、あるいはその両方が当てはまる場合は、最初に db2IdentifyType1 コマンドを特定のスキーマまたは表 (パラメーター -s または -t を使用) に対して実行します。これをすべての表を処理するまで行います。
その後、db2ckupgrade コマンドに -not1 パラメーターを指定して実行してください。
- バージョン 9.5 パーティション・データベース環境の場合、すべてのタイプ 1 索引を検出するには、1 つのデータベース・パーティション (より良いパフォーマンスを得るにはカタログ・パーティションが望ましい) から db2ckupgrade コマンドを実行します。
データベースがアップグレードの準備ができていることを確認するには、『データベースがマイグレーションできる状態にあることの確認』を参照してください。