前へ | 次へ | 目次 | 索引 |
新しいトランザクション・ログを作成します。
重要
ノードにトランザクション・ログがすでに存在するときに CREATE LOG コマンドで新しいトランザクション・ログを作成した場合,データを破損する恐れがあります。
トランザクション・ログを作成するディレクトリへの読み込みアクセス権と書き込みアクセス権が必要です。
CREATE LOG ファイル指定
ファイル指定
作成するトランザクション・ログのファイル指定DECdtm サービスでトランザクション・ログを使用するには,ファイル名の形式を SYSTEM$node.LM$JOURNAL とする必要があります。node は,ノード名です。
省略時の設定は,次のとおりです。
- ディスクとディレクトリを省略した場合,新しいトランザクション・ログは,論理名 SYS$JOURNAL が指すディレクトリの中で最初にアクセス可能なディレクトリに作成されます。SYS$JOURNAL は,エグゼクティブ・モードでシステム論理名テーブルに定義していなければなりません。
- ファイル・タイプを省略した場合,.LM$JOURNAL が使用されます。
SYS$JOURNAL が指していないディスクやディレクトリを指定すると,警告メッセージが表示されます。トランザクション・ログは作成されますが, (a) ログを作成したディスクとディレクトリを指すように SYS$JOURNAL を変更,または,(b) 作成したトランザクション・ログを SYS$JOURNAL が指すディレクトリに移動のいずれかの作業を行わないかぎり,使用されません。
/NEW_VERSION
既存のトランザクション・ログの新しいバージョンを作成します。
重要
既存のトランザクション・ログの新しいバージョンを作成すると,データが破損する恐れがあります。2 つのトランザクション・ログのデータをマージすることはできません。 DECdtm サービスは,新トランザクション・ログを使用した後では,古いトランザクション・ログのレコードにアクセスできません。
/OWNER=ユーザ識別子
トランザクション・ログの所有者を指定します。『Compaq OpenVMS ユーザーズ・マニュアル』に従って,UIC 標準形式で所有者を指定してください。
/SIZE=サイズ
トランザクション・ログのサイズをブロック単位で指定します。最小サイズは 100 ブロックです。省略時のサイズは 4,000 ブロックです。
LMCP> CREATE LOG/SIZE=5000 DISK$LOG1:[LOGFILES]SYSTEM$ORANGE.LM$JOURNAL |
ORANGE というノードに対し,5,000 ブロックのトランザクション・ログを DISK$LOG1:[LOGFILES] に作成しています。
トランザクション・ログの内容を表示します。トランザクション・ログとそのディレクトリへの読み込みアクセス権が必要です。
DUMP ファイル指定
ファイル指定
表示したい内容を持つトランザクション・ログのファイル指定省略時の設定は,次のとおりです。
- ディスクとディレクトリを省略した場合,新しいトランザクション・ログは,論理名 SYS$JOURNAL が指すディレクトリの中で最初にアクセス可能なディレクトリに作成されます。SYS$JOURNAL は,エグゼクティブ・モードでシステム論理名テーブルに定義していなければなりません。
- ファイル・タイプを省略した場合,.LM$JOURNAL が使用されます。
/ACTIVE
アクティブなトランザクションのレコードだけを選択します。/FORMAT(省略時の設定)
トランザクション・ログの内容を書式付きレコードとして表示するかどうかを指定します。16 進だけで表示するには, /NOFORMAT 修飾子と /HEX 修飾子の両方を指定してください。
/NOFORMAT/HEX 修飾子を指定せずに /NOFORMAT 修飾子を指定した場合,トランザクション・ログ・ヘッダだけが表示されます。
/HEX
トランザクション・ログの内容を,ASCII 文字と 16 進ロングワードの両方で表示することを指定します。16 進だけで表示するには, /NOFORMAT 修飾子と /HEX 修飾子の両方を指定してください。
/NOHEX(省略時の設定)/LOGID=ログ ID
ログ ID フィールドが指定した値に一致する構成要素を持つトランザクションのレコードだけを選択します。ログ ID は,Type フィールドの右の Log ID フィールドに表示されます。ハイフンも含め,実際に表示される値と同じ値を指定してください。
この修飾子を使用できるのは,/RM 修飾子と併用した場合だけです。
/OUTPUT[=ファイル指定]
出力ファイルを作成するディレクトリへの読み込みアクセス権と書き込みアクセス権が必要です。DUMP コマンドの出力先を指定します。省略した場合,出力は現在の SYS$OUTPUT 装置 (通常は,使用中のターミナル) に送られます。ファイルに出力するには, /OUTPUT 修飾子を使用します。ファイルを指定しない場合,省略時のディレクトリのファイル LMCP_DUMP.LIS に出力されます。
/RM=名前
指定した値で始まる名前の構成要素を持つトランザクションのレコードだけを選択します。構成要素名は,ASCII と 16 進の両方で Name フィールドに表示されます。
構成要素名に表示不能文字が含まれている場合,16 進形式の名前を使用すれば,そのレコードを選択できます。16 進形式の名前を使用するためには,2 桁の 16 進値を 1 つの対にして,逆に並べます。たとえば,次のような構成要素の名前を仮定します。
Name (11): "SYSTEM$RED" (4445 52244D45 54535953)この場合,/RM 修飾子には,次の値を指定します。
/RM=%X53595354454D24524544
/STATE=COMMITTED
コミット段階または準備段階のトランザクションのレコードだけを選択します。
/STATE=PREPARED/TID=トランザクション ID
指定したトランザクションのレコードだけを選択します。トランザクション ID は, Transaction ID フィールドに表示されます。ハイフンを含み,実際に表示される値とまったく同じ値を指定してください。
DUMP コマンドは,トランザクション・ログの内容を表示します。 例 14-1 に,トランザクション・ログの例を使用し,重要なフィールドについて説明します。
例 14-1 トランザクション・ログ例
Log Manager Control Program V1.1 Dump of transaction log DISK$LOGFILE:SYSTEM$BLUE.LM$JOURNAL;1 End of file block 4002 / Allocated 4002 Log Version 1.0 Transaction log UID: 647327A0-2674-11C9-8001-AA00040069F8 (1) Penultimate Checkpoint: 000000000239 0039 Last Checkpoint: 00000000042E 002E Dump of transaction log DISK$LOGFILE:SYSTEM$BLUE.LM$JOURNAL;1 Present Length: 134 (00000086) Last Length: 0 (00000000) VBN Offset: 0 (00000000) Virtual Block: 2 (00000002) (2) Section: 3 (00000003) Record number 1 (00000001),(3) 114 (0072) bytes (4) Transaction state (1): PREPARED (5) Transaction ID: 1D017140-2676-11C9-9F34-08002B174360 (6) (8-JUL-2000 14:08:29.14) DECdtm Services Log Format V1.1 (7) Type ( 2): CHILD (8) Log ID: F1469720-4A0C-11CC-8001-AA000400B7A5 (9) Name (13): "SYSTEM$WESTRN" (4E 52545345 57244D45 54535953) (10) Type ( 8): CHILD NODE (8) Log ID: F1469720-4A0C-11CC-8001-AA000400B7A5 (9) Name (6): "WESTRN" (4E52 54534557) (10) Type ( 3): LOCAL RM (8) Log ID: 037100C0-0019-0003-0100-000000000000 (9) Name (6): "ORANGE" (4547 4E41524F) (10)
重要なフィールドは,次のとおりです。
- トランザクション・ログ・ヘッダ - トランザクション・ログの属性情報
- セクション・ヘッダ - 複数のトランザクション・レコードで構成されるセクションのヘッダ
- レコード番号 - 10 進と 16 進によるレコード番号
- レコード・サイズ - 10 進と 16 進によるレコード・サイズ
- トランザクション状態 - レコードのタイプ
次のタイプがある。
- PREPARED
トランザクションが準備段階となったときに記録される。
このタイプのレコードは,トランザクションを開始したノードでは記録されません。- COMMITTED
トランザクションがコミット段階となったときに記録される。- FORGOTTEN
次の場合に記録される。
- Prepared タイプのレコードが記録されていたトランザクションを強制終了したとき。
- 構成要素がローカル DECdtm トランザクション・マネージャに対してトランザクションの出力のコミットを記録するように要求しない場合に,コミットされたトランザクションについて記録される。
DECdtm は,推定強制終了ロギング・プロトコルを使用します。- CHECKPOINT
トランザクション・ログをチェックポイントするときに,アクティブなトランザクション・レコードが使用する空間を圧縮することを目的として記録される。
他のレコード・タイプとは異なり,特定のトランザクションとは対応しません。チェックポイント・イベントをマークするため,DECdtm トランザクション・マネージャが内部的に使用します。
- トランザクション識別子 - DECdtm トランザクション・マネージャが出力する一意のトランザクション識別子 (TID)
- DECdtm サービス・ログ形式 - トランザクション・ログ形式のバージョン番号
- タイプ - トランザクションの構成要素のタイプ
次のいずれか。
- CHILD - 直接の子トランザクション・マネージャ
このトランザクション・マネージャは,トランザクションの出力確認のため,DECdtm ローカル・トランザクション・マネージャに問い合わせることがあります。- CHILD NODE - 直接の子トランザクション・マネージャが存在するノードの名前
- PARENT - 直接の親トランザクション・マネージャ
トランザクションの出力確認のため,DECdtm ローカル・トランザクション・マネージャが問い合わせるトランザクション・マネージャです。- PARENT NODE - 直接の親トランザクション・マネージャが存在するノードの名前
- LOCAL RM - ローカル・ノード上の資源マネージャ
- ログ識別子 - 構成要素のログの識別子
CHILD,CHILD NODE,PARENT,PARENT NODE の構成要素の場合, DECdtm トランザクション・ログの識別子です。ローカル資源マネージャの場合,そのプライベート・ログの識別子です。- 名前 - トランザクションの構成要素の名前
ASCII と 16 進形式の両方が表示されます。
LMCP> DUMP/RM="RMS$" DISK$LOGFILE:SYSTEM$BLUE.LM$JOURNAL |
BLUE というノードのトランザクション・ログの内容を表示しています。OpenVMS の RMS ジャーナリングが関わっているトランザクションだけを選択しています。
Dump of transaction log DISK$LOGFILE:SYSTEM$BLUE.LM$JOURNAL;1 End of file block 4002 / Allocated 4002 Log Version 1.0 Transaction log UID: 6A034B20-6FCC-0095-D7E4-EAA500000000 Penultimate Checkpoint: 00000000382E 002E Last Checkpoint: 000000003C2E 002E Dump of transaction log DISK$LOGFILE:SYSTEM$BLUE.LM$JOURNAL;1 Present Length: 46 (0000002E) Last Length: 512 (00000200) VBN Offset: 30 (0000001E) Virtual Block: 32 (00000020) Section: 1 (00000001) Record number 2 (00000002), 5 (0005) bytes Transaction state (3): CHECKPOINT Checkpoint record contains no active transactions. Record number 1 (00000001), 21 (0015) bytes Transaction state (0): FORGOTTEN Transaction ID: 271D9FC0-7082-0095-98E7-EAA500000000 Dump of transaction log DISK$LOGFILE:SYSTEM$BLUE.LM$JOURNAL;1 Present Length: 113 (00000071) Last Length: 512 (00000200) VBN Offset: 29 (0000001D) Virtual Block: 31 (0000001F) Section: 2 (00000002) Record number 1 (00000001), 93 (005D) bytes Transaction state (2): COMMITTED Transaction ID: 271D9FC0-7082-0095-98E7-EAA500000000 (3-MAR-2000 13:53:03.42) DECdtm Services Log Format V1.1 Type ( 2): CHILD Log ID: EF006060-CF37-11C9-8001-AA000400DEFA Name (10): "SYSTEM$ORANGE" (45 474E4152 4F244D45 54535953) Type ( 8): CHILD NODE Log ID: EF006060-CF37-11C9-8001-AA000400DEFA Name ( 6): "ORANGE" (4547 4E41524F) Type ( 3): LOCAL RM Log ID: 28C5D180-7082-0095-0000-000000000000 Name (22): "RMS$USER1.......`....." (0000 00178B60 00000000 00000031 52455355 24534D52) . . . Total of 1 transactions active, 0 prepared and 1 committed
LMCP コマンドのヘルプを出力します。
HELP [ヘルプ・トピック [ヘルプ・サブトピック]]
ヘルプ・トピック
ヘルプを出力する対象のコマンドを指定します。ヘルプ・サブトピック
ヘルプを出力する対象のパラメータまたは修飾子を指定します。
トランザクションの状態を変更します。
重要
REPAIR コマンドは,データを破損する恐れがあります。トランザクションに関わっている資源マネージャではトランザクション状態を変更できない場合以外には,使用しないようにしてください。
次の特権とアクセス権が必要です。
- CMKRNL 特権
- トランザクション・ログとそのディレクトリへの読み込みアクセス権と書き込みアクセス権
REPAIR ファイル指定
ファイル指定
状態を変更するトランザクションを格納している,トランザクション・ログのファイル指定REPAIR コマンドでは,次の条件が必要です。
- 論理名 SYS$JOURNAL をエグゼクティブ・モードで,システム論理名テーブルに定義している。
- 論理名 SYS$JOURNAL が指すディレクトリに,トランザクション・ログが格納されている。
- トランザクション・ログのファイル・タイプが .LM$JOURNAL である。
省略時の設定は,次のとおりです。
- ディスクとディレクトリを省略した場合,論理名 SYS$JOURNAL が指すディレクトリのトランザクション・ログが取り出されます。
- ファイル・タイプを省略すると,.LM$JOURNAL が使用されます。
/LOGID=ログ ID
指定したログを使用する構成要素を持つトランザクションだけを選択します。ログ ID は,DUMP コマンドの出力の Type フィールドの右の Log ID に表示されます。指定する値は,ハイフンを含み,実際に表示される値とまったく同じ値を指定してください。
この修飾子を使用できるのは,/RM 修飾子と併用した場合だけです。
/RM=名前
指定した値で始まる名前の構成要素を持つトランザクションのレコードだけを選択します。構成要素名は,DUMP の出力の Name フィールドに,ASCII と 16 進で表示されます
構成要素名に表示不能文字が含まれている場合,16 進形式の名前を使用すれば,そのレコードを選択できます。16 進形式の名前を使用するためには,2 桁の 16 進値を 1 つの対にして,逆に並べます。たとえば,次のような構成要素の名前を仮定します。
Name (11): "SYSTEM$RED" (4445 52244D45 54535953)この場合,/RM 修飾子には,次の値を指定します。
/RM=%X53595354454D24524544
/STATE=COMMITTED
コミット段階または準備段階のトランザクションのレコードだけを選択します。
/STATE=PREPARED/TID=トランザクション ID
指定したトランザクションのレコードだけを選択します。トランザクション ID は,DUMP コマンドの出力の Transaction ID フィールドに表示されます。ハイフンを含み,実際に表示される値とまったく同じ値を指定してください。
REPAIR コマンドは,トランザクションの状態を変更します。
重要
REPAIR コマンドは,データを破損する恐れがあります。トランザクションに関わっている資源マネージャではトランザクション状態を変更できない場合以外には,使用しないようにしてください。
このコマンドは,トランザクションに関わっている資源マネージャにトランザクション状態を変更する手段が用意されていない場合だけに使用してください。たとえば Rdb for OpenVMS がトランザクションに関わっている場合, REPAIR ではなく,Rdb for OpenVMS Management ユーティリティ (RMU) のコマンドを使用してください。同様に,VAX DBMS for OpenVMS が関わっている場合は,データベース・オペレータ・ユーティリティ (DBO) のコマンドを使用してください。
トランザクションの結果がすでに判明しているときに,トランザクション・ログをただちに手作業で更新する必要がある場合以外には,トランザクション状態を変更しないようにしてください。トランザクション状態を変更する具体的状況としては,遠隔ノードへのネットワーク・リンクを失った場合などが考えられます。
REPAIR コマンドでは,変更するトランザクションを修飾子で指定します。省略時の設定では,すべてのトランザクションが選択されます。
変更するトランザクションを選択した後, REPAIR サブコマンド・モードに入ります。このモードでは,プロンプトが REPAIR> に変わり,サブコマンドを使用できるようになります。トランザクション状態を手作業で変更したり,選択基準を満たす次のトランザクションを選択したりする処理を,これらのサブコマンドで行います。使用できるサブコマンドは,次のとおりです。
選択したトランザクションが順番に表示されるので,それぞれを変更できます。ABORT,COMMIT,FORGET のサブコマンドではトランザクション状態の変更,NEXT サブコマンドでは次のトランザクションの選択が行えます。
REPAIR サブコマンド・モードを終了するには,EXIT サブコマンドを入力するか,または Ctrl/Z を押します。
LMCP> REPAIR/STATE=PREPARED DISK$JOURNALS:[LOGFILES]SYSTEM$ORANGE |
ORANGE というノードのトランザクション・ログから変更するトランザクションを選択しています。選択されたトランザクションは,準備段階にあるトランザクションです。
最初のトランザクションは,準備段階からコミット段階に手作業で変更しています。次に,NEXT サブコマンドで次のトランザクションに移動しています。
Dump of transaction log DISK$JOURNALS:[LOGFILES]SYSTEM$ORANGE;1 End of file block 4002 / Allocated 4002 Log Version 1.0 Transaction log UID: 98A43B80-81B7-11CC-A27A-08002B1744C3 Penultimate Checkpoint: 00000407B9AC 07AC Last Checkpoint: 00000407C3B7 07B7 Transaction state (1): PREPARED Transaction ID: 9F7DF804-CBC4-11CC-863D-08002B17450A (18-OCT-2000 16:11:03.67) DECdtm Services Log Format V1.1 Type ( 3): LOCAL RM Log ID: 00000000-0000-0000-0000-000000000000 Name (1): "B" (42) Type ( 4): PARENT Log ID: AEC2FB64-C617-11CC-B458-08002B17450A Name (13): "SYSTEM$BLUE" (45554C 42244D45 54535953) Type (16): PARENT NODE Log ID: AEC2FB64-C617-11CC-B458-08002B17450A Name (6): "BLUE" (45554C42)) REPAIR>COMMIT REPAIR>NEXT . . .
前へ | 次へ | 目次 | 索引 |