1.4.1 バージョンアップ前にすること
バージョンアップをする前に,次に示す内容を必ず実施してください。
また,セキュリティ監査機能を使用している場合は,マニュアル「HiRDB Version 9 システム運用ガイド」の「バージョンアップ時の注意事項」も参照してください。
以降,Windowsの[コマンドプロンプト]の画面を使って,コマンドとユティリティを実行してください。
- 〈この項の構成〉
-
(1) 空き領域の確認
データベース状態解析ユティリティ(pddbst)で,データディクショナリ用RDエリアに必要な空き領域があるかどうかを確認してください。空き領域がない場合は,次に示すどちらかの方法で空き領域を確保してください。
-
データベース再編成ユティリティ(pdrorg)でディクショナリ表を再編成します。
-
データベース構成変更ユティリティ(pdmod)でデータディクショナリ用RDエリアを拡張します。
この空き領域の確認は,旧バージョンと新バージョンを入れ替えるときにだけ必要です。修正版HiRDBへの入れ替えの場合は不要です。
ユティリティを実行する方法については,マニュアル「HiRDB Version 9 コマンドリファレンス」を参照してください。
- バージョンアップに必要な空き領域
-
バージョンアップをする前のHiRDBのバージョンに応じて,次の表に示す空き領域があるかどうかを確認してください。空き領域が不足していると,バージョンアップ後のHiRDB開始時又はpdvrupコマンド実行時に容量不足でエラーとなることがあります。
表1‒4 バージョンアップするのに必要な空き領域 データディクショナリ用
RDエリアに格納している
ディクショナリ表
データディクショナリ用RDエリアに
必要な空きセグメント数
07-00以降
から
バージョン
アップ
する場合
08-00以降
から
バージョン
アップ
する場合
09-00以降
から
バージョン
アップ
する場合
SQL_COLUMNS表
↑70÷S↑
↑33÷S↑
↑21÷S↑
SQL_INDEXES表
↑9÷S↑
↑5÷S↑
↑4÷S↑
SQL_INDEX_COLINF表
↑11÷S↑
↑2÷S↑
↑2÷S↑
SQL_VIEWS表
↑30÷S↑
↑23÷S↑
↑16÷S↑
SQL_VIEW_DEF表
↑232÷S↑
↑106÷S↑
↑68÷S↑
SQL_VIEW_TABLE_USAGE表
↑6÷S↑
↑5÷S↑
↑5÷S↑
SQL_TABLES表
↑14÷S↑
↑8÷S↑
↑8÷S↑
SQL_TABLE_PRIVILEGES表
↑10÷S↑
↑5÷S↑
↑2÷S↑
SQL_ROUTINES表※
↑14÷S↑
↑14÷S↑
−
SQL_ROUTINE_PARAMS表※
↑14÷S↑
↑10÷S↑
−
- (凡例)
-
−:該当しません。
S:対象表を格納するデータディクショナリ用RDエリアのセグメントサイズ
- 注※
-
データディクショナリLOB用RDエリアを定義していない場合は不要です。
(2) システム用RDエリアのバックアップの取得
データベース複写ユティリティ(pdcopy)で,次に示すRDエリアのバックアップを取得してください。
-
マスタディレクトリ用RDエリア
-
データディレクトリ用RDエリア
-
データディクショナリ用RDエリア
-
監査証跡表を格納しているRDエリア(セキュリティ監査機能を使用している場合)
ただし,バージョンアップに成功した後にバージョンダウンを行う場合(例えば,テストのために一度バージョンアップした後,バージョンダウンして元の運用に戻す場合など)は,全RDエリアのバックアップを取得しておく必要があります。
- バックアップの取得手順
-
-
pdstopコマンドでHiRDBを正常終了させます。
-
pdstart -rコマンドでHiRDBを開始します。
-
データベース複写ユティリティ(pdcopy)でRDエリアのバックアップを取得します。このとき,参照・更新不可能モード(-M x指定)を指定してください。バックアップの取得方法については,マニュアル「HiRDB Version 9 システム運用ガイド」又は「HiRDB Version 9 コマンドリファレンス」を参照してください。
-
(3) HiRDBがオンライン状態であるかどうかの確認
pdlsコマンドですべてのユニットがACTIVEと表示されているかどうかを確認してください。ACTIVEと表示されている場合,pdstopコマンドで正常終了させてください。
(4) HiRDBの正常終了
バージョンアップする前にHiRDBを正常終了させてください。HiRDB/パラレルサーバの場合はシステムマネジャがあるマシンから終了させてください。HiRDBが既に終了している場合は,次に示す情報を参照してHiRDBが正常終了しているかどうかを確認してください。
-
メッセージログファイル又はイベントログ
正常終了していない場合は,pdstartコマンドでいったんHiRDBを開始して,pdstopコマンドで正常終了させてください。
(5) HiRDBの状態確認
HiRDBをバージョンアップするユニットの状態を確認するため,pdls -d ustコマンドを実行します。
- 終了ステータスが4の場合(ユニットの状態がSTARTING又はSTOPPING):
-
HiRDBが開始処理の途中,又は停止処理の途中です。処理が終了してからpdls -d ustコマンドを再度実行してください。
- 終了ステータスが8の場合(ユニットの状態がPAUSE):
-
障害によって,プロセスサービスの再起動を中断した状態です。KFPS00715-Eメッセージ及びこのメッセージ以前のイベントログに出力されたメッセージを参照して障害の原因を取り除いてから,サービスを開始してください。その後,ユニットを再開始して,pdstopコマンドで正常終了させてください。
(7) コマンド,ユティリティ,アプリケーション,及びHiRDBと連携している製品の停止
コマンド,ユティリティ,アプリケーションは終了させてください。また,HiRDB Datareplicator,HiRDB Dataextractor,及びJP1/PFMなどのHiRDBにアクセスする連携製品についても,あらかじめ停止しておいてください。これらを停止しないと,実行形式ファイルや共用ライブラリの削除に失敗し,バージョンアップに失敗することがあります。
(8) HiRDBシステム定義のオペランド省略値の確認
HiRDBでは,HiRDBのバージョン,リビジョンごとにHiRDBシステム定義の省略値を見直して変更しています。バージョン09-50以降,オペランド省略時動作として,推奨値を仮定する推奨モードと,特定のバージョンの省略値を仮定する互換モードを提供しています。通常は,より安全なシステムを構築するために,指定が必要なオペランド数を大幅に削減した推奨モードの適用を検討してください。バージョン09-50以降,特定のバージョンの省略値を仮定する場合は互換モードを適用し,pd_sysdef_default_optionオペランドは指定しないでください。
-
バージョン09-50より前のバージョンからバージョンアップを行う場合
省略値変更によるメリット及びデメリットについて,マニュアル「HiRDB Version 9 システム定義」の「バージョン,リビジョンによるHiRDBシステム定義の変更点」で確認してください。確認の結果,旧バージョンとの互換性を重視する場合は,旧バージョンと同等の省略値になる互換モードを適用してください。ただし,この場合はすべてのオペランドが旧バージョンの省略値となりますので,各オペランドに推奨値を指定することを検討してください。
-
バージョン07-00以前からのバージョンアップを行う場合,又はpd_sysdef_default_optionオペランドを指定している場合
前述の「バージョン09-50より前のバージョンからバージョンアップを行う場合」の変更に加えて,マニュアル「HiRDB Version 9 システム定義」の「バージョン09-50より前のバージョンで省略値が変更になったオペランド,及び指定不要になったオペランド」のメリットの説明を参照して,各オペランドの指定値に推奨値を指定することを検討してください。
(9) そのほかの省略値の確認
HiRDBでは,ユティリティのオプション,SQLのオプション,及びリソース数に関連する環境変数をHiRDBのバージョン,リビジョンごとに見直して変更しています。
バージョン09-50より前のバージョンからバージョンアップを行う場合は,省略値変更によるメリット及びデメリットを次の箇所で確認してください。確認の結果,旧バージョンとの互換性を重視する場合は,旧バージョンと同等の省略値になる互換モードを適用してください。ただし,この場合はすべてのオペランドが旧バージョンの省略値となりますので,各オペランドに推奨値を指定することを検討してください。
-
マニュアル「HiRDB Version 9 コマンドリファレンス」の「バージョンアップによって省略値が変更,又は指定不要になったオプション及び制御文」
-
マニュアル「HiRDB Version 9 SQLリファレンス」の「バージョン,リビジョンによるSQL構文の省略時解釈の変更点」
(10) メモリ所要量の確認
HiRDBをバージョンアップすると,HiRDBのメモリ所要量が増えることがあります。「HiRDBのメモリ所要量」を参照してHiRDBのメモリ所要量を確認してください。
(11) ステータスファイルの容量の確認
HiRDBをバージョンアップすると,HiRDBのステータスファイル容量が増えることがあります。「ステータスファイルの容量の見積もり」を参照してHiRDBのステータスファイルの容量を確認してください。
(12) シンクポイントダンプファイルの容量の確認
HiRDBをバージョンアップすると,HiRDBのシンクポイントダンプファイルの容量が増えることがあります。「シンクポイントダンプファイルの容量の見積もり」を参照してHiRDBのシンクポイントダンプファイルの容量を確認してください。
(13) システムログファイルの総レコード数の確認
バージョンアップする場合は,上書きできる状態のシステムログファイルの総レコード数を確認してください。次の表に示す総レコード数より少ないと,バージョンアップに失敗することがあります。
対象バージョン |
総レコード数※ |
||
---|---|---|---|
システムログファイルのレコード長 |
|||
1024の場合 |
2048の場合 |
4096の場合 |
|
07-00以降から バージョンアップする場合 |
4580 |
2470 |
1310 |
08-00以降から バージョンアップする場合 |
2540 |
1310 |
710 |
09-00以降から バージョンアップする場合 |
1560 |
810 |
450 |
なお,HiRDB/パラレルサーバの場合は,ディクショナリサーバのシステムログファイル(上書きできる状態)の総レコード数を確認してください。
- 注※
-
次に示すどちらかの方法でシステムログファイルの総レコード数を確認してください。
-
pdloginitコマンドの-nオプションの指定値の合計が総レコード数となります。
-
pdlogls -d sys -s サーバ名 -eコマンドを実行してください。実行結果のRecode-countの先頭部分に出力されたレコード数(16進数)の合計が総レコード数となります。
-
(14) HiRDB運用ディレクトリ下のファイルのバックアップの取得
バージョンアップの失敗に備えて,HiRDB運用ディレクトリ下(%PDDIR%\conf下)のファイルのバックアップを取得してください。取得したバックアップは,新バージョンの動作確認後に削除してください。
(15) 付加PPのバージョンアップ
バージョンアップ前のHiRDBで付加PPを使用していた場合,HiRDBと同じバージョンの付加PPをインストールする必要があります。付加PPについては,「付加PPのインストール時の注意」を参照してください。
(16) 追加された予約語の確認
SQLの拡張に伴って,HiRDBの各バージョンで次の予約語を追加しています。SQL文中に,予約語と同じ名前を引用符で囲まないで使用している場合は,バージョンアップ後にSQL文が文法エラーになることがあります。
HiRDBのバージョン |
追加した予約語 |
---|---|
06-00 |
GET_JAVA_STORED_ROUTINE_SOURCE, IS_USER_CONTAINED_IN_HDS_GROUP |
06-01 |
なし |
06-02 |
BIT_AND_TEST |
07-00 |
CONDITION, EXIT, HANDLER, TIMESTAMP_FORMAT, VARCHAR_FORMAT |
07-01 |
FREE, LOCATOR |
07-02 |
なし |
07-03 |
OVER |
08-00 |
ENCRYPT |
08-01 |
なし |
08-02 |
COUNT_FLOAT, SQLCODE_OF_LAST_CONDITION, SQLERRM_OF_LAST_CONDITION, XML, XMLAGG, XMLEXISTS, XMLQUERY, XMLSERIALIZE |
08-03 |
なし |
08-04 |
XMLPARSE |
08-05 |
なし |
09-00 |
なし |
09-01 |
なし |
09-02 |
なし |
09-03 |
COMPRESSED |
引用符で囲んでいない名前が,追加された予約語と重複している場合は,マニュアル「HiRDB Version 9 SQL リファレンス」の「SQLの予約語と重複したときの対応」を参照して,対処してください。