advanced operations guideadvanced operations guide procedures and references for advanced users...

320
Pervasive PSQL v11 Advanced Operations Guide Procedures and References for Advanced Users

Upload: others

Post on 15-Aug-2020

27 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL v11

Advanced Operations GuideProcedures and References for Advanced Users

Page 2: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

免責事項 Pervasive Software Inc. は、 本ソフ ト ウェアおよびドキュ メン トの使用を、 利用者また

はその会社に対して 「現状のまま」 で、 かつ同梱の使用許諾契約書に記載の契約条件によってのみ許諾するものです。 Pervasive Software Inc. は、 いかなる場合にも本ソフ

ト ウェアおよび本マニュアルに記載された内容に関するその他の一切の保証を、 明示的にも黙示的にも行いません。 Pervasive Software Inc. は、 市場性、 権利、 特定の目的

に対する適合性、 あるいは一連の取引業務や職業的な使用に関する問題などに対し、一切の保証を行わないこ とを明示する と と もに、 利用者およびその会社がこれに同意したものと します。

商標 Btrieve、 Client/Server in a Box、 Pervasive、 Pervasive Software および Pervasive Software のロゴは、 Pervasive Software Inc. の登録商標です。

Built on Pervasive Software、 DataExchange、 MicroKernel Database Engine、 MicroKernel Database Architecture、 Pervasive.SQL、 Pervasive PSQL、 Solution Network、 Ultralight、 ZDBA は Pervasive Software Inc. の商標です。

Microsoft、 MS-DOS、 Windows、 Windows 95、 Windows 98、 Windows NT、 Windows Me、Windows 2000、 Windows 2003、 Windows 2008、 Windows 7、 Windows 8、 Windows Server 2003、Windows Server 2008、 Windows Server 2012、 Windows XP、 Win32、 Win32s、 および Visual Basic は、 Microsoft Corporation の登録商標です。

NetWare および Novell は Novell, Inc. の登録商標です。 NetWare Loadable Module、 NLM、 Novell DOS、 Transaction Tracking System、 TTS は、 Novell, Inc. の商標です。

Sun、 Sun Microsystems、 Java、 および Sun、 Solaris、 Java を含むすべての商標やロゴは、 Sun Microsystems の商標または登録商標です。 すべての会社名および製品名は各社の商標または登録商標です。

© Copyright 2013 Pervasive Software Inc. All rights reserved. このマニュアルの全文、 一部に関わり

な く複製、 複写、 配布をするこ とは、 前もって発行者の書面による同意がない限り禁止します。

本製品には、 Powerdog Industries によ り開発されたソフ ト ウェアが含まれています。

© Copyright 1994 Powerdog Industries.All rights reserved. 本製品には、 KeyWorks Software によ り開発されたソフ ト ウェアが含まれています。

© Copyright 2002 KeyWorks Software.All rights reserved. 本製品には、 DUNDAS SOFTWARE によ り開発されたソフ ト ウェアが含まれています。

© Copyright 1997-2000 DUNDAS SOFTWARE LTD. All rights reserved. 本製品には、 Apache Software Foundation Foundation (http://www.apache.org/) によ り開発された

ソフ ト ウェアが含まれています。 本製品ではフ リー ソフ ト ウェアの unixODBC Driver Manager を使用しています。 これは Peter Harvey ([email protected]) によって作成され、 Nick Gorham ([email protected]) に

よ り変更および拡張されたものに Pervasive Software が一部修正を加えたものです。 Pervasive Software は、 unixODBC Driver Manager プロジェク トの LGPL 使用許諾契約書に従って、 このプ

ロジェク トの現在の保守管理者にそのコード変更を提供します。 unixODBC Driver Manager の Web ページは www.unixodbc.org にあ り ます。 このプロジェク トに関する詳細については、 現在

の保守管理者である Nick Gorham ([email protected]) にお問い合せください。

GNU Lesser General Public License (LGPL) は本製品の配布メディアに含まれています。LGPL は www.fsf.org/licensing/licenses/lgpl.html でも見るこ とができます。

Advanced Operations Guide2014 年 5 月138-004434-004

Page 3: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

目次

このマニュアルについて . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiこのマニュアルの読者 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiiこのマニュアルの構成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiii表記上の規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xv

1 Pervasive PSQL データベース . . . . . . . . . . . . . . . . . . . . . . . . . . 1オブジェク ト名、 名前付きデータベースおよび DSN の詳細

Pervasive PSQL データベースの概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2名前付きデータベース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2メ タデータ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2識別子とオブジェク ト名 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2デフォルトのデータベース と現在のデータベース . . . . . . . . . . . . . . . . . . . . . . . . . . 5ファ イル構造 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6アクセス方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9ク ラ イアン ト / サーバー通信 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9データベース コード ページ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10ODBC DSN 作成オプシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10idshosts ファ イルの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2 データベース管理の概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13データベース管理について

設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

データベース セキュ リティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

データの保存と復元 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

ト ラブルシューティング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

有用なユーティ リ ティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3 Pervasive コ ンポーネン ト のアーキテ クチャについて . . . . . . . . . . . . . . 19アーキテクチャ機能の説明

Pervasive PSQL データベース エンジン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20共通アドレス空間 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20行レベルのロ ッ ク . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20MicroKernel Database エンジン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20SQL Relational Database エンジン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

リ レーシ ョナル アーキテクチャの概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23Pervasive PSQL リ レーシ ョナル アーキテクチャ : サーバー . . . . . . . . . . . . . . . . . . . . . 23

エラー コード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25Pervasive Auto-Reconnect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

4 設定リ フ ァ レンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Pervasive PSQL で使用できる構成方法および設定

設定の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28設定の変更が有効になっているこ とを確認する . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

iii

Page 4: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

目次

別のマシンに接続する . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

PCC による設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

CLI ユーティ リ ティによる設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30構成の設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30コマンド構文 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

設定のプロパティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

サービス設定プロパティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

サーバー設定プロパティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36アクセス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37通信プロ ト コル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43ファ イル互換性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45データ整合性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46デバッグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50ディレク ト リ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52情報 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53メモ リの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53パフォーマンス チューニング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Windows ク ライアン ト設定プロパティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61アクセス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 キャ ッシュ エンジン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63キャ ッシュ エンジンのデバッグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65通信プロ ト コル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66パフォーマンス チューニング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 セキュ リティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67アプリ ケーシ ョ ンの特性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

Linux ク ライアン ト設定プロパティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70設定値での大文字小文字の区別 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70ローカル設定 ([Local]) によって影響を受けるク ライアン トのパフォーマンス . . . . . . . . 70埋め込みスペースを含むファイル名 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70設定リ ファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70Access (アクセス) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71Communication Protocols (通信プロ ト コル) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72Application Characteristics (アプ リ ケーシ ョ ンの特性) . . . . . . . . . . . . . . . . . . . . . . . . 72

5 パフ ォーマンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73データベース パフォーマンスの分析およびチューニング

パフォーマンスの分析 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74インス トール時の登録 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74データ コレクター セッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74Windows パフォーマンス モニターの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80

パフォーマンス チューニング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84パフォーマンスのボ トルネッ クを見極める . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84設定プロパティを変更する前に . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85初期接続時間を 小限にする . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85ランタイムのスループッ ト を 大にする . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87大きいシステム キャ ッシュ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

ハイパーバイザー製品でのパフォーマンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

iv

Page 5: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

目次

Xtreme I/O ド ラ イバー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94留意点 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94システム要件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95XIO メモ リ キャ ッシュ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95よ く寄せられる質問 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97各種ユーティ リ ティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98除外ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100Pvsw.log のメ ッセージ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101イベン ト ログ メ ッセージ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102XIO の ト ラブルシューティング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

6 参照整合性の設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105参照整合性の構造について

参照整合性 (RI) の概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106定義 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106キーおよび規則について . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

主キーの設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109テーブル作成中に主キーを作成する . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109既存のテーブルに主キーを追加する . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

外部キーの設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110テーブル作成中に外部キーを作成する . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110既存のテーブルに外部キーを追加する . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

Btrieve およびリ レーシ ョナル制約間の相互作用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111バウンド データベースと整合性の設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112関連項目 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

7 Pervasive PSQL セキュ リ テ ィ . . . . . . . . . . . . . . . . . . . . . . . . . . 115ト ランザクシ ョナルおよびリ レーシ ョナル インターフェイスのためのセキュ リ ティに関する概念と作業

データベース セキュ リティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116Master ユーザー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116ユーザーとグループ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

セキュ リティ モデルと概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117リ レーシ ョナル インターフェイスで使用可能なモデル . . . . . . . . . . . . . . . . . . . . . . . 117ト ランザクシ ョナル インターフェイスで使用可能なモデル . . . . . . . . . . . . . . . . . . . . 118オーナー ネーム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120複数のデータベースのデータにアクセスする . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

ト ランザクシ ョナル インターフェイスのセキュ リティ計画 . . . . . . . . . . . . . . . . . . . . . . . . 123使用可能なオプシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123ポ リシーの選択 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123セキュ リティを設定するための準備 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124処理の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

ト ランザクシ ョナル インターフェイス セキュ リティのク イ ッ ク スタート . . . . . . . . . . . . . . . 127

セキュ リティの作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

データの暗号化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130ワイヤ暗号化の設定プロパティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130暗号化の注意 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

v

Page 6: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

目次

暗号化の設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130暗号化の影響 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132オーナー ネームの暗号化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

8 ログ、 バッ クア ッ プおよび復元 . . . . . . . . . . . . . . . . . . . . . . . . . . 133ログ、 バッ クアップおよびデータの復元について

ト ランザクシ ョ ン ログおよびト ランザクシ ョ ン一貫性保守 . . . . . . . . . . . . . . . . . . . . . . . . 134これらの機能の使用法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134機能の比較 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134どちらの機能を使用するか . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135ログの機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135関連項目 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

アーカイブ ログおよび Continuous オペレーシ ョ ンについて . . . . . . . . . . . . . . . . . . . . . . . . 138アーカイブ ログと ト ランザクシ ョ ン ログの違い . . . . . . . . . . . . . . . . . . . . . . . . . . . 138ファ イルの復元が必要になったら . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

アーカイブ ログの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140全般的な手順 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140アーカイブ ログの設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141ロール フォワード コマンド . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

Continuous オペレーシ ョ ンの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144Continuous オペレーシ ョ ンの開始と停止 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144BUTIL を使用してデータベースのバッ クアップを行う . . . . . . . . . . . . . . . . . . . . . . . 145Continuous オペレーシ ョ ン使用時のデータ ファ イルの復元 . . . . . . . . . . . . . . . . . . . . . 147

Backup Agent および VSS Writer によるデータ バッ クアップ . . . . . . . . . . . . . . . . . . . . . . . . 148Pervasive Backup Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148Pervasive PSQL VSS Writer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148

9 高可用性のサポー ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151可用性の高い環境での Pervasive PSQL の使用

技術の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152高可用性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152フォールト ト レランス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152障害回復 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153ハードウェア要件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

フェールオーバー ク ラスタ リ ング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154Windows Server 2008 以上を対象と した Microsoft フェールオーバー ク ラスタ リ ング . . . . . . 154Windows Server 2003 用の Microsoft Cluster Service . . . . . . . . . . . . . . . . . . . . . . . . . . 157Linux Heartbeat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160ク ラスター環境における Pervasive PSQL の管理 . . . . . . . . . . . . . . . . . . . . . . . . . . . 163

マイグレーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165

フォールト ト レランス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166

障害回復 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

10 ワークグループ エンジンの詳細 . . . . . . . . . . . . . . . . . . . . . . . . . . 169ワークグループ エンジンの技術的な詳細および高度な処理

ネッ ト ワーク . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

vi

Page 7: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

目次

NetBIOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170MicroKernel のルーター決定アルゴ リズム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

サーバーとワークグループの技術的な相違 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171プラ ッ ト フォーム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171ユーザー インターフェイス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171認証と Btrieve セキュ リティ ポ リシー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171ゲート ウェイのサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171非同期 I/O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171デフォルトの設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171Xtreme I/O (XIO) のサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172ラ イセンス モデル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172

ワークグループ の問題のト ラブルシューティング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173初の接続での待ち時間 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

ステータス コード 116 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173

ロケーター ファ イルのリダイレク ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175リ ダイレク ト ロケーター ファ イルの要件 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175リ ダイレク ト ロケーター ファ イルの作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177

11 データベース リ ソースの監視 . . . . . . . . . . . . . . . . . . . . . . . . . . . 179Monitor を使用してデータベース リ ソースを調べる

Monitor の概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180インターフェイスの各種バージ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

Monitor のグラフ ィカル ユーザー インターフェイス . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181Monitor の起動 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181Monitor のオプシ ョ ン設定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181ト ランザクシ ョナル インターフェイス リ ソースの監視 . . . . . . . . . . . . . . . . . . . . . . . 182リ レーシ ョナル インターフェイス リ ソースの監視 . . . . . . . . . . . . . . . . . . . . . . . . . 190

Monitor のコマンド ラ イン インターフェイス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192構成ファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192監視の出力 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192コマンド構文 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192

12 Btrieve オペレーシ ョ ンのテス ト . . . . . . . . . . . . . . . . . . . . . . . . . . 195Function Executor ユーティ リ テ ィで Btrieve オペレーシ ョ ンを実行する方法

Function Executor の概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196Function Executor でできるこ と . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196Function Executor の機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196Function Executor の自動モード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200詳細情報を入手するには . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

Function Executor のグラフ ィカル ユーザー インターフェイス . . . . . . . . . . . . . . . . . . . . . . . 201 アプリ ケーシ ョ ン ウ ィンド ウ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202メ イン ウ ィンド ウ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205ログインおよびログアウ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207[ファ イルのオープン] ダイアログ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208Btrieve ファ イルの作成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209

vii

Page 8: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

目次

ファ イルの作成用ダイアログ GUI のリ ファレンス (高度) . . . . . . . . . . . . . . . . . . . . . 210ト ランザクシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 211ファ イル統計情報 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212履歴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213

Function Executor での作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215Function Executor での作業の開始 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215オペレーシ ョ ン作業の実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215ファ イルを開く作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216Btrieve ファ イルを作成する作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 217履歴の作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219

13 Maintenance を使用し た Btrieve データ フ ァ イルの操作 . . . . . . . . . . . . . 221Maintenance ユーティ リ テ ィ を使用した Btrieve データ ファ イルの操作

Maintenance ユーティ リ ティの概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222

対話型 Btrieve Maintenance ユーティ リ ティ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223拡張ファイルのサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223長いファイル名と埋め込みスペースのサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . 223レコードおよびページ圧縮 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224Btrieve Maintenance ユーティ リ ティのインターフェイス . . . . . . . . . . . . . . . . . . . . . . . 225

ファ イル情報エディ ター . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227[ファ イル情報エディ ター] ダイアログの項目 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227重複キーの操作方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231情報エディ ターでの作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234

オーナー ネーム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239オーナー ネームの作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239

情報レポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241情報レポートの作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 241

インデッ クス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243インデッ クスの作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243

データ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245ASCII ファ イル形式のインポート とエクスポート . . . . . . . . . . . . . . . . . . . . . . . . . . 245データに関する作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

Btrieve コマンド ライン Maintenance ユーティ リ ティ (butil) . . . . . . . . . . . . . . . . . . . . . . . . 249リ ターン コード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249コマンド . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249コマンド構文の表示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250コマンド形式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250コマンド ファ イル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250ディ スク リプシ ョ ン ファ イル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251拡張ファイルのサポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251オーナー ネーム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251エラー メ ッセージのリダイレク ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252ASCII ファ イル形式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252異なるプラ ッ ト フォームでのファイル名指定の規則 . . . . . . . . . . . . . . . . . . . . . . . . . 252

データのインポート とエクスポート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253COPY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253LOAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254

viii

Page 9: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

目次

RECOVER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255SAVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256

データ ファ イルの作成と変更 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259CLONE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 259CLROWNER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260CREATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261DROP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263SETOWNER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264SINDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265Btrieve データ ファイルのコンパク ト化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266

データ ファ イル情報の表示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267STAT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267

Btrieve インターフェイス モジュールのバージ ョ ンの表示 . . . . . . . . . . . . . . . . . . . . . . . . . 270VER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270

Btrieve インターフェイス と リ クエスターのアンロード (DOS のみ) . . . . . . . . . . . . . . . . . . . 271STOP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271

Continuous オペレーシ ョ ンの実行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272

アーカイブ ログの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273

14 データ フ ァ イルの変換 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277Pervasive PSQL ファ イル互換性を維持する

Rebuild ユーティ リ ティの概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278サポート されるプラ ッ ト フォーム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 278ファ イル形式 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279テンポラ リ ファ イル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279Rebuild 処理の 適化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 280ログ ファ イル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283

Rebuild ユーティ リ ティ の GUI のリ ファレンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285ファ イル オプシ ョ ンの画面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285Rebuild オプシ ョ ンの画面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285Rebuild 進行状況画面 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288

Rebuild ユーティ リ ティの作業 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289GUI 操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289CLI 操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290コマンド ライン パラ メーター . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290

A デ ィ ス ク リ プシ ョ ン フ ァ イル . . . . . . . . . . . . . . . . . . . . . . . . . . . 297ディ スク リプシ ョ ン ファ イルを使用して Btrieve ファ イル情報を保存する

ディ スク リプシ ョ ン ファ イルの規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298

ディ スク リプシ ョ ン ファ イルの例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299

ディ スク リプシ ョ ン ファ イルの要素 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301

ix

Page 10: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

目次

x

Page 11: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

このマニュアルについて

このマニュアルでは、 高度な操作の説明と上級ユーザーのための技術情報を提供します。

このマニュアルの情報には、 お使いのプラ ッ ト フォームや製品には適用されないものも含まれています。 たとえ

ば、 ゲート ウェイ エンジン設定に関する情報はサーバー エンジンには適用されません。 そのよ う な情報は区別

できるよ う明記しています。

xi

Page 12: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

このマニュアルの読者

このマニュアルは上級ユーザー向けに提供されています。上級ユーザーは Pervasive PSQL ベース アプリ ケーシ ョ

ンの基盤にあるオペレーティング システムについて深く理解しているこ とが前提と されます。 上級ユーザーは、

オペレーティング システムの構成をスムーズに行う こ とができ、多くの場合データベース エンジンを構成する管

理者権限を持っている必要があ り ます。 上級ユーザーとは、 以下のよ うな方が該当します。

1 つ以上の Pervasive PSQL ベース アプリ ケーシ ョ ンがインス トールされているネッ ト ワークの管理者

Pervasive PSQL ベース アプリ ケーシ ョ ンの付加価値再販業者

Pervasive PSQL ベース アプリ ケーシ ョ ンの開発者

xii

Page 13: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

このマニュアルの構成

このマニュアルの各章について簡単に説明します。

第 1 章 「Pervasive PSQL データベース」

この章では、 データベースに関する概念情報および、 データベースの作成方法、 データベースのプロパティ

の設定方法について説明します。

第 2 章 「データベース管理の概念」

この章では、 データベース管理の基本概念およびデータベース管理に伴う操作について簡単に紹介します。

第 3 章 「Pervasive コンポーネン トのアーキテクチャについて」

この章では、 Pervasive PSQL を構成する主なコンポーネン トの詳細およびユニークな機能について説明しま

す。

第 4 章 「設定リ ファレンス」

この章では、 設定プロパティのアクセス方法について説明し、 エンジンおよびク ライアン トに設定可能なす

べてのオプシ ョ ンについて詳細に説明します。

第 5 章 「パフォーマンス」

この章では、 Xtreme I/O ド ラ イバーのチューニングおよび使用などのさまざまな手段を用いてデータベース

のパフォーマンスを向上させる方法について説明します。

第 6 章 「参照整合性の設定」

この章では、 関連するデータの内部的な整合性を確実にするため、 参照整合性規則を設定する方法について

説明します。

第 7 章 「Pervasive PSQL セキュ リティ」

この章では、 Btrieve セキュ リティおよび SQL セキュ リティについて説明します。

第 8 章 「ログ、 バッ クアップおよび復元」

この章では、データの保護を確実にするための定期バッ クアップ プロシージャを開発する方法、および必要

な場合にバッ クアップから復元する方法を説明します。

第 9 章 「高可用性のサポート 」

この章では、 Pervasive PSQL が、 フェイルオーバー ク ラスタ リ ングをどのよ うにサポートするかを説明しま

す。

第 10 章 「ワークグループ エンジンの詳細」

この章では、 ワークグループ エンジンに関する技術の詳細および高度な操作を説明します。

第 11 章 「データベース リ ソースの監視」

この章では、 グラフ ィ カルなユーテ ィ リ テ ィである Monitor を使用してデータベースに接続しているユー

ザー、 ファ イルの使用状況、 およびリ ソースの使用状況を表示する方法を説明します。

第 12 章 「Btrieve オペレーシ ョ ンのテス ト 」

この章では、 Function Executor ユーティ リ ティ を使用して ト ランザクシ ョナル インターフェイスの個々のオ

ペレーシ ョ ンを実行する方法を説明します。

第 13 章 「Maintenance を使用した Btrieve データ ファ イルの操作」

この章では、 Maintenance ユーティ リ ティの使用法を説明します。

第 14 章 「データ ファ イルの変換」

この章では、 Rebuild ユーティ リ ティの使用法を説明します。

xiii

Page 14: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

付録 A 「ディ スク リプシ ョ ン ファ イル」

この付録では、 作成した Btrieve データ ファ イルの情報を保存するディ スク リプシ ョ ン ファ イルの使用方法

について説明します。

xiv

Page 15: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

表記上の規則

特段の記述がない限り、 コマンド構文、 コード、 およびコード例では、 以下の表記が使用されます。

大文字小文字の

区別

通常、 コマンド と予約語は、大文字で表記されます。 本書で

別途記述がない限り、 これらの項目は大文字、 小文字、 ある

いはその両方を使って入力できます。 たとえば、 MYPROG、myprog、 または MYprog と入力するこ とができます。

太字 太字で表示される単語には次のよ う なものがあ り ます。 メ

ニュー名、 ダイアログ ボッ クス名、 コマンド、 オプシ ョ ン、

ボタン、 ステート メン ト など。

固定幅フォン ト 固定幅フォン トは、 コマンド構文など、ユーザーが入力する

テキス トに使われます。

[ ] 省略可能な情報には、 [log_name] のよ うに、 角かっこが使

用されます。角かっこで囲まれていない情報は必ず指定する

必要があ り ます。

| 縦棒は、 [file name | @file name] のよ うに、 入力する情報

の選択肢を表します。

< > <> は、 /D=<5|6|7> のよ うに、 必須項目に対する選択

肢を表します。

変数 file name のよ うに斜体で表されている語は、適切な値に置き

換える必要のある変数です。

. . . [parameter. . .] のよ うに、情報の後に省略記号が続く場合は、

その情報を繰り返し使用できます。

::= 記号 ::= は、 ある項目が別の項目用語で定義されているこ と

を意味します。 たとえば、 a::=b は、 項目 a が b で定義され

ているこ とを意味します。

xv

Page 16: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

xvi

Page 17: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

1

Pervasive PSQL データベース

オブジェク ト名、 名前付きデータベースおよび DSN の詳細

この章では、 以下の項目について説明します。

「Pervasive PSQL データベースの概念」

1

Page 18: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベース

Pervasive PSQL データベースの概念

「名前付きデータベース」

「メ タデータ」

「識別子とオブジェク ト名」

「デフォルトのデータベース と現在のデータベース」

「ファ イル構造」

「アクセス方法」

「ク ラ イアン ト / サーバー通信」

「データベース コード ページ」

「ODBC DSN 作成オプシ ョ ン」

「idshosts ファ イルの使用」

名前付きデータベース

名前付きデータベース (DBname と も呼ばれます) は、 論理名を持ち、 この名前によって、 データベースが実際

に存在する場所を知らな くても、 そのデータベースを識別するこ とができます。 Pervasive PSQL では、 すべての

データベースが名前付きデータベースである必要があ り ます。 データベースに名前を付ける際は、 その名前を特

定の辞書ディレク ト リのパスおよび 1 つまたは複数のデータ ファ イルのパスに関連付けるよ うにします。

名前付きデータベースへは、 さまざまなアクセス方法で接続されます。 たとえば、 ODBC アクセスの場合は名前

付きデータベースを指すデータ ソース名 (DSN) を設定する必要があ り ます。 複数の DSN が同じ名前付きデー

タベースを指すこ とができます。 『SQL Engine Reference』 の 「ODBC データベース アクセス」 を参照して くださ

い。 その他のアクセス方法の場合、 アプリ ケーシ ョ ン開発者が、 それぞれのアクセス方法の API を使用して名前

付きデータベースに接続するこ とができます。 Pervasive PSQL ドキュ メン トの開発者向けガイ ドを参照してくだ

さい。

メ モ 名前付きデータベースを使用する場合、管理者レベルまたは Pervasive_Admin セキュ リティ グループの

メンバーであるオペレーティング システムのユーザー名で、 データベース エンジンが存在するコンピュー

ターにログインする必要があ り ます。

名前付きデータベース を作成する も簡単な方法は、 Pervasive PSQL Control Center を使用する こ と です。

『Pervasive PSQL User's Guide』 の 「新規データベースを作成するには」 を参照してください。 アプリ ケーシ ョ ン開

発者は別のアクセス方法の API を用いて名前付きデータベースを作成するこ と もできます。 たとえば、 SQL の場

合は 「CREATE DATABASE」、 DTI の場合は 「PvCreateDatabase()」、 ADO.NET の場合は 「Data Access ApplicationBlocks」 を参照してください。

メ タデータ

リ レーシ ョナル インターフェイスは、 バージ ョ ン 1 (V1) とバージ ョ ン 2 (V2) とい う 2 つのバージ ョ ンのメ タ

データをサポート します。 メ タデータ バージ ョ ン 2 では、 多くの識別子に 大 128 バイ トの名前を付けるこ とが

でき、 ビューおよびス ト アド プロシージャを許可し、 メ タデータ バージ ョ ン 2 固有の DDF (データ辞書ファイ

ル) を持つこ とができます。

『SQL Engine Reference』 の 「メ タデータのバージ ョ ン」 を参照してください。

識別子とオブジ ェ ク ト 名

識別子は、データベースの名前、またはデータベース内の列、テーブル、プロシージャやその他名前付きオブジェ

ク トの名前です。 識別子は、 通常の識別子またはデリ ミ ター (区切り記号) 付きの識別子と して指定されます。

2

Page 19: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベースの概念

通常の識別子

通常の識別子とは、 二重引用符で囲まれていない識別子のこ とです。 通常の識別子は大文字または小文字の文字

で始まる必要があ り ます。 識別子の残りの部分は大文字または小文字の文字、 数字、 および有効な文字の任意の

組み合わせで構成されます。

通常の識別子に予約語を使用するこ とはできません。

通常の識別子は大文字小文字を区別しません。

デリ ミ ター付き識別子

デリ ミ ター付き識別子とは、 二重引用符で囲まれた識別子のこ とです。 デリ ミ ター付き識別子は、 有効な文字か

ら成る任意の文字列と、 それを囲む二重引用符で構成されます。

推奨できる使用法ではあ り ませんが、 デリ ミ ター付き識別子には予約語も使用できます。 たとえば、 INSERT は通常の識別子と しての使用は許可されませんが、 "INSERT" はデリ ミ ター付き識別子と しては許可されます。 識

別子がキーワードでもある場合は二重引用符で囲む必要があ り ます (た と えば、 SELECT "password" FROMmy_pword_tbl とな り ます。 "password" は SET PASSWORD ステート メン トのキーワードなので二重引用符で囲み

ます)。

識別子の制限

上に挙げた全般的な制限以外に、 各種の識別子に特有の制限を次の表に一覧表示します。

表 1 識別子の種類別の制限

識別子 長さ制限

(バイ ト 単位)

無効な文字 1 注記

V12 V23

列 20 128 \ / : * ? " < > | 先頭は文字でなければなり ません

ヌルにするこ とはできません

データベース 20 20 ` ~ ! @ # $ % ^ & * ( ) _ - + = } ] { [ | \ : ; " <, ' > . ? /

先頭は文字でなければなり ません

関数 (ユーザー

定義)

30 128 通常の識別子の場合 :` ~ ! @ # $ % ^ & * ( ) - + = } ] { [ | \ : ; " < ,' > . ? /

文字、 数字、 およびアンダースコア ("_")が有効です

先頭は文字でなければなり ません

デリ ミ ター付き識別子の場合 :

なし

名前を二重引用符で囲む必要があ り ます

グループ 30 128 \ / : * ? " < > | (および空白文字) MASTER にするこ とはできません

インデッ クス 20 128 \ / : * ? " < > | (および空白文字) Pervasive PSQL Control Center (PCC) でイ

ンデッ ク スを作成する場合、 先頭に UK_を付けてはいけません

PCC 外で UK_ で始まるインデッ クスを作

成した場合、 そのインデッ クスは PCC で編集できません

キー

(外部または主)

20 128 \ / : * ? " < > | (および空白文字) 先頭は文字でなければなり ません

同一テーブル内で、外部キーと インデッ ク

スに同じ名前を付けるこ とはできません

3

Page 20: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベース

パスワード 8 128 ; ? " ' 先頭を空白 (空白と して使用される文字)

にするこ とはできません

ヌルにするこ とはできません

[無効な文字] 列に挙げられている文字以

外の、あらゆる表示可能な文字が指定でき

ます

プ ロ シ ー ジ ャ

(ス ト アド)

30 128 通常の識別子の場合 :` ~ ! @ # $ % ^ & * ( ) - + = } ] { [ | \ : ; " < ,' > . ? /

文字、 数字、 およびアンダースコア ("_")が有効です

先頭は文字でなければなり ません

デリ ミ ター付き識別子の場合 :

なし

名前を二重引用符で囲む必要があ り ます

テーブル 20 128 \ / : * ? " < > | (および空白文字)

# ##4無効な文字は、通常とデリ ミ ター付きの両

方の識別子に適用されます

ト リガー 30 128 通常の識別子の場合 :` ~ ! @ # $ % ^ & * ( ) - + = } ] { [ | \ : ; " < ,' > . ? /

文字、 数字、 およびアンダースコア ("_")が有効です

先頭は文字でなければなり ません

デリ ミ ター付き識別子の場合 :

なし

名前を二重引用符で囲む必要があ り ます

ユーザー 30 128 \ / : * ? " < > | (および空白文字) MASTER または PUBLIC にするこ とはで

きません

ビュー 20 128 通常の識別子の場合 :` ~ ! @ # $ % ^ & * ( ) - + = } ] { [ | \ : ; " < ,' > . ? /

文字、 数字、 およびアンダースコア ("_")が有効です

先頭は文字でなければなり ません

デリ ミ ター付き識別子の場合 :

なし

名前を二重引用符で囲む必要があ り ます

1 特に示されていない限り、 無効な文字は通常の識別子とデリ ミ ター付き識別子の両方に適用されます。

2 バージ ョ ン 1 (V1) メ タデータに適用。 『SQL Engine Reference』 の 「メ タデータのバージ ョ ン」 を参照してください。

3 バージ ョ ン 2 (V2) メ タデータに適用。 『SQL Engine Reference』 の 「メ タデータのバージ ョ ン」 を参照してください。

4 テンポラ リ テーブルの名前の先頭は # または ## で始ま り ます。 このため、 # と ## は永続テーブルの名前の先頭文字と し

ては無効です。 『SQL Engine Reference』 の 「CREATE (テンポラ リ ) TABLE」 を参照してください。

表 1 識別子の種類別の制限

識別子 長さ制限

(バイ ト 単位)

無効な文字 1 注記

V12 V23

4

Page 21: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベースの概念

ユニークなス コープ

通常、 識別子は一定のスコープ内でユニークである必要があ り ます。 つま り、 同じ名前を使用する同一タイプの

オブジェク トのインスタンスは同一領域内では使用できません。 表 2 は、 オブジェク ト名がどのよ うな領域また

はスコープ内でユニークである必要があるかを表します。

デフ ォル ト のデータベース と現在のデータベース

既存のアプリ ケーシ ョ ンで、Btrieve ファ イルを作成したり開いたりする際にデータベース名を指定していないア

プリ ケーシ ョ ンをサポートするために、 Pervasive PSQL では、 ト ランザクシ ョナル データベース エンジンごとの

デフォルト データベースという概念が維持されています。 デフォルト データベースは、 "DefaultDB" という名前

であらかじめ定義されているデータベースです。アプリ ケーシ ョ ン コードを変更しないで新しいセキュ リティ モデルを使う よ うにするには、 Btrieve データ ディ レク ト リ をデフォルト データベースと関連付けてから、 それら

のディレク ト リにあるデータ ファ イルへのアクセスを制御するよ う、デフォルト データベースでユーザーおよび

権限を設定します。

また、 データベース エンジンは、 ク ラ イアン ト接続ご との現在のデータベース とい う概念も理解しています。

Btrieve の Login (78) 、 Create (14) 、 または Open (0) オペレーシ ョ ンでデータベース名が指定されていない場

合、 ト ランザクシ ョナル エンジンは、そのオペレーシ ョ ンは現在のデータベースに関連するものである と見なし

ます。現在のデータベースとは、各ク ライアン トで、一番 近 Login (78) オペレーシ ョ ン (明示的ログイン) が

発生したデータベースを指します。ク ライアン ト コンピューターが明示的なログイン操作を要求していない場合

は、 一番 近 Create (14) または Open (0) オペレーシ ョ ン (暗黙ログイン) が発生したデータベースが現在の

データベースとな り ます。 明示的にも暗黙的にもログインが発生していない場合は、 前の段落で説明したデフォ

ル ト データベースが現在のデータベース とな り ます。 ク ラ イアン トが明示または暗黙のログインを実行した場

合、 あるいは 後のファイル ハンドルを閉じるこ とによって "DefaultDB" が現在のデータベースとなった場合に

は常に、現在のデータベースが変わる可能性があるこ とに注意して ください。各ク ライアン トの現在のデータベー

スは、 ほかのク ライアン トの動作とは関係あ り ません。

表 2 共通識別子のユニーク性の適用範囲

このタ イプのオブジ ェ ク ト の名前 ... この範囲内でユニーク

データベース テーブル ストアド プロ

シージャ

その他

データベース 一定のデータベース エンジンによって

ホス ト されるすべてのデータベース

テーブル ○

ト リ ガー、 ス ト アド プロシージャ、

ユーザー定義関数

ユーザーまたはグループ ○

ビュー ○

制約 ○

列 ○

インデッ クス ○ 外部キーと同じ名前を持つこ とはでき

ません

キー (外部) ○ インデッ ク ス と同じ名前を持つこ とは

できません

カーソル ○

5

Page 22: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベース

既存のアプ リ ケーシ ョ ンに新しいセキュ リ テ ィ モデルを構成する も簡単な方法は、 すべての Btrieve データ

ディレク ト リ をデフォルト データベースと関連付け、このデータベース内で PUBLIC グループの権限を設定する

こ とです。 PUBLIC グループは、 データベースのセキュ リ ティ を有効にしたと き、 Master ユーザーと共に自動的

に作成されます。 「 ト ランザクシ ョナル インターフェイス セキュ リティのク イ ッ ク スタート 」 を参照して くださ

い。

フ ァ イル構造

すべての Pervasive PSQL データベースは共通のデータ形式を使用します。 このファイル形式の共有によ り、 同一

データのアクセスに ト ランザクシ ョナル、リ レーシ ョナルなどの異なるアクセス方法を使用するこ とができます。

すべてのアクセス方法が機能するために使用するデータベース管理システムは MicroKernel Database エンジン

(MKDE) と呼ばれます。

各 Pervasive PSQL データベース テーブルは別個のファイルで、デフォルトで拡張子 MKD を持ちます。ただし、開

発者は独自のファイル名拡張子を指定するこ とができます。MicroKernel ファ イルはデータ と インデッ クスの両方

を持ち、 さまざまなタイプのページで構成されます。MicroKernel ファ イルは共通のデータ形式でデータを格納し

ます。

各 Pervasive PSQL データベースには、 拡張子 DDF のデータ辞書ファイル一式も含まれます。 DDF ファ イルには

データベース スキーマが含まれます。メ タデータ バージ ョ ン 1 と メ タデータ バージ ョ ン 2 の DDF は異なるファ

イル名を使用します。 『SQL Engine Reference』 の 「システム テーブル」 を参照してください。

MKDE は、 キー フ ィールドは別と して、データのスキーマにはまったく無頓着です。 ただし、参照整合性の規定

または SQL 経由のアクセスではスキーマの知識が必要です。

Pervasive PSQL データベースの名前と ロケーシ ョ ンは dbnames.cfg という名前のバイナリ ファ イルに格納されま

す。 Pervasive PSQL フ ァ イルのデフ ォル ト の保存場所については、 『Getting Started with Pervasive PSQL』 の

「Pervasive PSQL ファ イルはどこにインス トールされますか?」 を参照してください。

Pervasive PSQL データベースに関連するすべてのファイルはオペレーティング システムから表示させるこ とがで

きます。 表 3 は関連するファイルを要約したものです。

フ ァ イル サイズ

サイズの制限はファイル バージ ョ ンやページ サイズ、 および 1 ページあたりのレコード数によって異なるため、

次の表にまとめました。

フ ァ イル バージ ョ ン 9.5 以上

データ ファ イルの 大サイズは 256 GB です。 単一ファイルのサイズが 128 GB を超える場合は、 9.5 以上のファ

イル形式を使用する必要があ り ます。

表 3 Pervasive PSQL データベースに関連する フ ァ イル

タ イ プ 説明

データベース名の構成 dbnames.cfg フ ァ イル。 Pervasive PSQL データベースの名前と ロケーシ ョ ンを含むバイナ リ

ファ イルです。

データ(共通データ形式) ファ イル名は、 リ レーシ ョナル データベースの場合デフォルトで、 テーブル名 .MKD です。

データベース テーブルごとに対応する MicroKernel ファ イルがあ り ます。 ト ランザクシ ョナ

ル データ ファイルでは、 各ファイル名はアプリ ケーシ ョ ンが指定します。

データ辞書 拡張子が DDF のファイル。 『SQL Engine Reference』 の 「システム テーブル」 を参照してくだ

さい。

6

Page 23: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベースの概念

次の表は、 ファ イルのレコードに圧縮が設定されていないこ とを前提にしています。 レコード圧縮を使用する場

合は、 1 ページあた り に格納される レ コー ド が さ らに増え る こ と を考慮し て く だ さい。 『Pervasive PSQLProgrammer's Guide』 の 「ページ サイズの選択」 および 「ファ イル サイズの予測」 を参照してください。

フ ァ イル バージ ョ ン 9.0 以下

データ ファ イルの 大サイズは 128 GB です。 単一ファイルのサイズが 64 GB を超える場合は、 9.0 以上のファ

イル形式を使用する必要があ り ます。

次の表は、 ファ イルのレコードに圧縮が設定されていないこ とを前提にしています。 レコード圧縮を使用する場

合は、 1 ページあた り に格納される レ コー ド が さ らに増え る こ と を考慮し て く だ さい。 『Pervasive PSQLProgrammer's Guide』 の 「ページ サイズの選択」 および 「ファ イル サイズの予測」 を参照してください。

表 4 フ ァ イル バージ ョ ン 9.5 以上のフ ァ イル サイズおよびページ サイズの比較

1 ページあた りの

レ コー ド数

大ページ数

(100 万単位)

各ページ サイズ (バイ ト ) に対する フ ァ イル サイズ (GB)

1,024 2,048 4,096 8,192 16,384

1 - 15 256 256 GB 256 GB 256 GB 256 GB 256 GB

16 - 31 128 128 GB 256 GB 256 GB 256 GB 256 GB

32 - 63 64 64 GB 128 GB 256 GB 256 GB 256 GB

64 - 127 32 32 GB 64 GB 128 GB 256 GB 256 GB

128 - 255 16 16 GB 32 GB 64 GB 128 GB 256 GB

256 - 511 8 N/A1 16 GB 32 GB 64 GB 128 GB

512 - 1023 4 N/A1 N/A1 16 GB 32 GB 64 GB

1024 - 2047 2 N/A1 N/A1 N/A1 16 GB 32 GB

2048 - 4095 1 N/A1 N/A1 N/A1 N/A1 16 GB

1 N/A は 「適用外」 を意味します。

表 5 フ ァ イル バージ ョ ン 9.0 以下のフ ァ イル サイズおよびページ サイズの比較

フ ァ イル バージ ョ ン

1 ページあた り

のレ コー ド数

大ページ数

(100 万単位)

各ページ サイズ (バイ ト ) に対する フ ァ イル サイズ (GB)

512 1024 1536 2048 2560 3072 3584 4096 8192

9.0 1 - 15 256 128 128 128 128 128 128 128 128 128

9.0 16 - 31 128 64 128 128 128 128 128 128 128 128

9.0 32 - 63 64 32 64 96 128 128 128 128 128 128

9.0 64 - 127 32 16 32 48 64 80 96 112 128 128

9.0 128 - 255 16 N/A1 16 24 32 40 48 56 64 128

8 任意 16 8 16 24 32 40 48 56 64 N/A1

7 任意 16 8 16 24 32 40 48 56 64 N/A1

6 任意 16 4 4 4 4 4 4 4 4 N/A1

7

Page 24: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベース

フ ァ イルのセグ メ ン ト 化

デフォルトでは、データ ファ イルは、オペレーティング システムのファイル セグメン トである 2 GB の限界を超

えるごとに自動的に分割されます。 [セグメン ト サイズを 2 GB に制限] 設定プロパティを使用する と、 ファ イル

を 2 GB のセグメン トに分割するか、セグメン ト化しない 1 つのファイルとするかを指定するこ とができます。セ

グメン ト化されていない大きなファイルを使用する利点は、 ディ スク I/O が効率的である という こ とです。 この

ため、 パフォーマンスの向上が期待できます。

この設定オプシ ョ ンはデータベース エンジンのパフォーマンス チューニング用プロパティの 1 つです。「PCC でエンジンの設定にアクセスするには」 および 「セグメン ト サイズを 2 GB に制限」 を参照してください。

このプロパティはデフォルトでオンに設定されており、 以前のリ リース と同様 2 GB の限界でファ イルはセグメ

ン ト化されます。 このプロパティをオフに設定する と、 ファ イルは 2 GB の限界を超えて増大します。 設定プロ

パティの追加情報については、 「ファ イル バージ ョ ンの自動アップグレード」 も参照してください。

セグメン ト されていないファイルは、お使いのオペレーティング システムによって指定されているファイル サイ

ズの制限を受けます。 たとえば、 FAT32 ファ イル システムで [「セグメン ト サイズを 2 GB に制限」] の設定をオ

フにしてサイズの大きなファ イルを作成する と、 倍の 4 GB ファ イルに拡張されます。 以前作成したファイルが

既にセグメン ト化されている場合、 そのセグメン トはファ イル上でそのまま残り ます。

フ ァ イル バージ ョ ンの自動ア ッ プグレー ド

設定プロパティの [作成ファイルのバージ ョ ン] に 9.0 以上が設定されている場合、バージ ョ ン 8.x ファ イルはそ

のファイル サイズの限界 (64 GB) に達する と自動的にバージ ョ ン 9.0 ファ イルに変換されます。 次の表に、 こ

の動作をま とめて示します。

たとえば、バージ ョ ン 8.x ファ イルでサイズが 5 GB の場合は、既に 2 GB 単位のセグメン ト化が行われています。

このファイルは既にセグメン ト化されているので、そのセグメン トはファ イルに存在し続けます。このよ うなファ

イルはその後もセグメン ト化が続行され、自動アップグレードが起こるサイズ 64 GB までそのサイズを増大させ

るこ とができます。 この動作は、 ファ イルが既にセグメン ト化されているため、 設定プロパティがオンまたはオ

フのどちらであっても同じです。 ファ イルのサイズが 64 GB を超える と、 バージ ョ ン 9.0 ファ イルの 大許容サ

イズ 128 GB に達するまでセグメン ト化が続けられます。

バージ ョ ン 8.x ファ イルでサイズが 1.5 GB の場合は、 そのサイズを 2 GB まで増大させるこ とができます。 設定

プロパティがオフの場合、 このファイル サイズが 2 GB になった時点で自動アップグレードが起こ り ます。 この

ファ イルは非セグメン ト化ファ イルと して、そのサイズをバージ ョ ン 9.0 ファ イルの 大許容サイズ 128 GB まで

増大させるこ とができます。設定プロパティをオンに設定する と、 2 GB 単位のファイルのセグメン ト化が続行さ

れ、 そのサイズを 64 GB のサイズまで増大させるこ とができます。 バージ ョ ン 8.x ファ イル用の 大許容サイズ

5 任意 16 4 4 4 4 4 4 4 4 N/A1

1 N/A は 「適用外」 を意味します。

[作成フ ァ イルのバージ ョ ン]

設定プロパテ ィ の設定 [セグ メ ン ト サイズを 2 GB に制限] 設定

プロパテ ィ の設定 フ ァ イル バージ ョ ンの自動ア ッ プグレー ドが

起こ る フ ァ イル サイズ

9 (デフォルト ) オン (デフォル ト、 オプシ ョ ンがチェ ッ

ク されている)

64 GB (バージ ョ ン 8.x ファイルの 大サイズ)

9 (デフォルト ) オフ (オプシ ョ ンがチェ ッ ク されていな

い)

2 GB(バージ ョ ン 8.x ファイルのセグメン トの

サイズ)

表 5 フ ァ イル バージ ョ ン 9.0 以下のフ ァ イル サイズおよびページ サイズの比較

フ ァ イル バージ ョ ン

1 ページあた り

のレ コー ド数

大ページ数

(100 万単位)

各ページ サイズ (バイ ト ) に対する フ ァ イル サイズ (GB)

512 1024 1536 2048 2560 3072 3584 4096 8192

8

Page 25: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベースの概念

64 GB になった時点で、 バージ ョ ン 9.0 への自動アップグレードが起こ り ます。 ファ イルのサイズが 64 GB を超

える と、 バージ ョ ン 9.0 ファ イルの 大許容サイズ 128 GB に達するまでセグメン ト化が続けられます。

[作成ファイルのバージ ョ ン] オプシ ョ ンは、データベース エンジンのファイル互換性用プロパティの 1 つです。

「PCC でエンジンの設定にアクセスするには」 を参照してください。

メ モ ファ イル バージ ョ ンの自動アップグレードが動作するのは、 8.x ファ イル形式から 9.0 ファ イル形式と

いうパターンのみです。 これ以外のファイル バージ ョ ンの組み合わせの場合、 この自動アップグレードは動

作しません。 たとえば、 8.x ファ イル形式から 9.5 ファ イル形式、 あるいは 7.x ファ イル形式から 9.0 ファ イ

ル形式という組み合わせではアップグレードは起こ り ません。

アクセス方法

Pervasive PSQL データベースのデータにアクセスする 2 つの主な方法は、 ト ランザクシ ョナルおよびリ レーシ ョ

ナル アクセスです。

ト ランザクシ ョナルでは、アプリ ケーシ ョ ン プログラムはデータ レコード内を物理的と論理的のどちらの順序に

従ってでも自由に移動するこ とができます。 ト ランザクシ ョナル API を使用するこ とで、アプリ ケーシ ョ ン プロ

グラムは直接制御を備え、開発者はデータの基本構造の知識に基づいてデータ アクセスを 適化するこ とができ

ます。 Btrieve は、 ト ランザクシ ョナル データベース エンジンの 1 つです。

リ レーシ ョナルとは、 データがテーブル、 行、 列の集ま り と して表されるアクセス方法です。 リ レーシ ョナル モデルは、 開発者を基となるデータ構造から切り離し、 データを単純な表形式で表します。 ODBC はリ レーシ ョナ

ル アクセス方法の 1 例です。

単一のアプリ ケーシ ョ ンが両方のタイプのアクセスを含むこ と もあ り ます。 たとえば、 データの追加と変更には

ト ランザクシ ョナル アクセスを使用し、データの照会およびレポート作成にはリ レーシ ョナル アクセスを使用す

るこ とができます。

アプリ ケーシ ョ ン プログラムが使用するアクセス方法を知っておく必要があ り ます。これはインス トールされる

Pervasive PSQL によって異なり ます。 アクセス方法によって設定が異なり ます。 特定のアクセス方法を 適化す

るために設定をカスタマイズする必要があ り ます。

利用するアプリ ケーシ ョ ンが使用するアクセス方法を知っていれば、ト ラブルシューティングも容易になり ます。

たとえば、 アプリ ケーシ ョ ン プログラムが ODBC 経由でリ レーシ ョナル アクセスを使用している場合、 データ

ベース管理システムではなく ODBC レベルの問題を解決する必要がある可能性があ り ます。

設定のカスタマイズに関する作業と リ ファレンスについては、 「設定リ ファレンス」 を参照して ください。

クライアント / サーバー通信

MKDE は、 ローカルおよびク ライアン ト / サーバーの 2 種類の処理モードをサポート します。 ローカル モードで

データベースにアクセスするアプリ ケーシ ョ ンは、ローカルにある MKDE にアクセスします。ローカルの MKDEは、ローカルまたはネッ ト ワークのハード ディ スクの I/O を実行するワークステーシ ョ ンのオペレーティング システムに要求を出します。

ク ラ イアン ト / サーバー モードでは、 共有ファイル サーバー上で実行されるサーバー MKDE を使用します。 ア

プリ ケーシ ョ ン プログラムがク ライアン ト / サーバー モードでデータベース エンジンにアクセスしている と き

は、 リ クエスターがリモート MKDE に接続します。 この リ クエスターは、 オペレーティング システムがサポー

トするネッ ト ワーク プロ ト コルを使用して、ト ランザクシ ョ ン レベルのリ クエス トおよびデータ レコードを、ア

プ リ ケーシ ョ ン プログラムおよびサーバー MKDE 間で受け渡しします。 ファ イル I/O 機能は、 ク ラ イアン ト /サーバー モードのサーバー MKDE によって完全に処理され、 ワークステーシ ョ ンには共有データ ファ イルのた

めのオペレーティング システムのハンドルは割り当てられません。データベース操作は、各ワークステーシ ョ ン

に代わってサーバー ベースの MKDE によって実行されます。

処理モードは、 アプリ ケーシ ョ ン プログラムそのものではなく、 ワークステーシ ョ ンの設定によって決定される

こ とに注意してください。つま り、アプリ ケーシ ョ ンはローカルと ク ライアン ト / サーバー、どちらのデータベー

9

Page 26: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベース

ス エンジンにもアクセスできます。 アプリ ケーシ ョ ン プログラムは、 ローカル モードから ク ライアン ト / サー

バー モードに切り替える際に再コンパイルする必要はあ り ません。

ワークグループおよびサーバー エンジンはどちらのモードでも動作します。データベース エンジンと同一マシン

上のアプリ ケーシ ョ ンがエンジンにアクセスする場合、ローカル モードで動作します。データベース エンジンと

異なるマシン上のアプリケーションがエンジンにアクセスする場合、 ク ラ イアン ト / サーバー モードで動作します。

ク ラ イアン ト / サーバーの設定は、 Pervasive PSQL のワークグループおよびサーバー バージ ョ ン用にカスタマイ

ズできます。 スタンドアロンでも ク ラ イアン ト / サーバーでも、 その設定を容易にするための構成の設定プロパ

ティが Pervasive PSQL Control Center (PCC) に含まれています。

ク ラ イアン ト / サーバー通信およびデータベース エンジンの設定に関する作業と リ ファレンスについては、 「設

定リ ファレンス」 を参照してください。

データベース コー ド ページ

エンコードは文字セッ ト を表す標準規格です。 文字データは、 コンピューターがデジタル処理できる標準形式に

変換する、 つま りエンコードする必要があ り ます。 エンコードは、 Pervasive PSQL データベース エンジン (サー

バー) と Pervasive PSQL ク ラ イアン ト アプリ ケーシ ョ ン との間で規定する必要があ り ます。 互換性のあるエン

コードを使用すれば、 サーバーと ク ラ イアン トでデータが正し く変換されます。

エンコードのサポートは、 データベース コード ページと ク ラ イアン ト エンコードに分割されています。 この 2種類のエンコードは、別個のものですが相互に関係しています。 説明を簡単にするために、 データベース コード

ページと ク ラ イアン ト エンコードを一緒に説明します。 『Getting Started with Pervasive PSQL』 の 「ク ラ イアン ト

用のネッ ト ワーク通信の設定」 を参照して ください。

ODBC DSN 作成オプシ ョ ン

『SQL Engine Reference』 の 「DSN と ODBC アド ミ ニス ト レーター」 を参照して ください。 このセクシ ョ ンでは

ODBC 接続文字列についても説明しています。

idshosts フ ァ イルの使用

一般的には、 アプリ ケーシ ョ ンは独自のファイルの場所情報を指定します。別の方法と して、 テキス ト ファ イル

idshosts の情報に基づいてファイル場所のマッピングを指定するこ とができます。

idshosts ファ イルは Pervasive PSQL (IDS) の一部でした。 IDS はコア製品から取り除かれましたが、 idshosts ファ

イルの設定は依然と して可能です。

作成したアプリ ケーシ ョ ンでは idshosts によるマッピング機能を使用しないという場合は、 [IDS の使用] 設定を

オフにします。 あるいは、 既に idshosts を使用していた り、 この代替方法を使用してファイルの場所をマップし

たいと考えている場合には、 [IDS の使用] 設定をオンにします。 「IDS の使用」 を参照してください。

idshosts ファ イルを使用する場合は、ファ イルにアクセスして内容を読み取る時間が必要となるため、パフォーマ

ンスが低下するこ とに注意して ください。

idshosts ファ イルは、 Windows または Linux ク ラ イアン ト リ クエスターでのみ使用できます。 ク ラ イアン ト は

Windows または Linux 上の Pervasive PSQL サーバーと通信できます。

メ モ [IDS の使用] をオンに設定するには、Pervasive PSQL 8.5 以降が必要です。 リ クエスターはデータベー

ス URI を使用して IDS 情報を示します。 データベース URI は Pervasive PSQL 8.5 で追加されました。 開発者

リ ファレンス 『Pervasive PSQL Programmer's Guide』 の 「データベース URI」 を参照してください。

[IDS の使用] にオンを設定した場合、 [リ モー ト MicroKernel エンジンの使用] もオンに設定する必要があ

り ます。 [リ モー ト MicroKernel エンジンの使用] はデフォルトでオンです。

「IDS の使用」 および 「リモート MicroKernel エンジンの使用」 を参照してください。

10

Page 27: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベースの概念

idshosts エン ト リの形式

idshosts ファ イル内のエン ト リの形式については、 ファ イル自体のコ メン ト を参照して ください。 コ メン トには

マッピングの例も提供されています。 デフォルトで、 Windows プラ ッ ト フォームの場合には、 idshosts ファ イル

はデータベース ク ラ イアン ト のインス トール ディ レク ト リ下の \bin ディ レク ト リにインス トールされます。

Linux の場合には、idshosts ファ イルはデータベース ク ライアン トのインス トール ディレク ト リ下の \etc ディ レ

ク ト リにインス トールされます (例 : /user/local/psql/etc)。

11

Page 28: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベース

12

Page 29: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

2

データベース管理の概念

データベース管理について

Pervasive PSQL v11 SP3 は、 Pervasive Software の MicroKernel Database エンジンを中心に構成された総合的なデー

タベース管理システムです。 Pervasive PSQL によ り、 インス トールおよび管理が容易になり、 高度な信頼性とパ

フォーマンスが実現します。 Pervasive PSQL は事実上メンテナンスなしで何か月も何年も実行できますが、 その

ユニークな機能を理解し、 役に立つタスクの実行方法を学ぶこ とによ り、 そのすべてを自分のものにするこ とが

できます。 このマニュアルでは、 Pervasive PSQL エンジンと関連するデータベースのチューニング、 構成および

管理の方法を説明します。

「設定」

「データベース セキュ リティ」

「データの保存と復元」

「 ト ラブルシューティング」

「有用なユーティ リ ティ」

13

Page 30: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース管理の概念

設定

データベース エンジンのサーバーと ク ライアン トそれぞれについて別個に構成するこ とができます。この設定に

よ り、 ビジネスの要件に基づいて、 エンジンのパフォーマンスを 適化するこ とができます。

下図は、 オペレーティング システムでのアプリ ケーシ ョ ン プログラムからデータベース ファ イルへのフローを

示しています。 データベース エンジンはアプリ ケーシ ョ ン プログラムとデータ ファ イルの間に存在します。

図 1 データベース エンジン設定の概念図

サーバーに設定可能な項目は以下のとおりです。

アクセス

通信プロ ト コル

互換性 (以前のバージ ョ ンの MKDE との互換性)

データの整合性

デバッグ

ディ レク ト リ

メモ リの使用

パフォーマンス

ク ラ イアン トに設定可能な項目は以下のとおりです。

アクセス

通信プロ ト コル

パフォーマンス

セキュ リティ

アプリ ケーシ ョ ンの特性

これらの構成は PCC を使用して行います。 設定に関する作業と リ ファレンスについては、 「設定リ ファレンス」

を参照してください。

14

Page 31: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース セキュ リ テ ィ

データベース セキュ リ テ ィ

Pervasive PSQL データベースへのアクセスはいくつかの方法で保護されています。 管理レベルのセキュ リティは

オペレーティング システムを介して設定されます。 オペレーティング システムのネイティブなセキュ リティ メカニズムを使用して、 Pervasive PSQL データベースを誰が管理できるかを制御するこ とができます。

Pervasive PSQL はユーザーおよびグループ レベルの関連するセキュ リティ も提供します。 誰がどのよ うな資格で

データにアクセスできるかを制御するこ とができます。 たとえば、 Pervasive PSQL データベース内の各テーブル

で、 ユーザーまたはグループがテーブルに対し、 SELECT、 UPDATE、 INSERT、 DELETE、 ALTER TABLE を実

行できるかど うかを指定するこ とができます。

データベース全体に対しパスワードを設定してセキュ リティを確立するこ とができます。この時点で、データベー

スにアクセスする権限を与えられたユーザーのみが Master とい う名前のデフォルト ユーザーとな り ます。 その

後、 ユーザーやグループを追加するこ とができます。

セキュ リ テ ィは PCC 内で設定する こ とができます。 また、 GRANT および REVOKE の 2 つの SQL (StructuredQuery Language : 構造化照会言語) ステート メン ト もサポート されています。 GRANT および REVOKE を使用す

る と、 列レベルでセキュ リティを設定するこ と もできます。

GRANT 構文はト ランザクシ ョナル オーナー ネームと統合され、 リ レーシ ョナル アクセスの場合にもオーナー

ネームを使用するこ とができます。

セキュ リ ティ、 オーナー ネーム、 ユーザーおよびグループに関する詳細は、 第 7 章を参照してください。

15

Page 32: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース管理の概念

データの保存と復元

データのバッ クアップはデータベースの保護と ト ラブル復旧を確実にするための重要な手順です。 PervasivePSQL データベースをバッ クアップおよび復元するにはいくつかの方法があ り ます。

Pervasive PSQL データベースにアクセスするアプ リ ケーシ ョ ンを停止する こ とができる仕事の場合、 オペレー

ティング システムやサードパーティ製ソフ ト ウェアを使ってデータベース ファ イルをバッ クアップおよび復元

するこ とができます。

アーカイブ ログはオペレーテ ィ ング システムのユーティ リ テ ィ を補完するのに使用できる も う 1 つのバッ ク

アップ方法です。 アーカイブ ログを使用する と、 後のバッ クアップ以降のすべてのデータベース操作のログを

保存するこ とができます。システム障害が発生した場合、バッ クアップからデータ ファ イルを復元し、 ログ ファ

イルから変更をロールフォワード して、 データベースをシステム障害発生前の状態に戻すこ とができます。

Continuous オペレーシ ョ ンを使用する と、 データベース エンジンが実行中でユーザーが接続中でも、 データベー

ス ファ イルのバッ クアップを行う こ とができます。Continuous オペレーシ ョ ンの開始後、データベース エンジン

はアクティブなデータ ファ イルを閉じ、 すべての変更をテンポラ リ データ ファ イル (デルタ ファ イルと呼びま

す) に格納します。 バッ クアップが完了したら、 Continuous オペレーシ ョ ンを解除します。 データベース エンジ

ンはデルタ ファ イルを読み込み、 元のデータ ファ イルにすべての変更を適用します。

データベースのバッ クアップおよび復元に関する追加情報については、「ログ、バッ クアップおよび復元」 を参照

してください。

16

Page 33: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ト ラ ブルシューテ ィ ング

ト ラ ブルシューテ ィ ング

『Pervasive PSQL User's Guide』 および 『Getting Started with Pervasive PSQL』 マニュアルには、 ト ラブルシューティ

ングに関する情報が含まれています。 『Getting Started with Pervasive PSQL』 マニュアルには Pervasive PSQL 製品

のインス トールに関する ト ラブルシューティングの情報が記載されています。『Pervasive PSQL User's Guide』 には

FAQ のリ ス トに加えて一般的な ト ラブルシューティングの情報が記載されています。

そのほかに使用できる ト ラブルシューティングの情報源には、 顧客の実際の解決方法や一般的な問題に基づいた

Pervasive Software ナレッジ ベース、 および Pervasive Software Web サイ トのテクニカル サポートがあ り ます。

17

Page 34: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース管理の概念

有用なユーテ ィ リ テ ィ

Pervasive PSQL には、 データベースの制御および管理に役立つよ うデザインされたさまざまなユーティ リ ティが

付属しています。 Pervasive PSQL の主なユーティ リ ティの一覧については、 『Pervasive PSQL User's Guide』 を参照

してください。 カスタム インス トールを実行した場合は、 インス トールされないユーティ リ ティ もあるこ とに注

意してください。 『Getting Started with Pervasive PSQL』 を参照してください。

18

Page 35: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

3

Pervasive コ ンポーネン ト のアーキテ クチャについて

アーキテクチャ機能の説明

この章では、 インス トールや重要なアプリ ケーシ ョ ンの実行で問題が起こらない環境を提供するために設計され

た機能について説明します。 以下の項目について説明します。

「Pervasive PSQL データベース エンジン」

「 リ レーシ ョナル アーキテクチャの概要」

「エラー コード」

「Pervasive Auto-Reconnect」

19

Page 36: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive コ ンポーネン ト のアーキテ クチャについて

Pervasive PSQL データベース エンジン

Pervasive PSQL のエンジンは、 以下の 2 つのデータベース サブエンジンから構成されています。

MicroKernel Database エンジン (MKDE) 。 これは Pervasive PSQL アプリ ケーシ ョ ンをサポートする Btrieve/MicroKernel API を提供します。

SQL Relational Database エンジン (SRDE)。 これは Pervasive PSQL アプリ ケーシ ョ ンをサポートする ODBC/SQL API を提供します。

共通ア ド レス空間

Pervasive PSQL は 適化されたメモ リ アーキテクチャを使用し、 ト ランザクシ ョナル アクセス と リ レーシ ョナル

アクセスの両方に高いパフォーマンスを提供します。MKDE および SRDE は、共に同一プロセス アドレス空間で

動作し、 それらの間の通信にかかる CPU 時間を 小限にします。

行レベルのロ ッ ク

同時にた く さんの更新や書き込みが行われた り、 長時間に渡って ト ランザクシ ョ ンが開かれたままになる複数

ユーザー環境では、 行レベルのロ ッ クによってデータベース エンジンのパフォーマンスが向上します。

ト ランザクシ ョ ンはページ全体ではな く直接影響する行のみをロ ッ ク します。 ク ラ イアン トはあるページのレ

コードの変更を、 他のク ラ イアン トが同一ページの別のレコードを変更するのと同時に行う こ とができます。 2番目のアプリ ケーシ ョ ンは、 初のアプリ ケーシ ョ ンが現在ロッ ク しているのとまった く同じレコードを変更し

よ う と したと きにのみ、 待つこ とが必要になり ます。 したがって、 行レベルのロ ッ クは複数ユーザー環境で総体

的な待ち時間を減少させ、 パフォーマンスを向上させます。

この機能は MicroKernel Database エンジン内で完全に透過です。 この機能は常に動作していて、 サポート される

すべてのオペレーティング システム プラ ッ ト フォームと同様、 サーバー、 ワークグループでサポート されます。

この機能は、 データ ファ イル形式 v6.x 以降でサポート されます。

行レベルのロ ッ クはデータ ページに実装され、部分的にはキー ページにも実装されます。可変ページには行レベ

ルのロ ッ クは適用されません。キー ページの一部分の変更によって、キー エン ト リが別のページに移動するこ と

があ り ます。 その例と して、 キー ページが分割または結合される と きがあ り ます。 これらの変更では、 ト ランザ

クシ ョ ンが完了するまで完全なページ ロ ッ クが継続します。

MicroKernel Database エンジン

MicroKernel Database エンジン (MKDE) は、 Pervasive PSQL アプリ ケーシ ョ ンの Btrieve および MicroKernel APIをサポート しています。Pervasive PSQL Sever および Pervasive PSQL Workgroup は共に、エンジンと同じコンピュー

ター上で実行されるローカル アプリ ケーシ ョ ンをサポート します。 サーバーの MKDE は、 ローカル アプリ ケー

シ ョ ン と リモート (ク ラ イアン ト / サーバー) アプ リ ケーシ ョ ンの両方をサポート します。 ワークグループの

MKDE は、 リモート マシンで実行されるアプリ ケーシ ョ ンにも対応し、 リモート マシン上の別のピア ワークグ

ループ エンジンによる リ クエス ト を処理します。

MicroKernel エンジンには、 2 つのバージ ョ ンがあ り ます。サーバー エンジンは、 Linux および Windows サーバー

上で実行可能です。 ワークグループ エンジンは Windows 上でのみ実行できます。 また、 このエンジンはシング

ル ユーザーや小規模のワークグループ構成向けに設計されています。

デフォルトでは、 ワークグループ エンジンは Windows のログイン時に起動されるよ う設定されています。 ファ

イルが既にエンジンによって開かれている場合、ワークグループ エンジンは、別のピア エンジンによる リ クエス

ト を処理できます。 特定のマシンを設定してデータベース エンジンをゲート ウェイ と して使用するこ と もでき、

ほかのワークグループ エンジンがファイルを開く こ とを回避します。

Windows のサーバー エンジンは、インス トールされる と Windows のサービスと して実行されます。ワークグルー

プ エンジンは、 インス トールされる とアプリ ケーシ ョ ンまたはサービス と して実行されます。 アプリ ケーシ ョ ン

と してインス トールされた場合は、 ワークグループ MKDE の実行中は、 それを表すト レイ アイコンが表示され

ます。 ワークグループ MKDE を実行していない場合、 ト レイ アイコンは表示されません。 サーバー エンジンの

20

Page 37: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL データベース エンジン

場合、またはワークグループ エンジンがサービス と してインス トールされた場合、 ト レイ アイコンは表示されま

せん。 「サーバーとワークグループの技術的な相違」 も参照して ください。

Pervasive PSQL の Btrieve および ODBC API を使用するこ とによ り、 アプリ ケーシ ョ ンからのローカルまたはリ

モートのデータベース エンジンへの接続情報が表示されない、分散型データベース アプリ ケーシ ョ ンを作成でき

ます。 このアーキテクチャを使用する と、 アプリ ケーシ ョ ンは共存するデータ、 つま りアプリ ケーシ ョ ンと同じ

コンピューターで実行されているデータにアクセスする と同時に、 リモート コンピューターのデータにもアクセ

スできます。 さ らに、 SQL データベースは、 ローカルの MicroKernel Database エンジンによって処理される DDF(データ辞書ファ イル) 、 およびリモートの MicroKernel Database エンジンによって処理されるデータ ファ イル

(テーブル) を作成するこ とによ り、 分散化が可能です。 ローカルの MicroKernel Database エンジン以外のエンジ

ンにも処理されるこのよ うな SQL データベースは、 「混合アクセス データベース」 と呼ばれます。

混合アクセス データベースには、 以下の制約があ り ます。

以下の機能はサポート されません。 参照整合性 (RI) 、 バウンド データベース、 ト リ ガー、 分散された ト ラ

ンザクシ ョ ン ア ト ミ シティ (2 段階のコ ミ ッ トが必要)。

DDF にアクセスするには、 SRDE および MicroKernel Database エンジンを同じコンピューター上で実行する

必要があ り ます。

RI の関係に関連するテーブルのデータ ファ イル、 ト リガーが定義されているテーブル、またはバインド され

た名前付きデータベースにあるテーブルは、 リモートの MicroKernel Database エンジンによって開く こ とが

できません。

ファ イルを開く際、SRDE は、 リ クエス ト を処理する MicroKernel Database エンジンのバージ ョ ンを確認しま

せん。 バージ ョ ン 6.30 以降の MicroKernel Database エンジンの API サポート (たとえば、 共有ロ ッ クなど)

を必要とするオペレーシ ョ ンが、 バージ ョ ン 6.30 よ り前の MicroKernel Database エンジンに対して発行され

た場合は、 エラー コードが返されます。 DDF を開く際、 または DDF ファ イルやデータ ファ イルをバインド

しよ う とする際に、SRDE では、 ローカルの MicroKernel Database エンジンがリ クエス ト を処理しているこ と

を確認します。

非同期 I/Oサーバー版の Windows 用 MicroKernel エンジンは、 ページをディ スクに書き込む際に非同期 I/O を使用します。

こ の機能はパフ ォーマン ス を向上させます。 MicroKernel は直ちに Windows システム キ ャ ッ シ ュ または

MicroKernel のキャ ッシュにページを書き込みます。 次に、 Windows はページがディ スク上にある と信号を送っ

て、 MicroKernel が効率的に書き込み操作を行えるよ うにします。

MicroKernel でたく さんの並行オペレーシ ョ ンが同時に行われる場合、 特にデータセッ トがス ト ラ イプ セッ トの

ディ スク ド ラ イバー上にある場合には、 読み込みパフォーマンスも向上しています。 各読み込みは、ページが利

用可能になるまでワーカ スレッ ドを待機させます。非同期 I/O では、オペレーティング システムは複数の読み込

み要求の作業をプールして、 読み込み操作をよ り効率的に行います。

SQL Relational Database エンジン

Pervasive PSQL Relational Database エンジン (SRDE) には、 Pervasive PSQL アプリ ケーシ ョ ン用の ODBC サポー

トが用意されています。

ODBC ク ライアン トのプラ ッ ト フォームには、Windows プラ ッ ト フォームがあ り ます。SRDE へのリモート ODBCアプリ ケーシ ョ ン アクセスには、 ODBC ク ライアン トがインス トールされている必要があ り ます。 これは、 ネッ

ト ワーク上でク ライアン ト側の ODBC 呼び出しを ODBC 通信サーバーに転送する専用 ODBC ド ラ イバーです。

SRDE には以下のよ うな機能が含まれています。

ア ト ミ ッ ク ステート メン ト

双方向カーソル (ODBC カーソル ラ イブラ リ を使用)

外部結合への対応

更新可能なビュー

ODBC のデータ型への対応

21

Page 38: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive コ ンポーネン ト のアーキテ クチャについて

テーブル内の複数の可変長列

ODBC 通信サーバーは、 以下の機能を実行します。

ODBC ク ライアン ト用ネッ ト ワーク通信のサポート

サーバー側 ODBC ド ラ イバー マネージャーへの ODBC 呼び出しの転送 (ODBC 呼び出しは SRDE に転送)

SQL および ODBC の詳細については、 『SQL Engine Reference』 の 「SQL の概要」 および 「DSN と ODBC アド ミ

ニス ト レーター」 を参照してください。

22

Page 39: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

リ レーシ ョ ナル アーキテ クチャの概要

リ レーシ ョ ナル アーキテ クチャの概要

下図は、 サーバ版 Pervasive PSQL のリ レーシ ョナル ODBC インターフェイスのアーキテクチャ コンポーネン ト

を示したものです。 SQL 接続マネージャーは、 MKDE および SRDE と同じプロセス アドレス空間で起動し実行

します。

Pervasive PSQL リ レーシ ョ ナル アーキテ クチャ : サーバー

SQL 接続マネージャーは、 大 2000 までの同時接続をサポート しており、 ODBC ド ラ イバー マネージャーを使

用して SQL Relational Database エンジン (SRDE) を呼び出します。 エンジンは MicroKernel の上に置かれます。

図 2 は、Pervasive PSQL のク ライアン ト / サーバー リ レーシ ョナル アーキテクチャを示します。ク ライアン トは、

TCP/IP を介してサーバーの SQL 接続マネージャーに接続します。 このアーキテクチャは、 サーバー エンジンお

よびワークグループ エンジン (ローカル ワークグループ エンジンから リモート ワークグループ エンジンへの接

続にクライアン ト DSN を使用する場合) に適用されます。

図 2 ク ラ イアン ト / サーバー リ レーシ ョ ナル アーキテ クチャ

23

Page 40: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive コ ンポーネン ト のアーキテ クチャについて

図 3 は、ローカル ワークグループ エンジンから リモート データベースへの接続に DSN を使用する場合のワーク

グループ リ レーシ ョナル アーキテクチャを示します。 リモート ワークグループ エンジンはリモート データへの

ゲート ウェイ となっているこ とを想定しています。

図 3 ワークグループ リ レーシ ョ ナル アーキテ クチャ

24

Page 41: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

エ ラー コー ド

エラー コー ド

Pervasive PSQL の多くの 上位コンポーネン トは、 その下の階層のコンポーネン トからのエラー コードがそのま

ま渡されるため、呼び出し元アプリ ケーシ ョ ンまたはログ ファ イルでエラーの実際の原因を明確に特定できるよ

うにな り ました。エラー コードがさまざまな状況に該当する可能性がある場合は、 Pervasive PSQL イベン ト ログ

内の具体的な情報によ り、そのエラーの根本的な原因が特定されます。『Pervasive PSQL User's Guide』の 「PervasivePSQL メ ッセージ ログ」 を参照して ください。

25

Page 42: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive コ ンポーネン ト のアーキテ クチャについて

Pervasive Auto-Reconnect自動再接続機能の Pervasive Auto-Reconnect (PARC) を使用する と、 ク ライアン ト / サーバーまたはワークグルー

プ アプ リ ケーシ ョ ンは、 一時的なネッ ト ワークの中断時にも現在のデータベース オペレーシ ョ ンを中止しませ

ん。 Pervasive PSQL がネッ ト ワークの中断を検出する と、 設定可能な指定時間ごとに自動的に再接続を試行しま

す。 この機能はクライアン トのコンテキス ト も維持するので、 通信が再確立されたと き、 ネッ ト ワークの中断が

起こったと き と まったく同じよ うにデータベース アクセスが継続されます。

この機能は、 アプリ ケーシ ョ ンのコンテキス ト を維持し、 ネッ ト ワーク通信が中断されたと きにク ライアン ト ま

たはサーバーがその時点でデータを送信しよ う と していたかど うかにかかわらず、 再接続を試行します。

ネッ ト ワークが中断したと き、一定の待ち時間の経過ごとに再接続が試行されます。すべての接続で、 0.5、 1、 2、4、 8 秒ごとに継続的に再接続が試行され、 その後、 自動再接続タイムアウ トの値に達するまで 8 秒ごとに試行さ

れます。 大待ち時間に達しても接続に成功しない場合、 現在のオペレーシ ョ ンは失敗し、 ク ライアン トの接続

はリセッ ト されます。 大の待ち時間は 45 秒から 65,635 秒の間に設定できます。

この機能はデフォルトで使用不可になっています。 この機能を動作させるには、 ク ライアン ト とサーバーの両方

の設定で、 「自動再接続の有効化 (Windows のみ)」 を選択する必要があ り ます。 待ち時間の値は、 サーバー設定

の 「自動再接続タイムアウ ト 」 を使って行う こ とができます。

備考

この機能は、 Btrieve、 ODBC、 および DTI 接続でサポート されています。

Btrieve 通信サーバーは、 ト ランザクシ ョ ン ログ ディレク ト リに *.PAR または *.SAR ファ イルを書き込むこ とが

あ り ます。 これらは、 サーバーがクライアン トに送信しよ う と した 新のアイテムのコンテキス ト を含むテンポ

ラ リ ファ イルです。 再接続が行われる と、 ク ラ イアン トはデータの再送信を要求します。 サーバーはこれらの

ファイルを読んで適切なデータを取得します。 これらのファイルは、 データが読み取られたあと、 接続が 終的

に終了する と きにサーバーが削除します。

26

Page 43: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

4

設定リ フ ァ レンス

Pervasive PSQL で使用できる構成方法および設定

この章では、 以下の項目について説明します。

「設定の概要」

「PCC による設定」

「CLI ユーティ リ ティによる設定」

「設定のプロパティ」

「サービス設定プロパティ」

「サーバー設定プロパティ」

「Windows ク ライアン ト設定プロパティ」

「Linux ク ラ イアン ト設定プロパティ」

27

Page 44: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

設定の概要

設定は、 データベース エンジンと ク ライアン トの設定を指定するこ とができるプロセスです。 設定は、 PervasivePSQL Control Center (PCC) を使用するか、 または コマンド ライン インターフェイス (CLI) ユーティ リ ティ を

使用して指定できます。

PCC では、設定はエンジンまたはク ライアン トのプロパティです。 「PCC でエンジンの設定にアクセスするには」

および 「PCC でローカル ク ライアン トの設定にアクセスするには」 を参照してください。

コンポーネン トの設定は任意です。 設定を行わない場合は、 各コンポーネン トにはデフォルトの構成が読み込ま

れます。 よい結果を得るためには、 ク ライアン ト とエンジン コンポーネン トで同じバージ ョ ンの PCC を使用し

てください。

設定を使用できるのは、 以下の理由からです。

システムまたは Pervasive PSQL アプリ ケーシ ョ ンが、 設定の変更を必要とするため。 お使いのアプリ ケー

シ ョ ンのマニュアルで、 推奨される値を確認して ください。 複数のアプリ ケーシ ョ ンを同時に起動する場合

は、 それぞれに推奨されている値の合計を使用します。 複数のアプリ ケーシ ョ ンを順次起動する場合は、 推

奨されている も高い値を使用します。

設定を 適化して Pervasive PSQL が必要以上にメモ リ を使用せずにサービスを提供できるよ うにするため

(マニュアルに記述されている必要メモ リは、コンピューターのリ ソースを 大限に活用するためのガイ ド ラ

インとな り ます)。

設定自体の説明は、 「設定リ ファレンス」 にあ り ます。

設定の変更が有効になっている こ と を確認する

エンジンの設定によっては、設定内容の変更後にデータベース エンジンの再起動が必要になり ます。エンジンを

再起動するこ とによ り、設定が有効になり ます。 この章の各設定の説明では、 データベース エンジンの再起動が

必要かど うかを明示しています。 また、 設定の変更によ りエンジンの再起動が必要な場合は、 PCC によ りポップ

アップ メ ッセージが表示されます。

CLI ユーティ リ ティ も、入力ファイルを使用しないでコマンド ラインから設定を変更した場合には通知を行いま

す。 入力ファ イルを使用した場合は、 常にエンジンの再起動が要求されます。 「CLI ユーティ リ ティによる設定」

を参照してください。

コマン ド ラ インからサーバー データベース エンジンの停止および起動を行う場合は、 『Pervasive PSQL User'sGuide』 の以下の ト ピッ クを参照して ください。

「Windows サーバー上でのサーバー エンジンの起動と停止」

「Linux 上でのデータベース エンジンの起動と停止」

ワークグループ エンジンの停止および起動を行う場合は、 『Pervasive PSQL User's Guide』 の 「Windows 上での

ワークグループ エンジンの起動と停止」 を参照してください。

さ らに、 ク ライアン ト プロパティを変更する と、 ク ライアン ト を再起動する必要がある場合があ り ます。 ク ライ

アン トの再ロードは、 Pervasive PSQL に依存するすべてのアプリ ケーシ ョ ンを終了して再起動するだけです。

別のマシンに接続する

ローカル ク ラ イアン トのコンポーネン トだけでなく、 ローカル エンジンおよびリモート エンジンの構成も行え

ます。 ただし、 エンジンはそれぞれ個別に構成する必要があ り ます。 「PCC による設定」 および 「CLI ユーティ

リ ティによる設定」 を参照して ください。

PCC を使って リモート マシンに接続している と きは、エンジン コンポーネン トのみを表示および変更できます。

ク ライアン トのコンポーネン ト (ワークグループ エンジン、 ワークステーシ ョ ン エンジン、 ク ラ イアン ト マシ

ンなど) は、 各マシンでローカルに設定する必要があ り ます。

28

Page 45: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

PCC による設定

PCC による設定

PCC では、 設定はエンジンまたはク ライアン トのプロパティです。 登録済みのエンジンはすべて Pervasive PSQLエクスプローラーの中にノード と して現れ、 プロパティを介して設定を構成できます。 Pervasive PSQL エクスプ

ローラー にはローカル ク ラ イアン トのみが現れます。

ク ラ イアン トの設定は、 各ク ライアン ト マシンで設定します。 デフォルトで、 PCC はク ライアン ト コンポーネ

ン ト と共にインス トールされます。

PCC でエンジンの設定にアクセスするには

1 Pervasive PSQL エクスプローラーで、 ツ リーのエンジン ノードを展開します (ノードの左の展開アイコンを

ク リ ッ ク します)。

2 設定を指定するデータベース エンジンを右ク リ ッ ク します。

3 [プロパテ ィ ー] をク リ ッ ク します。

4 ツ リー内で目的のオプシ ョ ン カテゴ リ をク リ ッ ク し、そのカテゴ リに含まれるオプシ ョ ンの設定内容を表示

します。

5 オプシ ョ ンで、 Shift+F1 を押すと、 当該設定のヘルプを表示できます。

PCC でローカル ク ラ イアン ト の設定にアクセスするには

1 Pervasive PSQL エクスプローラーで、ツ リーのローカル ク ラ イアン ト ノードを展開します (ノードの左の展

開アイコンをク リ ッ ク します)。

2 [MicroKernel ルーター] を右ク リ ッ ク します。

3 [プロパテ ィ ー] をク リ ッ ク します。

4 ツ リー内で目的のオプシ ョ ン カテゴ リ をク リ ッ ク し、そのカテゴ リに含まれるオプシ ョ ンの設定内容を表示

します。

5 オプシ ョ ンで、 Shift+F1 を押すと、 当該設定のヘルプを表示できます。

29

Page 46: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

CLI ユーテ ィ リ テ ィ による設定

設定のコマンド ライン インターフェイス (CLI) バージ ョ ンは、 Pervasive PSQL Control Center のプロパティ ダイ

アログ ボッ クス と同様の設定機能を提供します。CLI 設定は、Pervasive PSQL v11 SP3 でサポート される Windowsおよび Linux プラ ッ ト フォームでのみ動作します。

Windows では、実行可能プログラムは bcfg.bat で、デフォルトで Program Files ディ レク ト リにインス トールされ

ます。

Linux では、 実行可能プログラムの名前は bcfg といい、 デフォルトでは /usr/local/psql/bin ディ レク ト リ

にあ り ます。 Linux 上で bcfg を起動するには、 以下の条件に合致する必要があ り ます。

Linux で bcfg を実行する要件に合致しているのに、 実行に問題がある場合は、 以下のト ラブルシューティング ガイ ドを参考にしてください。

構成の設定

設定は、 コマンド ラ インから一度に 1 つずつ設定するか、入力ファイルに 1 つ以上を指定して設定するこ とがで

きます。

ヒ ン ト 入力ファイルを作成する便利な方法は、 初に出力ファイルを作成するこ とです。その後、出力ファ

イルを編集して、その編集したものを入力ファイルと して使用できます。編集が許可される種類については、

「入力ファイルの編集」 を参照して ください。

表 6 Linux での bcfg の実行要件

要件 説明

Java Runtime Environment (JRE) bcfg を実行するために必要な JRE コンポーネン トは、 Pervasive PSQL の一部と してイ

ンス トールされます。 bcfg は、 Pervasive PSQL の一部と してインス トールされる JREの 「ローカル」 バージ ョ ンを使用します。

Pervasive PSQL のサーバーまたは

ク ライアン ト

同一マシンに互換性のある Pervasive PSQL Server または Client が既にインス トールさ

れている必要があ り ます。『Getting Started with Pervasive PSQL』の「Pervasive PSQL Serverおよび Client (Linux 版) のインス トール」 を参照してください。

表 7 Linux での bcfg の実行に関する ト ラ ブルシューテ ィ ング ガイ ド

トラブルシューティングする状態 説明

"java.lang.UnsatisfiedLinkError"とい うエラーを受け取った。

このエラーは、 ファ イル ブラウザー アプリ ケーシ ョ ンを使用してスク リプ ト ファ イルを

ダブルク リ ッ ク して bcfg を起動しよ う と したと きに、 よ く起こ り ます。 コマンド プロン

プ トから bcfg を起動してください。

このエラーは、 LD_LIBRARY_PATH 変数が設定されていない場合に発生します。ユーザー

"psql" と して bcfg を実行している場合、 この変数は psql のプロファ イルに設定されます。

この変数は、 以下のコマンドを使用して明示的に設定するこ と もできます。

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/psql/lib

以下のエラー メ ッセージが返

された。

" データベース エンジンに接

続できません。 ターゲッ ト マシンがアクセス可能で、 かつ

エンジンが実行されている こ

とを確認してください。 "

このエラー状況は、 ローカル サーバーを管理しよ う と した場合に発生します。

ローカル サーバーを管理するには、 pvsw グループのメンバーであるか root ユーザーであ

る必要があ り ます。

『Getting Started with Pervasive PSQL』 の 「Linux での Pervasive PSQL のアカウン ト管理」 も

参照して ください。

30

Page 47: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

CLI ユーテ ィ リ テ ィ による設定

エンジンの再起動

入力ファイルを使用した場合、 bcfg ユーティ リ ティはファ イルの処理後、 データベース エンジンを再起動する

よ う促します。 再起動は、 入力ファイル内の設定に関係なく適用されます。 エンジンを停止して起動するこ とに

よ り、 その設定が有効になり ます。

コマンド ラインから構成を行った場合は、 bcfg はその設定が再起動を要求する場合にのみ、 データベース エン

ジンの再起動を促します。

エンジンの再起動方法については、 「設定の変更が有効になっているこ とを確認する」 を参照して ください。

シナ リ オの例 : コ マン ド ラ イ ンから単一の設定を構成する

ネッ ト ワークが停止した場合に、 ク ラ イアン トがサーバーに再接続するかど うかに関係する設定をオンにしたい

と します。 しかし、 その設定の完全な名前がわかり ません。 その場合は、 次の手順を踏みます。

1 コマンド プロンプ トで 「bcfg -H 再接続」 と入力し、 Enter キーを押します。 Linux 版の場合は " 再接続 "の部分を "reconnect" に置き換えてください。

ユーティ リ ティによって、文字列 " 再接続 " を含んでいるすべての設定がレポート されます。Linux の場合は

英語でレポート されます。

ID 設定名

-----------------------------

29 自動再接続の有効化

148 自動再接続の有効化

149 自動再接続タイムアウ ト

29 と 148 の 2 つが目的の設定であるよ うですが、 必要な設定は一体どちらなのでし ょ うか?

2 「bcfg 29」 と入力して、 Enter キーを押します。

ユーティ リ ティは、 設定 ID 29 について次のよ うにレポート します。

=====================

自動再接続の有効化

=====================

ID: 29

値 :Off

オプシ ョ ン :On Off

デフォルト値 :Off

説明 :< ク ライアン ト設定 > ネッ ト ワーク停止の場合に、 ク ライアン トがサーバーへの再接続を試みるかど

うかを指定します。 再接続されたク ライアン トは、 エラーに遭遇しなかったかのよ うに処理を続行します。

説明による と、 この設定はク ライアン トに適用されるものであ り、 現在 "Off" に設定されている という こ と

です。

3 「bcfg 29 on」 と入力して、 Enter キーを押します。

ユーティ リ ティは、 システム設定 29 が更新されたこ とを知らせます。

4 設定が "On" になっているこ とを確認したい場合は、 「bcfg 29」 と入力して Enter キーを押します。

ユーティ リ ティは、 設定 ID 29 について次のよ うにレポート します。

=====================

自動再接続の有効化

=====================

31

Page 48: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

ID: 29

値 :On

オプシ ョ ン :On Off

デフォルト値 :Off

説明 :< ク ライアン ト設定 > ネッ ト ワーク停止の場合に、 ク ライアン トがサーバーへの再接続を試みるかど

うかを指定します。 再接続されたク ライアン トは、 エラーに遭遇しなかったかのよ うに処理を続行します。

値が "On" に設定されているこ とに注目して ください。

入力フ ァ イルの編集

入力ファイルには、 少なく と も 1 つの設定に対する完全なレコードが 1 つは含まれていなければなり ません。 出

力ファイルを基に入力ファイルを作成する場合、 一部の設定を削除する際には、 残す設定のレコードは完全な状

態であるよ うにしてください。

完全なレコードには、 ID と値のペアが少なく と も 1 つ含まれます。 しかし、 見やすくするために、 先頭行の設定

の見出しから設定の説明までを含めるこ とをお勧めします。 たとえば、 以下は 「自動再接続の有効化」 に関する

レコードの、 推奨される 小レコードです。

=====================

自動再接続の有効化

=====================

ID: 29

値 :On

オプシ ョ ン :On Off

デフォルト値 :Off

説明 :< ク ライアン ト設定 > ネッ ト ワーク停止の場合に、 ク ライアン トがサーバーへの再接続を試みるかど

うかを指定します。 再接続されたク ライアン トは、 エラーに遭遇しなかったかのよ うに処理を続行します。

入力ファイルに設定レコードを含める という制限以外に、 唯一変更が許可されるのは値の割り当てです。 割り当

ては、 オプシ ョ ンまたは範囲によってどのよ うな値でも指定できます。

コ マン ド構文bcfg -I inputfile [-S server] [-U username]

[-P password] [-E]

または

bcfg -O outputfile [-S server] [-U username] [-P password] [-E]

または

bcfg ID [value] [-S server] [-U username] [-P password]

または

bcfg -H <keyword | ''keyword with spaces''> [-S server][-U username] [-P password]

32

Page 49: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

CLI ユーテ ィ リ テ ィ による設定

オプシ ョ ン

-I ユーティ リティに入力ファイルを渡す場合の必須パラ メーター。

inputfile 指定したサーバーに関する 1 つまたは複数の設定のレコード と、 各設定に割り当てる値を含んでいる

テキス ト ファイル。

入力ファ イルを作成する便利な方法は、 初に出力ファ イルを作成するこ とです。 その後、 設定値を

必要に応じて編集し、 その編集したものを入力ファ イルと して使用できます。 編集が許可される種類

については、 「入力ファイルの編集」 を参照して ください。

-O ユーティ リティ実行の出力結果をテキス ト ファ イルに送る場合の必須パラ メーター。

outputfile ユーティ リティの実行結果と して、指定されたサーバーの現在の設定を含んでいるテキス ト ファイル。

ID 設定を示す、 一意な 2 桁または 3 桁の整数。

設定のいくつかは、 設定を有効にするためにデータベース エンジンの再起動を必要と します。 再起動

が必要な場合は、 bcfg が再起動を促します。 「エンジンの再起動」 を参照して ください。

value 設定に割り当てる値。 有効な値は、 設定レコードの 「オプシ ョ ン」 または 「範囲」 に示されています。

Value を省略した場合、 ユーティ リ ティは現在の設定を返します。

Value を記述した場合、 ユーティ リ ティは値の割り当てを基に設定を変更します。

「シナリオの例 : コマンド ラインから単一の設定を構成する」 を参照して ください。

-H keyword 用のヘルプ検索オプシ ョ ン (つま り、 keyword 用のヘルプ)。Keyword を含む設定を検索するた

めのユーティ リ ティで、 ID および設定名を返すか、 あるいは " 一致する項目なし " を返します。 次の

行を参照して ください。

keyword ALLOW CLIENT-STORED CREDENTIALS や SUPPORTED PROTOCOLS など、 設定の名前。

keyword は大文字小文字を区別しないこ とに注意して ください。 ただし、 keyword にスペースを入れる

場合は、 文字列を二重引用符で囲む必要があ り ます。

ユーティ リティは、 部分的なキーワードを基にヘルプを表示できます。 たとえば、 「-H ク ラ イアン ト 」

と指定した場合は、 設定名の一部に " ク ライアン ト " とい う語を含んでいるすべての設定が返されま

す。Linux 版の場合は設定名が英語なので " ク ラ イアン ト " の部分を "client" に置き換えてください。「-H a」 と指定した場合は、 設定名に "a" を含んでいるすべての設定が返されます。

-S 設定がリモート サーバー(ローカル サーバー以外のサーバー)に適用される場合の必須パラ メーター。

server データベース エンジンを含んでいる リモート サーバーの名前、 または IP アドレス。

-U server へのアクセスにユーザー名が必要な場合の必須パラ メーター。

username server に接続するユーザー名。 「Pervasive PSQL セキュ リ ティ」 も参照して ください。

server がローカル マシンの場合、以下の条件を満たしていれば username と password は必要あ り ません。

管理者と して、 あるいは Pervasive_Admin グループのメンバーと してローカル マシンにログインし

ている。

ローカル マシンがターミナル サービスを実行していない。

-P server へのアクセスにパスワードが必要な場合の必須パラ メーター。

password server へ接続する username と一緒に使用するパスワード。「username」 を参照して ください。「PervasivePSQL セキュ リ ティ」 も参照してください。

-E inputfile の読み取り時、 あるいは outputfile への書き込み時のエラーを無視します。

33

Page 50: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

設定のプロパテ ィ

各設定のプロパティを表形式で一覧表示します。

表 8 設定プロパテ ィ の表形式

表形式の列 説明

名前 プロパティの名前

データ型 値のデータ型を定義します。 データ型は次のとおりです。

Numeric

Bool(ean)

String

複数選択 - リ ス トからいくつかの値を選択します。

単一選択 - リ ス トから 1 つの値を選択する必要があ り ます。

値 現在の設定を示します。

単位 値が数値の場合、 必要に応じてこのフ ィールドに単位 (KB、 秒など) が示されます。

34

Page 51: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サービス設定プロパテ ィ

サービス設定プロパテ ィ

Windows サーバー環境では、 Pervasive PSQL Server はサービス と して起動します。 サービスはインス トール処理

の一部と してロード され、 完全インス トールであれば常に使用可能な状態に設定されます。

PCC 内でサービスの起動ポ リシーを構成するこ とができます。

PCC を使ってサービスの起動ポリ シーを設定するには

1 オペレーティング システムの[ス ター ト ] メニューまたはアプ リ画面から Control Center にアクセスします。

2 Pervasive PSQL エクスプローラーでサービス ノードを展開します (下位ノードを表示するには、 ノードの左

にある展開アイコンをク リ ッ ク します)。

3 目的のサービス、 Pervasive PSQL (relational) または Pervasive PSQL (transactional) を右ク リ ッ ク します。

4 [プロパテ ィ ー] をク リ ッ ク します。

5 希望の起動ポリシーをク リ ッ ク します。

6 [OK] をク リ ッ ク します。

ポ リ シー 説明

手動 サービスは、オペレーティング システムの起動時に自動的に開始されません。オペレーティング

システムの起動後または再起動後に、 サービスを手動で開始する必要があ り ます。

自動 サービスは、 オペレーティング システムの起動時または再起動時に自動的に開始されます。

無効 サービスは、 起動ポ リシーが [手動] または [自動] に再設定されるまで機能しなくな り ます。

35

Page 52: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

サーバー設定プロパテ ィ

各 Pervasive PSQL データベース エンジンには、 独自のサーバー設定オプシ ョ ンがあ り ます。 このセクシ ョ ンで

は、 エンジンで使用可能な設定オプシ ョ ンについて説明します。

Windows および Linux プラ ッ ト フォームで、グラフ ィカルなユーティ リ ティ Pervasive PSQL Control Center を使用

して Pervasive PSQL サーバーを構成するこ とができます。 bcfg コマンド ラ イン インターフェイス ユーティ リ

テ ィ を使用する こ と もできます。 PCC については、 『Pervasive PSQL User's Guide』 の 「Pervasive PSQL ControlCenter の使用」 を参照して ください。 bcfg については、 「CLI ユーティ リ ティによる設定」 を参照して ください。

次の表は、 サーバー設定オプシ ョ ンとその設定項目の一覧を示します。

表 9 サーバー設定オプシ ョ ンおよび設定項目

設定オプシ ョ ン 設定項目名

「アクセス」 「 リモート リ クエス トの受付」

「キャ ッシュ エンジン接続の許可」

「ク ラ イアン ト保持の資格情報の容認」

「Authentication (Linux エンジンのみ)」

「Configuration File (Linux エンジンのみ)」

「ク ラ イアン ト資格情報の入力要求」

「ワイヤ暗号化」

「ワイヤ暗号化レベル」

「通信プロ ト コル」 「自動再接続タイムアウ ト 」

「自動再接続の有効化 (Windows のみ)」

「 リ ッ スン IP アドレス」

「NetBIOS ポート (ワークグループ エンジンのみ)」

「サポート プロ ト コル」

「TCP/IP マルチホーム」

「TCP/IP ポート 」

「ファ イル互換性」 「作成ファイルのバージ ョ ン」

「システム データ」

「データ整合性」 「選択ファイルのアーカイブ ロギング」

「起動時間制限」

「オペレーシ ョ ン バンドル制限」

「 ト ランザクシ ョ ン一貫性保守」

「 ト ランザクシ ョ ン ログ」

「ウェイ ト ロ ッ ク タイムアウ ト 」

36

Page 53: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

アクセス

[アクセス] には次の設定が含まれています。

「 リモート リ クエス トの受付」

「キャ ッシュ エンジン接続の許可」

「ク ラ イアン ト保持の資格情報の容認」

「Authentication (Linux エンジンのみ)」

「Configuration File (Linux エンジンのみ)」

「デバッグ」 「データ バッファーのバイ ト数」

「キー バッファーのバイ ト数」

「 ト レースするオペレーシ ョ ンの選択」

「 ト レース ファイルのロケーシ ョ ン」

「 ト レース オペレーシ ョ ンの実行」

「ディ レク ト リ 」 「DBNames 設定ファ イルのディ レク ト リ 」

「 ト ランザクシ ョ ン ログのディ レク ト リ 」

「作業ディ レク ト リ 」

「情報」 サーバー名 (表示のみ)

エンジンのバージ ョ ン (表示のみ)

エンジンのタイプ (表示のみ)

「メモ リの使用」 「起動時のリ ソース割当」

「非アクティブ時、 小の状態に戻す」

「 小の状態に戻す待ち時間」

「ソート バッファー サイズ」

「システム キャ ッシュ」

「パフォーマンス チューニング」 「キャ ッシュ割当サイズ」

「通信スレッ ド数」

「ファ イルの拡張係数」

「インデッ クス バランスの実行」

「セグメン ト サイズを 2 GB に制限」

「ログ バッファー サイズ」

「MicroKernel の 大メモ リ使用量」

「I/O スレッ ド数」

「 ト ランザクシ ョ ン ログ サイズ」

表 9 サーバー設定オプシ ョ ンおよび設定項目

設定オプシ ョ ン 設定項目名

37

Page 54: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

「ク ラ イアン ト資格情報の入力要求」

「ワイヤ暗号化」

「ワイヤ暗号化レベル」

リ モー ト リ クエス ト の受付

この設定は、通信マネージャーが、 リモート サーバーやクライアン ト ワークステーシ ョ ンからのリ クエス ト を受

け付けるかど うかを指定します。 このオプシ ョ ンをオンにする と、 通信マネージャーは、 ネッ ト ワークでの存在

を通知します。

キャ ッ シュ エンジン接続の許可

ク ラ イアン ト がキャ ッシュ エンジンを使用してサーバーに接続するこ とをサーバーがサポートするかど うかを

指定します。 オフに設定しても ク ライアン トはサーバーに接続はできますが、 キャ ッシュ エンジンを使用するこ

とはできません。

ク ラ イアン ト 保持の資格情報の容認

この設定をオンにした場合、データベース エンジンはク ライアン トに保管されているユーザー資格情報を受け付

けます。 保管方法および場所は、 ク ラ イアン トのオペレーティング システムによって異なり ます。

Windows ク ライアン ト : 資格情報は Windows レジス ト リに格納されています。 [ク ラ イアン ト 資格情報の入

力要求] がオンに設定されている場合は、 ポップアップ ダイアログで [ユーザー名とパスワー ド を保存]

チェ ッ ク ボッ クスをオンにするこ とによって、資格情報を保存できるよ うになり ます。代わりの方法と して、

pvnetpass コマンド ライン ユーティ リ ティ を使用する と、保管されている資格情報を管理するこ とができ

ます。

Linux ク ライアン ト :資格情報は、pvnetpass ユーティ リ ティによって Pervasive レジス ト リに格納されます。

この設定をオフにした場合、データベース エンジンはク ライアン トに対し、資格情報が必要なデータベース操作

の対象から保管されている資格情報は強制的に除外します。 このよ うな資格情報は、 アプリ ケーシ ョ ンから、 ま

たはログイン ダイアログで提供する必要があ り ます。この設定がオフであっても、ログイン ダイアログを使用し

て指定されれば、 ログイン ダイアログはク ライアン ト保持の資格情報を書き込も う と します。 ただし、 これは受

け入れられません。

ク ラ イアン ト保持の資格情報が認められている場合は、 資格情報を知らな くても、 誰でもその特定ク ライアン ト

のコンピューターの前に座り、 保管されている資格情報を使ってデータベースにログインするこ とができます。

この動作は、 個々のユーザーの厳密な認証は重要でない環境、 たとえば、 すべてのユーザーが同レベルのアクセ

ス権限を持っている、 物理的にセキュ リティ保護されているよ うな環境では便利です。 一方、 権限のない人が存

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オン なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オン なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オン なし 不要

38

Page 55: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

在したり、 権限のあるユーザーがアクセス権限のレベルを変更しているよ うな環境では、 この設定はオフにして

おく必要があ り ます。

関連項目 : 「ク ラ イアン ト資格情報の入力要求」

ログイ ン動作のま とめ

Authentication (Linux エンジンのみ)

以下のオプシ ョ ンは、 サーバー エンジンへのアクセスに使用する認証のタイプを指定します。 使用可能なオプ

シ ョ ンは次のとおりです。

Emulate Workgroup Engine (ワークグループ エンジンのエミ ュレート )。 Samba を使用してシステムのユー

ザー アクセスを認証する場合、この値を使用します。オペレーティング システムによるセキュ リ ティを回避

し、 レジス ト リに RTSS パスワードを保存したくない場合は、 [Emulate Workgroup Engine] を使用します。

Proprietary Authentication (using btpasswd) (専用認証 (btpasswd の使用) ) 。 認証に Samba を使用せず、

ユーザーがサーバーにアカウン ト を持っていない場合、 この値を使用します。 Linux システムへの接続に個

別のパスワード ファ イルを使用できます。

Linux サーバーで BTPASSWD の認証を使用する場合、ク ライアン トから このサーバーに接続するユーザー名

とパスワードを設定する必要があ り ます。Pervasive PSQL Control Center または pvnetpass ユーティ リ ティ を使

用します。『Pervasive PSQL User's Guide』 の 「グループ、ユーザー、およびセキュ リティ」 および 「pvnetpass」を参照してください。

Proprietary Authentication は、 サーバーによ り高いセキュ リ テ ィ強度が必要で、 Linux サーバーで使用される

ユーザー認証方式と異なるユーザー名とパスワードが必要な場合に使用します。

表 10 ログイ ン設定動作のま とめ

ク ラ イアン ト 資格

情報の入力要求

ク ラ イアン ト 保持

の資格情報の容認

動作

オフ オフ Pervasive PSQL ク ラ イアン トは、ユーザーに入力を求めるこ と も保管されている

資格情報を使用する こ と も しないため、 ク ラ イアン ト アプ リ ケーシ ョ ンが

Btrieve オペレーシ ョ ンで資格情報を提供する必要があ り ます。

オフ オン 資格情報がク ライアン ト アプリ ケーシ ョ ンの Btrieve オペレーシ ョ ンで提供され

ない場合、 ク ライアン トは、 ログイン ダイアログまたは pvnetpass によって保管

されている資格情報を利用できる場合は、それを使用します。どちらの方法でも

資格情報が提供されない場合は、 接続に失敗します。 ログイン ダイアログは表

示されません。

オン オフ 資格情報がク ライアン ト アプリ ケーシ ョ ンの Btrieve オペレーシ ョ ンで提供され

ない場合、 ク ライアン トはユーザーにログイン ダイアログを表示し、 Linux ク ラ

イアン トはアクセス許可エラーを示すステータス コードを返します。 ログイン

ダイアログまたは pvnetpass によって保管された資格情報は使用しません。

オン オン 資格情報がク ライアン ト アプリ ケーシ ョ ンの Btrieve オペレーシ ョ ンで提供され

ない場合は、保管されている資格情報を使用します。利用できる資格情報が保管

されていない場合、 ク ラ イアン トはユーザーにログイン ダイアログを表示し、

Linux ク ラ イアン トはアクセス許可エラーを示すステータス コードを返します。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

単一選択 3 つのオプシ ョ ンが

あ り ます。次の解説を

参照。

Emulate Workgroup Engine(ワークグループ エンジン

のエ ミ ュレート )

なし 必要

39

Page 56: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

Standard Linux Authentication (標準 Linux 認証)。 認証に Samba を使用せず、 ユーザーが Linux システムに

アカウン ト を持っている場合、 この値を使用します。

PAM では、 Linux の標準認証が使用されます。 PAM は、 Linux サーバーで既存のユーザー名とパスワードを

使用したい場合に使用します。 pvnetpass ユーティ リ テ ィ を使用してク ライアン トからユーザー名とパス

ワードを指定するこ とができます。 PAM は非常に柔軟で、 Linux 用のカスタム モジュールを多数提供してい

ます。 詳細については、 PAM に関する Web サイ ト を確認ください。

Pervasive PSQL のインス トールで PAM が検出された場合、 PAM を使用できるよ う インス トールの設定を整

えます。 Pervasive PSQL のインス トール後に PAM をインス トールし、 PAM による標準認証を使用する場合

は、 Pervasive PSQL を再インス トールする必要があ り ます。 これは、 PAM のインス トールでファ イルのコ

ピー、各種設定ファイルの作成、権限の設定、およびリ ンクの作成を行っているためです。 Pervasive PSQL を再インス トールして PAM を検出し、 その PAM 設定を正し く完了させる必要があ り ます。

Pervasive PSQL をアンインス トールし、 再度インス トールし直します。 アンインス トールと インス トールの

手順については、 『Getting Started with Pervasive PSQL』 の 「Pervasive PSQL Server および Client (Linux 版) の

インス トール」 の章を参照して ください。

Samba と認証

上記の 3 種類の認証方法に加え、 使用可能な場合は、 Samba を使用するこ と もできます。 サーバーは、 Samba を介し て既知の FIFO 共有を作成し ます。 FIFO は、 $PVSW_ROOT/etc/pipe/mkde.pip に作成されます。

$PVSW_ROOT/etc/pipe は、 PVPIPE$ と して Samba が共有する必要があ り ます。

メ モ 末尾の $ は、 この共有が非表示になるこ とを意味します。 Pervasive PSQL ク ラ イアン ト コンポーネン

トが、 \\< サーバー >\PVPIPE$\mkde.pip (大文字小文字区別なし) と して自動的にこのパイプへのアク

セスを処理します。 明示的な処理を実行したり、 このパイプにアクセスするよ うにアプリ ケーシ ョ ンを変更

したりする必要はあ り ません。 唯一の例外は、 Samba または Pervasive PSQL の設定のト ラブルシューティン

グを行う場合です (後述の 「 ト ラブルシューティング」 のセクシ ョ ンを参照)。

ク ラ イアン トが リモート エンジンに接続し、 エンジンがバージ ョ ン ブロ ッ クで "Unix" と返した場合、 まずレジ

ス ト リ (RTSS 設定) で認証情報を確認します。 ユーザー名とパスワードがレジス ト リ内で見つからなかった場

合、 ク ラ イアン トは上記のパイプに接続し、 サーバーからク ライアン ト認証情報を受け取り、 検証します。

認証されるためには、 共有に接続し、 パイプを読み取るこ とができる必要があ り ます。 これは、 エンジンを使用

できるユーザーと使用できないユーザーを指定する一つの方法です。 も簡単な方法は、 smb.conf (Samba の設

定ファイル) 内の Samba の 「valid users」 の設定を使用する方法です。 ク ライアン トが認証されなかった場合、 ス

テータス 3119 が返されます。

サーバーに Samba をインス トールする場合は、 インス トール プログラムによって Samba 共有が設定されます。

Pervasive パイプの設定例を以下に示します。 ###################################################

[PVPIPE$]

comment = Pervasive pipes

path = /usr/local/psql/etc/pipe

force group = pvsw

# force group pvsw when accessing pipe - will be

# useful if primary group for this user is not pvsw

valid users = @pvsw

# only members of group pvsw will have access

oplocks = False

# Absolutely necessary - prevents caching on the client

40

Page 57: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

###################################################

Samba を通じて共有されるファ イルへのアクセスを構成する方法については、 Samba のマニュアルを参照して く

ださい。

メ モ PVPIPE$ へのク ライアン トの読み取りアクセスを許可する と、 そのク ライアン トはリモートでエンジ

ンへのアクセスが許可されます。

ク ラ イ アン ト が正し く 認証される こ と を確認するには、 コマン ド プロ ンプ ト で 「\\< サーバー

>\pvpipe$\mkde.pip」 と入力します。 多数の疑問符 (印刷不可能なシンボル) といくつかの印刷可能な文字

が表示され、 警告音が鳴り ます。 表示されなかった場合、 Samba の設定で、 このパイプを読み取る権限があるか

ど うかを確認します。 権限があるのにエラー 94 または 3119 が発生する場合は、 Pervasive PSQL Control Center でエンジンの設定プロパティを使用して、 または pvnetpass を使用して、 RTSS 設定を確認します。

Configuration File (Linux エンジンのみ)

この設定は、 Linux で、 ローカル ファ イル システムの Windows ク ラ イアン トへのエク スポー ト に使用される

smb.conf ファ イルのロケーシ ョ ンを指定します。 エンジンでは、 リモート システムの UNC パスを、 正しいデー

タベース ファ イルへのローカル呼び出しに変換する と きに、 このファ イルが必要です。

デフォルト値は /etc/smb.conf です。Samba の設定ファイルを別のロケーシ ョ ンにインス トールした場合、正しい

パス とファ イル名を入力します。

ク ラ イアン ト 資格情報の入力要求

この設定は、ユーザー認証を必要とするデータベース操作中に利用できる資格情報がない場合、Windows PervasivePSQL ク ライアン トがユーザーにログイン資格情報の入力を求めるかど うかを決定します。

この設定をオンにした場合、ほかの認証資格情報がないと きには、ユーザーにログイン ダイアログを表示するよ

う、 エンジンが Windows ク ラ イアン トに要求します。 この設定は、 混合またはデータベース セキュ リ ティが有

効になっている場合にのみ適用されます。ただし、いかなる状況下でも Linux ク ライアン トには適用されません。

有効な資格情報が別の手段、 たとえば、 明示的な Btrieve Login (78) オペレーシ ョ ンやク ライアン トに保管され

ている資格情報によって提供される場合は、 ログイン ダイアログは表示されません。

ユーザー資格情報を必要とする操作で、エンジンにデータベース コンテキス トが指定されていない場合、エンジ

ンは、 ユーザーは現在のデータベースヘのログインを試みている と見なします。

この設定をオフにして、新しいセキュ リ ティ モデルのいずれかを使用している場合は、ユーザー資格情報をプロ

グラムから提供する (ク ラ イアン トに保管されている資格情報を提供するか、 Btrieve の Login (78)、 Open (0)、または Create (14) オペレーシ ョ ンによって提供する) 必要があ り ます。 そ う しないと、 ログインの試行は認証

エラーで失敗します。

関連項目

「ク ラ イアン ト保持の資格情報の容認」

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

String 適用外 /etc/smb.conf なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 不要

41

Page 58: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

ワイヤ暗号化

このプロパティは、 指定されたク ライアン ト またはサーバーがネッ ト ワーク通信で暗号化を使用するかど うかを

指定します。 デフォルト値は " 必要な場合 " です。 これは、 ク ライアン ト またはサーバーは、 通信ス ト リームの

相手側が暗号化を要求している場合にのみ暗号化を使用する という意味です。 たとえば、 サーバー A は [ワイヤ

暗号化] 値を " 常時 " に設定しており、 サーバー B は " し ない " に設定している と します。 ク ライアン トはこの

値を " 必要な場合 " に設定しています。 この場合、 ク ラ イアン トはサーバー A と通信する場合には暗号化を使用

しますが、 サーバー B と通信する場合には暗号化を使用しません。

次の表は、 ク ラ イアン ト値とサーバー値の考えられる組み合わせを基に動作をまとめています。

ワイヤ暗号化レベル

この設定では、 暗号化された通信で使用する暗号化キーの長さを指定します。 次のレベルを使用できます。

128 ビッ ト長のキーを使用する暗号化は、 一般に 「高度」 暗号化と認められています。 ほかの設定は、 そのレベ

ルに応じて保護力は低下しますが、 パフォーマンスは向上します。 ある程度のレベルの暗号化は必要であるが、

よ り良いパフォーマンスを得るために、 抑止レベルが低下するこ とを受け入れるつも りである場合に適していま

す。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

単一選択 しない

必要な場合

常時

必要な場合 なし 必要

表 11 ク ラ イアン ト / サーバーのワイヤ暗号化組み合わせの結果

ク ラ イアン ト

設定

サーバー設定 : " し ない " サーバー設定 : " 常時 " サーバー設定 : " 必要な場合 "

しない 暗号化を使用しません。 ステータス コード 5001 暗号化を使用しません。

常時 ステータス コード 5000 暗号化を使用します。レベルは、ク ラ

イアン ト とサーバー間で も高い[ワ

イヤ暗号化レベル]設定によって決定

されます。

暗号化を使用します。レベルは、ク ラ

イアン トの [ワイヤ暗号化レベル] 設

定によって決定されます。

必要な場合 暗号化を使用しません。 暗号化を使用します。レベルは、サー

バーの [ワイヤ暗号化レベル] 設定に

よって決定されます。

暗号化を使用しません。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

単一選択 低

中 なし 必要

表 12 暗号化レベル値の意味

値 説明

低 40 ビッ ト暗号化キーを使用します

中 56 ビッ ト暗号化キーを使用します

高 128 ビッ ト暗号化キーを使用します

42

Page 59: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

ク ラ イアン ト とサーバーの両方が暗号化を要求し、一方が他方よ り も強度の高い暗号化レベルを指定した場合、2つのエンティティは強度の高いレベルを使って通信します。 ク ラ イアン ト とサーバーの両方が暗号化を要求し、

一方が他方よ り も強度の高い暗号化レベルを指定した場合、 2 つのエンティティは強度の高いレベルを使って通

信します。

通信プロト コ ル

[通信プロ ト コル] には次の設定が含まれています。

「自動再接続タイムアウ ト 」

「自動再接続の有効化 (Windows のみ)」

「 リ ッスン IP アドレス」

「NetBIOS ポート (ワークグループ エンジンのみ)」

「サポート プロ ト コル」

「TCP/IP マルチホーム」

「TCP/IP ポート 」

自動再接続タ イムアウ ト

この設定は、 接続不能となる前にクライアン トがサーバーにどれだけの時間接続を試行するかを指定します。 自

動再接続が有効になっているク ラ イアン トが、 初に自動再接続が有効なサーバーに接続する と、 サーバーはこ

の値をク ライアン トに通知し、 両方のコンポーネン トがネッ ト ワーク中断イベン トでどれだけの時間再接続を試

行するかがわかるよ うにします。

自動再接続の有効化 (Windows のみ)

この設定は、 ネッ ト ワークの中断時にクライアン トが再接続を試行するこ とをサーバーにサポート させるかど う

かを指定します。 オンに設定する と、 自動再接続が有効になり ます。

自動再接続は、 この設定をク ライアン ト側の設定でも有効にしておかない限り、 そのク ライアン ト接続では有効

になり ません。

接続不能となる前にクライアン トがサーバーにどれだけの時間再接続を試行するかを指定します。 前述の 「自動

再接続タイムアウ ト 」 を参照して ください。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 45 - 65535 180 秒 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 必要

43

Page 60: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

リ ッ スン IP ア ド レス

このオプシ ョ ンは、 [TCP/IP マルチホーム] がオフの場合に MicroKernel が受信待ちする IP アドレス (1 つまた

は複数) を指定します。 このオプシ ョ ンは、 [TCP/IP マルチホーム] がオンの場合は無視されます。

複数の IP アドレスを指定できますが、その場合は各アドレス間をカンマで区切る必要があ り ます。 このアドレス

文字列は IPv4 アドレス と IPv6 アドレスの組み合わせも可能です。 Pervasive PSQL でサポート される IPv6 アドレ

ス形式が使用できます。 『Getting Started with Pervasive PSQL』 の 「ド ラ イブ ベースの形式」 を参照して ください。

NetBIOS ポー ト (ワークグループ エンジンのみ)

このオプシ ョ ンは、MicroKernel が受信待ちをする NetBIOS ポート を指定します。サーバー エンジンでは NetBIOSをサポート しません。

サポー ト プロ ト コル

この設定では、 データベース エンジンがク ライアン ト接続の受信待ちをするプロ ト コルを指定します。 2 つ以上

のプロ ト コルを指定した場合、 エンジンは指定したすべてのプロ ト コルで接続の受信待ちをします。 デフォルト

は TCP/IP です。 使用可能なオプシ ョ ンは次のとおりです。

TCP/IP

SPXII

NetBIOS

サーバーと ク ラ イアン トの両方で有効なプロ ト コルが 低 1 つないと、 通信を行う こ とができません。

Pervasive PSQL Workgroup

NetBIOS が有効なのは Pervasive PSQL Workgroup のみで、 Pervasive PSQL Server では無効です。

Linux

Linux プラ ッ ト フォームで動作する Pervasive PSQL でサポート されるプロ ト コルは TCP/IP のみです。したがって、

サポート プロ ト コルの設定は、 Linux では使用できません。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

String 有効な IP アドレス (単独または複数)。 複数の

アドレスの場合は各アドレス間をカンマで区切

り ます。

0.0.0.0 なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 33 ~ 254 66 なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

複数選択 次の解説を

参照。

TCP/IP なし 必要

44

Page 61: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

TCP/IP マルチホーム

このオプシ ョ ンは、データベース エンジンがすべてのネッ ト ワーク インターフェイスでク ライアン ト接続の受信

待ちをするかど うかを指定します。 オンに設定した場合、 データベース エンジンはすべてのネッ ト ワーク イン

ターフェイスで受信待ちをし、 [リ ッ スン IP ア ド レス] オプシ ョ ンの IP アドレスは無視されます。 この設定をオ

フにする と、 ク ラ イアン ト通信に使用するデータベース エンジンへのアドレスを [リ ッ スン IP ア ド レス] に指

定する必要があ り ます。

TCP/IP ポー ト

これは、 リ レーシ ョナル インターフェイスで使用されるポート番号を設定します。

このポート番号は、このサーバーを指定するク ライアン ト DSN に定義されたものと同じ番号である必要があ り ま

す。 ク ライアン ト DSN でポート番号を変更する方法については、『SQL Engine Reference』 の 「ク ラ イアン ト DSN用の詳細な接続属性」 を参照して ください。

ポートに関する詳細については、 『Getting Started with Pervasive PSQL』 の 「デフォルトの通信ポートの変更」 を参

照してください。

フ ァ イル互換性

[ファ イル互換性] には次の設定が含まれています。

「作成ファイルのバージ ョ ン」

「システム データ」

作成フ ァ イルのバージ ョ ン

この設定は、 新し く作成されるすべてのファイルの形式を指定します。 10.x のデータベース エンジンは、 既存の

ファ イル形式を使用してファイルに書き込みができます。 つま り、 書き込みを行う と き、 バージ ョ ン 7.x のファ

イルにはバージ ョ ン 7.x のファイル形式、 バージ ョ ン 8.x のファイルにはバージ ョ ン 8.x のファイル形式、 という

よ うに適切なファ イル形式を使用します (10.x のデータベース エンジンは、 5.x、 6.x、 7.x、 8.x および 9.x バー

ジ ョ ンで作成されたファイルの読み取りが可能です。)

バージ ョ ン 6.x、 7.x、 または 8.x は、 旧バージ ョ ンの MicroKernel と互換性を保つ必要がある場合にのみ指定しま

す。 以前のファイル バージ ョ ンを指定しても、 既存の 9.x ファ イルには影響しません。

メ モ 辞書ファイル (DDF) は 6.x またはそれ以降のファイル形式で作成する必要があ り ます。 データベース

の新規作成ウ ィザードは [作成ファイルのバージ ョ ン] 設定を使用します。 データ ファ イルは、 サポート さ

れている以前のファイル形式のいずれでもかまいません。 DDF だけは 6.x またはそれ以降のファイル形式を

使用する必要があ り ます。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オン なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 256 ~ 65535 1583 なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

単一選択 6.x -9.x 9.x なし 不要

45

Page 62: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

システム データ

システム データは各レコード内の隠されている重複のないキーを参照します。 MicroKernel はト ランザクシ ョ ン

一貫性保守を確実にするのに行を一意に識別できるこ とが必要なため、 ファ イルは重複のないキーを定義するか

またはシステム データを含める必要があ り ます。 デフォルト値は [必要な場合] です。 使用可能な値は、 次のと

おりです。

[な し]。 デフォルトでは、 システム データはファイル作成時に追加されません。 Create オペレーシ ョ ンを使

用するアプリ ケーシ ョ ン開発者はこの設定を無効にして変更するこ とができます。

[必要な場合] 。 ファ イルが、 重複のないキーを持たない場合、 ファ イル作成時にそのファ イルにシステム

データが追加されます。

[常時]。 ファ イルが、 重複のないキーを持つかど うかに関係なく、 システム データが、 ファ イル作成時に常

に追加されます。

メ モ システム データ設定は既存のファイルには影響しません。 この設定は新規ファイルがどのよ うに作成

されるかにのみ影響します。

[システム データの作成]を有効にしないで作成され、重複のないキーを持たないファイルに ト ランザクシ ョ

ン一貫性保守を適用したい場合は、 [システム データの作成] を [常時] または [必要な場合] に設定した

後、 ファ イルを再作成する必要があ り ます。

SRDE は常に、 システム データを含むファ イルを作成します。 この情報は、 SQL、 OLE-DB、 JDBC、 また

Btrieve API 以外のあらゆる方法で作成されたファイルに当てはま り ます。

インデッ クスはユーザーによって削除されるこ とがあるため、ファ イルが重複のないキーを持っている場合でも、

システム データを追加したい場合があ り ます。

データ整合性

[データ整合性] には次の設定が含まれています。

「選択ファイルのアーカイブ ロギング」

「起動時間制限」

「オペレーシ ョ ン バンドル制限」

「 ト ランザクシ ョ ン一貫性保守」

「 ト ランザクシ ョ ン ログ」

「ウェイ ト ロ ッ ク タイムアウ ト 」

選択フ ァ イルのアーカ イブ ロギング

この設定は、 ファ イルのバッ クアップを容易にするアーカイブ ログを MicroKernel に実行させるかど うかを指定

します。 システム障害が発生した場合、 アーカイブ ログ ファ イルおよび BUTIL -ROLLFWD コマンドを使用し

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

単一選択 次の解説を

参照。

必要な場合 なし 不要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン / オフ オフ なし 必要

46

Page 63: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

て、 後にバッ クアップを取ったと きからシステム障害が発生するまでの間にファイルに加えられた変更を修復

できます。

MicroKernel にアーカイブ ログを実行させるには、 アーカイブ ログを実行するファイルのあるボ リ ュームにアー

カイブ ログ設定ファイルを作成し、エン ト リ を追加するこ とによ り ファ イルを指定する必要があ り ます。 アーカ

イブ ログの詳細については、「アーカイブ ログおよび Continuous オペレーシ ョ ンについて」 を参照して ください。

起動時間制限

この設定は、システム ト ランザクシ ョ ンを起動させるタイム リ ミ ッ ト を指定します。 MicroKernel は、 [オペレー

シ ョ ン バン ドル制限] か [起動時間制限] のいずれかで設定された値に達した場合、 またはキャ ッシュの再利用

が必要な場合に、 システム ト ランザクシ ョ ンを起動します。

オペレーシ ョ ン バン ドル制限

このオプシ ョ ンは、 システム ト ランザクシ ョ ンを起動するのに必要なオペレーシ ョ ン (1 つの任意のファイルで

実行) の 大数を指定します。 MicroKernel は、 [オペレーシ ョ ン バンドル制限] か [起動時間制限] のいずれか

で設定された値に達した場合、 またはキャ ッシュの再利用が必要な場合に、 システム ト ランザクシ ョ ンを起動し

ます。

MicroKernel Database エンジンでは、各ユーザー ト ランザクシ ョ ン (Begin Transaction から End Transaction または

Abort Transaction まで) が 1 つのオペレーシ ョ ンと して扱われます。 たとえば、 Begin Transaction オペレーシ ョ ン

と End Transaction オペレーシ ョ ンの間に 100 の Btrieve オペレーシ ョ ンがある場合、 Begin Transaction オペレー

シ ョ ンと End Transaction オペレーシ ョ ンを含む 102 の Btrieve オペレーシ ョ ンが、1 つのオペレーシ ョ ンと して扱

われます。

ト ラ ンザクシ ョ ン一貫性保守

ト ラ ンザク シ ョ ン一貫性保守は、 システム障害時に正常終了していた ト ランザクシ ョ ンがデータ ファ イルにコ

ミ ッ ト されるこ とを保証する点以外は ト ラ ンザクシ ョ ン ログと同じです。

ト ランザクシ ョ ン ログと ト ランザクシ ョ ン一貫性保守の詳細については、 「 ト ランザクシ ョ ン ログおよびト ラン

ザクシ ョ ン一貫性保守」 を参照して ください。

メ モ [ ト ランザクシ ョ ン一貫性保守] をオンにしている場合、 一部のファ イルで、 ト ランザクシ ョ ンの一

貫性が保守されないこ とがあ り ます。 ファ イルは、 少なく と も 1 つは重複のないキーを含んでいるか、 ファ

イル作成時に [システム データ] 設定が " 常時 " または " 必要な場合 " に設定されている必要があ り ます。

そ う しないと、 ファ イルに対する変更はト ランザクシ ョ ン ログに書き込まれません。 ト ランザクシ ョ ン一貫

性保守およびシステム データの詳細については、開発者リ ファレンスの『Pervasive PSQL Programmer's Guide』を参照してください。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 1 - 1800000 10000 ミ リ秒 不要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 1 ~ 65535 65535 なし 不要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 必要

47

Page 64: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

システム データは既存のファイルには影響しないため、重複のないキーを持たず、[システム データの作成]

を有効にしないで作成したファイルは再作成する必要があ り ます。 これらのファイルを再作成する前に [シ

ステム データの作成] を必ず有効にしてください。

注意 ゲート ウェイ ロケーター ファ イルによ り、 同一ファイル サーバー上の異なるディ レク ト リにある複

数のファイルを異なるエンジンが管理するこ とができます。 データベースが異なるディ レク ト リにある複数

のファイルを含んでいる場合は、データベース内のすべてのデータ ファ イルを同一データベース エンジンで

管理する必要があ り ます。同一データベース内のファイルを複数のデータベースで管理する場合、データベー

スの整合性およびト ランザクシ ョ ン ア ト ミ シティは保証されません。起こ り得る問題を回避する方法につい

ては、 「ロケーター ファ イルのリダイレク ト 」 を参照してください。

関連する設定

詳細については、 「 ト ラ ンザクシ ョ ン ログ」 にある同様の 「関連する設定」 を参照してください。

ト ラ ンザクシ ョ ン ログ

この設定は、 データ ファ イルに影響するすべてのオペレーシ ョ ンをログに記録するこ とによ り、 MicroKernel がト ランザクシ ョ ンのア ト ミ シティを確実にするかど うかを制御します。

関連する [ト ラ ンザクシ ョ ン一貫性保守] の設定がオンになっている場合、 ロギングは自動的に行われ、 [ト ラ ン

ザクシ ョ ン ログ] 設定は無視されます。

ト ランザクシ ョ ン ログと ト ランザクシ ョ ン一貫性保守の詳細については、 「 ト ランザクシ ョ ン ログおよびト ラン

ザクシ ョ ン一貫性保守」 を参照して ください。

メ モ [ ト ランザクシ ョ ン ログ] をオンにしている場合、 一部のファイルで、 ト ランザクシ ョ ンの一貫性が

保守されないこ とがあ り ます。 ファ イルは、 少なく と も 1 つは重複のないキーを含んでいるか、 ファ イル作

成時に [システム データ] 設定が " 常時 " または " 必要な場合 " に設定されている必要があ り ます。 そ う し

ないと、 ファ イルに対する変更はト ランザクシ ョ ン ログに書き込まれません。 ト ランザクシ ョ ン一貫性保

守およびシステム データの詳細については、 開発者リ ファレンスの 『Pervasive PSQL Programmer's Guide』を参照してください。

システム データは既存のファイルには影響しないため、 重複のないキーを持たず、 [システム データの作

成] を有効にしないで作成したファイルは再作成する必要があ り ます。 これらのファイルを再作成する前に

[システム データの作成] を必ず有効にしてください。

注意 使用するデータベースがデータ ファ イル間の ト ランザクシ ョ ン ア ト ミ シティを必要と しない場合を除

いては、 ト ランザクシ ョ ン ログの設定をオフにしないでください。 ト ランザクシ ョ ン ログがオフに設定され

ている場合、 複数ファイルのデータベースのデータの整合性は保証されません。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オン なし 必要

48

Page 65: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

[ ト ランザクシ ョ ン ログ] の設定をオフにするこ とを、 使用するアプリ ケーシ ョ ンのベンダーがサポート し

ていない場合は、 オフにしないでください。

関連する設定

サーバー設定の [ト ラ ンザクシ ョ ン一貫性保守] は ト ランザクシ ョ ン ログに似ていますが、 よ り高レベルのデー

タ安全性を提供し、パフォーマンスは低レベルとな り ます。サーバーの設定にある [ログ バッ フ ァー サイズ] お

よび [ト ラ ンザク シ ョ ン ログ サイズ] は ト ラ ンザク シ ョ ン ログと関連しています。 [ログ バッ フ ァー サイズ]

を使用する と、 ト ランザクシ ョ ン一貫性保守とパフォーマンス とのバランスを構成する こ とができます。 ログ

バッファーが大きいほどディ スクに書き込まれる回数が少ないため、 パフォーマンスが向上します。 ただし、 ロ

グ バッファー内のデータベースの変更はシステム障害が起こった場合保守されません。

「 ト ランザクシ ョ ン ログ サイズ」 は、新しいセグメン ト を開始する前に各ログ ファ イル セグメン トがどれだけの

サイズになるこ とができるかを制御します。

Btrieve または SQL ト ランザクシ ョ ンが使用されない場合は、 これらすべての設定は無視されるこ とに注意して

ください。

ウ ェ イ ト ロ ッ ク タ イムアウ ト

レコード ロ ッ クの競合が発生した場合、データベース エンジンとそのク ライアン トは同等の再試行メカニズムを

使用します。エンジンは、ウェイ ト ロ ッ ク タイムアウ ト時間内に要求されたレコードのロ ッ クを取得できなかっ

た場合には、 該当するステータス コード と共に制御をアプリ ケーシ ョ ンに返します。

ウェイ ト ロ ッ ク タイムアウ ト設定は、 ロ ッ クの競合が発生した場合に次のよ うな利点をもたらします。

データベース エンジンは、 ロ ッ クの解除を待つ間にほかのリ クエス トの処理を続行できる

複数のスレッ ドがロ ッ ク された リ ソースを待っている場合、 スレッ ド キューの能力が向上する

ネッ ト ワーク ト ラフ ィ ッ クが軽減するこ とによって、 ネッ ト ワークのパフォーマンスが向上する

ウェイ ト ロ ッ ク タイムアウ トは、 次のよ うな状況の場合にのみ適用されます。

リ レーシ ョナル インターフェイスを使用するアプリ ケーシ ョ ン。

Windows アプリ ケーシ ョ ン。 このよ う なアプリ ケーシ ョ ンは、 ウェイ ト ロ ッ ク タイムアウ トの設定にかか

わらず、 1 秒以内でロッ ク エラーを受け取り ます。

ウェイ ト ロ ッ ク タイムアウ トは、 Windows または Linux 上の Pervasive ク ライアン ト を介して ト ランザクシ ョナ

ル インターフェイスを使用するアプリ ケーシ ョ ンには適用されません。 このよ うなアプリ ケーシ ョ ンは、 ロ ッ ク

の競合が検出された直後にロ ッ ク競合エラーを受け取るか、 あるいはロ ッ クが解放されるのを待ち続けるかのい

ずれかです。 その時点で、 アプリ ケーシ ョ ンは競合の処理方法 (再試行、 待機など) を決定します

ト ランザクシ ョナル インターフェイス API は、 レコード ロ ッ ク状況を処理するための制御を提供します。 詳し

い解説は Pervasive PSQL ソフ ト ウェア開発キッ ト (SDK) の開発者リ ファレンス 『Btrieve API Guide』 を参照し

てください。 こ こでは、 制御のメカニズムを簡単に説明します。

明示的レコード ロ ッ ク - 読み取り操作にロッ ク バイアス (100、 200、 300 または 400) を加える と、 レコー

ドの読み取り時にウェイ トするかど うかを指定できます。

ト ランザクシ ョ ン中の暗黙ページ ロ ッ ク - ほとんどのページ ロ ッ クの競合は低レベルなロ ッ クであるため

に回避されますが、 ロ ッ ク バイアス 500 を加算すれば、 ト ランザクシ ョ ンがページ ロ ッ クの発生によって

ウェイ ト状態になるこ とを避けられます。

排他ファイル ロ ッ ク - 明示的ファイル ロ ッ クを避けるために並行ト ランザクシ ョ ンを使用します。ファ イル

を排他的に開けなかった場合、 リ クエス トは常に直ちに返されます。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 0 - 2147483647 15000 ミ リ秒 必要

49

Page 66: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

デバッ グ

[デバッグ] には次の設定が含まれています。

「データ バッファーのバイ ト数」

「キー バッファーのバイ ト数」

「 ト レースするオペレーシ ョ ンの選択」

「 ト レース ファ イルのロケーシ ョ ン」

「 ト レース オペレーシ ョ ンの実行」

データ バッ フ ァーのバイ ト 数

この設定は、 MicroKernel が ト レース ファ イルに書き込むデータ バッファーのサイズを指定します。 この設定を

使用するには、 [ト レース オペレーシ ョ ンの実行] 設定をオンにしておく必要があ り ます。 指定するサイズは、

必要とする ト レースのレベル (データ全体のバッファーの内容を確認する必要があるのか、 またはあるレコード

を特定できるだけのバッファー内容があれば十分なのかなど) に左右されます。

キー バッ フ ァーのバイ ト 数

この設定は、 MicroKernel が ト レース ファ イルに書き込むキー バッファーのサイズを指定します。 この設定を使

用するには、 [ト レース オペレーシ ョ ンの実行] 設定をオンにしておく必要があ り ます。 指定するサイズは、 必

要とする ト レースのレベル (キー全体のバッファー内容を確認する必要があるのか、 またはあるキーを特定でき

るだけのバッファー内容があれば十分なのかなど) に左右されます。

ト レースするオペレーシ ョ ンの選択

ト レースされる Btrieve インターフェイスのオペレーシ ョ ン コードにはチェッ クマークが付けられています (選

択されています)。 リ ス トから ト レースするオペレーシ ョ ンを選択します。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 0 - 65535 128 バイ ト 不要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 0 - 255 128 バイ ト 不要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

複数選択 次の解説を

参照。

すべて なし 不要

Abort Transaction (21) Get Position (22)

Begin Transaction (19) Get Previous (7)

Clear Owner (30) Get Previous Extended (37)

Close (1) Insert (2)

Create (14) Insert Extended (40)

Create Index (31) Open (0)

50

Page 67: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

ト レース フ ァ イルのロケーシ ョ ン

この設定は、 MicroKernel が ト レース情報を書き込むト レース ファ イルを指定します。 ファ イル名には、 ド ラ イ

ブまたはボ リ ュームの指定およびパスが含まれているこ と、 も し くは UNC パスを使用しているこ とが必要です。

ト レース ファ イルをデフォルトのロケーシ ョ ンに配置しない場合は、 別のパスやファイル名を入力します。

Pervasive PSQL ファ イルのデフォルトの保存場所については、 『Getting Started with Pervasive PSQL』 の 「PervasivePSQL ファ イルはどこにインス トールされますか?」 を参照してください。

メ モ ODBC ト レース と MicroKernel ト レースに同じ ト レース ファ イル名を使用しないでください。

Delete (4) Reset (28)

Drop Index (32) Set Directory (17)

End Transaction (20) Set Owner (29)

Extend(16) Stat (15)

Find Percent (45) Step First (33)

Get By Percent (44) Step Last (34)

Get Direct/Chunk (23) Step Next (24)

Get Directory (18) Step Next Extended (38)

Get Equal (5) Step Previous

Get First (12) Stop (25)

Get Greater (8) Step Previous Extended (39)

Get Greater or Equal (9) Unlock (27)

Get Last (13) Update (3)

Get Less or Equal (11) Update Chunk (53)

Get Less Than (10) Version (26)

Get Next (6)

Get Next Extended (36)

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

String 適用外 file_path\PSQL\bin\mkde.tra なし 不要

51

Page 68: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

ト レース オペレーシ ョ ンの実行

この設定は、各 Btrieve インターフェイス呼び出しを ト レースし、その結果をファイルに保存するこ とを可能にす

る ト レース機能を有効にするかど うかを指定します。 開発者は、 ト レース機能を使用する とアプリ ケーシ ョ ンの

デバッグができます。 MicroKernel は、 強制書き込みモードを使用して ト レース ファ イルに書き込みを行うため、

MicroKernel が正常にアンロード されなかった場合でも、 データがファイルに書き込まれます。 MicroKernel のパ

フォーマンスは、 リ クエス ト を受け取る頻度によって大幅に影響を受けるこ とがあ り ます。 このオプシ ョ ンを有

効にする場合は、 [ ト レース ファ イルのロケーシ ョ ン] を指定してください。

メ モ ト レースを開始または終了するためにエンジンを再起動する必要はあ り ません。 ト レースのオン / オフ

は実行中に行ってエンジンに直接変更を適用するこ とができます。 PCC から、 変更を有効にするためにエン

ジンを再起動するよ うにメ ッセージが表示されても、 この設定については無視してかまいません。

デ ィ レ ク ト リ

[ディ レク ト リ ] には次の設定が含まれています。

「DBNames 設定ファイルのディ レク ト リ 」

「 ト ランザクシ ョ ン ログのディ レク ト リ 」

「作業ディレク ト リ 」

DBNames 設定フ ァ イルのデ ィ レ ク ト リ

この設定は、 データベース名設定ファイルの別のロケーシ ョ ンへのパスを指定します。

サーバー エンジンの場合、 ディ レク ト リ パスではなく ローカル ファ イルのパスです。 ワークグループ エンジン

の場合、 ワークグループ MicroKernel にアクセス可能な リモート パスを指定できます。 デフォルト値は、 エンジ

ンのプラ ッ ト フォームによって異なり ます。

Windows プラ ッ ト フォーム : application_data_directory\

Linux サーバー : /usr/local/psql/etc

設定ファイルをデフォルトのロケーシ ョ ンに配置しない場合は、 有効なパスを入力します。

ト ラ ンザクシ ョ ン ログのデ ィ レ ク ト リ

この設定は、 MicroKernel が、 ト ランザクシ ョ ン ログを保存するために使用するロケーシ ョ ンを指定します。 パ

スは有効なパスであ り、 ド ラ イブまたはボ リ ュームの指定か UNC パスが含まれている必要があ り ます。 デフォ

ルト値は、 オペレーティング システムによって異なり ます。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 不要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

String 適用外 環境による なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

String 適用外 環境による なし 必要

52

Page 69: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

エンジンは、 「 ト ラ ンザク シ ョ ン一貫性保守」 または 「 ト ラ ンザク シ ョ ン ログ」 の設定がオンでない場合、 この

設定を無視します。

注意 複数のデータベース エンジンで同一のディレク ト リ を使用してはいけません (たとえば、 2 つ以上の

ワークグループ エンジンの [ ト ランザクシ ョ ン ログのディ レク ト リ ] に リモート サーバーのディ レク ト リ

を指定するなど)。 このよ うな環境では、 各エンジンはログのロール フォワードが必要になった場合に、 ど

の ト ランザクシ ョ ン ログ セグメン ト を使用するかを決定できません。

データベース エンジンの使用率が高い場合には、データ ファ イルが存在するのとは物理的に別のボリ ュームに ト

ランザクシ ョ ン ログが保持されるよ うにシステムを構成する必要があ り ます。高負荷の下では、単一ド ライブで

I/O 帯域幅を競う代わりに、 ログの書き込みとデータ ファ イルの書き込みを別のド ライブに分ける方が一般的に

パフォーマンスがよ くな り ます。 ト ランザクシ ョ ン ログの詳細については、 「 ト ランザクシ ョ ン ログおよびト ラ

ンザクシ ョ ン一貫性保守」 を参照して ください。

作業デ ィ レ ク ト リ

この設定は、多数のインデッ クスを作成するよ うなオペレーシ ョ ンで、 テンポラ リ ファ イルを保存するために使

用される MicroKernel 作業ディ レク ト リのロケーシ ョ ンを指定します。 ディ スク容量に制限がある場合は、 この

オプシ ョ ンを使用して十分な空き容量があるボ リ ュームに作業ディ レク ト リ を指定できます。

デフォルト値はあ り ません。 ただし、 作業ディ レク ト リ を指定しない場合、 データ ファ イルのロケーシ ョ ンがデ

フォルトにな り ます。 作業ディレク ト リ を指定するには、 [作業デ ィ レ ク ト リ] フ ィールドにパスを入力します。

パスには、 ド ラ イブまたはボ リ ュームの指定か UNC パスが含まれている必要があ り ます。

情報

情報には、 次のよ うな表示のみの項目が示されます。

メ モ リの使用

[メモ リの使用] には次の設定が含まれています。

「起動時のリ ソース割当」

「非アクティブ時、 小の状態に戻す」

「 小の状態に戻す待ち時間」

「ソート バッファー サイズ」

「システム キャ ッシュ」

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

String 適用外 データ フ ァ イルと

同一ディ レク ト リ

なし 必要

表示のみの項目 説明

サーバー名 データベース エンジンが実行されているマシンの名前。

エンジンのバージ ョ ン データベース エンジンのリ リース バージ ョ ン。

エンジンの種類 データベース エンジンの製品カテゴ リ。たとえば、「サーバー」や「ワークグループ」。

53

Page 70: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

起動時のリ ソース割当

この設定は、 MicroKernel の起動時に、 ス レ ッ ドや メ モ リ バッ フ ァーを含む リ ソース を割 り 当てる よ う に

MicroKernel に指示します。 起動時のリ ソース割り当てには L1 キャ ッシュに加えてバッ クグランド スレッ ド も含

まれます。 Pervasive PSQL コンポーネン トは必要に応じて リ ソースを自動的に割り当てます。 このため、 ほとん

どの場合、 この設定はオフ (デフォルト ) にするこ とができます。

この設定がオフの場合、 初のオペレーシ ョ ンが要求されるまで リ ソースが割り当てられません。 お使いのシス

テムが多数のユーザーをサポートする場合は、 この設定をオンにする方が適切です。

この設定を初めてオンにしたと きに、 Windows の動作方法のため、 メモ リの割り当てに顕著な違いが見られない

かもしれません。MicroKernel がその L1 キャ ッシュを割り当てる場合、Windows オペレーシ ョ ン システムは単に

メモ リのページを確保するだけで、 実際にそれらを MicroKernel にはコ ミ ッ ト しまません。 その後、 MicroKernelが実際にキャッシュ メモ リにアクセスする と、Windows は実際の物理ページをコ ミ ッ トするので、Pervasive PSQLコンポーネン ト (ntdbsmgr や w3dbsmgr など) のメモ リ使用が増加します。

Windows タスク マネージャーで " 仮想メモ リ サイズ " を見る と、 L1 キャ ッシュがアクセスされたと きにメモリ

の値が変化するこ とがわかり ます。バッ クグランド スレッ ドがアクセスされたと きにスレッ ド数が変わるこ と も

わかり ます。

非アク テ ィ ブ時、 小の状態に戻す

この設定によ り、 アクティブなク ライアン トが存在しない状態で一定の時間が過ぎる と、 MicroKernel は、大部分

のメモ リ容量およびスレッ ド リ ソースをシステムに解放し、 小の状態に戻り ます。 その時間は、 [ 小の状態

に戻す待ち時間] の値で設定します。 ほかのク ライアン トがアクティブになった場合は、 MicroKernel によ り、 リ

ソースが再度割り当てられます。

小の状態に戻す待ち時間

この設定は、 MicroKernel が 小の状態に戻る前に非アクティブ状態でどれだけ待機するかを指定します。 ( 小

の状態とは、 MicroKernel 起動時の初期状態です。) MicroKernel を 小の状態に戻すと、大部分の容量のメモリ と

スレッ ド リ ソースがシステムに解放されます。 MicroKernel を 小の状態に戻したくない場合もあ り ます。 たと

えば、繰り返し MicroKernel を使用するバッチ ファ イルを使用中の場合などです。ほかのク ライアン トがアクティ

ブになった場合は、 MicroKernel によ り、 リ ソースが再度割り当てられます。

この設定は、[非アク テ ィ ブ時、 小の状態に戻す] にオフ (デフォルト ) が設定されている場合は無視されます。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 0 - 2147483647 300000 ミ リ秒 必要

54

Page 71: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

ソー ト バッ フ ァー サイズ

この設定は、 ランタイムでインデッ クスを作成中に MicroKernel がソートのために動的に割り当てる、 または割

り当てを解除する メモ リの 大容量 (キロバイ ト単位) を指定します。

ソート用に指定されたサイズ以上のメモ リが必要な場合、 または利用可能な処理メモ リの 60 % 以上を占める場

合は、 MicroKernel によ り、 テンポラ リ ファ イルが作成されます。 処理に必要な利用可能メモ リの量は、 動的な

値で、 システムの設定や負荷によって変化します。 0 キロバイ ト を指定する と、 MicroKernel は、 利用可能なメモ

リのうち 大 60 % まで、 必要なだけのメモ リ を割り当てます。

システム キャ ッ シュ

このオプシ ョ ンは、 MicroKernel が、 MicroKernel 自体の 「キャ ッシュ割当サイズ」 に加え、 設定プロパティで指

定したシステム キャ ッシュを使用するかど うかを指定します。

L2 キャ ッシュを使用している場合は、 [システム キャ ッ シュ] をオフに設定する必要があ り ます。 「MicroKernelの 大メモ リ使用量」 の設定を確認してください。 [MicroKernel の 大メモ リ使用量] にゼロよ り大きい値が設

定されている場合は、 L2 キャ ッシュを使用しています。

L2 キャ ッシュを使用していない場合は [システム キャ ッ シュ] をオンにする と、 パフォーマンスが向上します。

MicroKernel は書き出すページを構成した り グループ化するのにシステム キャ ッシュを使用します。 システム

キャ ッシュがよ り効果的にページをディ スクに書き出せるよ うにフラ ッシュを十分に遅らせます。 ただし、 サー

バーにキャッシュ付きのディ スク アレイがある場合は [システム キャ ッ シュ] の設定をオフにするこ とによ り、

よ り良いパフォーマンスを得られるこ とがあ り ます。

Windows サーバーの場合のみ、 Windows パフォーマンス モニター ユーティ リ ティのページング ファ イルおよび

プロセス オブジェク ト を使用して Windows のシステム キャ ッシュが効率的に使用されているかをチェッ クでき

ます。 NTDBSMGR インスタンスの場合は、 ページ ファ イル オブジェク トの [% 使用] および [% 大使用] を

モニターし、 プロセス オブジェク トの [Page Fault/sec] および [Page File Bytes] をモニターします。

パフ ォーマンス チューニング

[パフォーマンス チューニング] には次の設定が含まれています。

「キャ ッシュ割当サイズ」

「通信スレッ ド数」

「ファ イルの拡張係数」

「インデッ クス バランスの実行」

「セグメン ト サイズを 2 GB に制限」

「ログ バッファー サイズ」

「MicroKernel の 大メモ リ使用量」

「I/O スレッ ド数」

「 ト ランザクシ ョ ン ログ サイズ」

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 0 - メ モ リ によ って

制限される

0 バイ ト 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン / オフ オフ (サーバー エンジン)

オン (ワークグループ エンジ

ン)

なし 必要

55

Page 72: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

キャ ッ シュ割当サイズ

この設定は、MicroKernel によって割り当てられるレベル 1 キャ ッシュのサイズを指定します。MicroKernel では、

すべてのデータ ファ イルへのアクセスにこのキャ ッシュが使用されます。

ご く一般的に言う と、 [キャ ッシュ割当サイズ] の値がシステム上の物理メモリの 40 % よ り小さ く、 設定情報の

[MicroKernel の 大メ モ リ使用量] が 40% よ り大きい値に設定されている場合に、全体のパフォーマンスは 高

になり ます。 適な設定は、 データ ファ イルのサイズ、 システム上で実行されるほかのアプリ ケーシ ョ ンの数、

およびコンピューターにインス トールされている メモ リの量によって変わり ます。

サーバー エンジン

Windows では、 この設定は、データベース エンジンが初めて起動されたと きに物理メモ リの 20% に設定され、そ

の値がレジス ト リに書き込まれます。 その後は、 エンジンが起動するたびにレジス ト リから値を読み取り ます。

設定プロパティを使用して値を変更する と、 レジス ト リの値も更新されます。 システムにメモ リ を追加したり取

り除いたり した場合には、 新し く使用可能になったメモ リ を 大限活かせるよ うにこの設定を変更する必要があ

り ます。

パフォーマンスを 適化するには、 使用中のファイルの合計サイズよ り小さいサイズをキャ ッシュに割り当てま

すが、 特に、 サーバーがほかのアプリ ケーシ ョ ンを実行している と きは、 利用可能なメモ リ をすべてキャ ッシュ

に割り当ててしまわないよ うに注意します。必要以上に大きい値を指定しても、 メモ リ を無駄に使用するだけで、

パフォーマンスの向上を図るこ とはできません。

ワークグループ エンジンおよびク ラ イアン ト キャ ッ シュ

データベース エンジンは、 初めて起動されたと きにこの値を設定し、 レジス ト リに書き込みます。 この初期値に

は物理メモ リの 20% が設定されます。 キャ ッシュの 大サイズはシステムのメモ リの容量に応じて異な り ます

が、 データベース エンジンは 64 MB を初期 大値に設定します。 レジス ト リ設定が初期化される と、 エンジン

は起動されるたびにレジス ト リから この値を読み取り ます。エンジンがこの設定を再計算するこ とはあ り ません。

設定プロパティを使用して値を変更する と、 レジス ト リの値も更新されます。 システムにメモ リ を追加したり取

り除いたり した場合には、 新し く使用可能になったメモ リ を 大限活かせるよ うにこの設定を手動で変更する必

要があ り ます。

ク ラ イアン ト キャ ッ シュ

設定の [キャ ッ シュ エンジンの使用] がオンに設定されている場合、 この情報はク ライアン ト ソフ ト ウェア (ク

ラ イアン ト キャ ッシュ) にも適用されます。

メ モ Pervasive PSQL v10 よ り前の Pervasive PSQL ク ラ イアン ト を使用する場合、キャ ッシュ割当サイズの値

はバイ ト単位で指定する必要があ り ます。 小の 64KB (65,536 バイ ト ) が指定されます。 大値はメモ リ

容量によって制限されます。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 1 メ ガバイ ト から メモ リ に

よって制限される量

(後述の 「メモ」 を参照して

ください)

初の起動時に動的

に初期化される

メガバイ ト

(後述の 「メ モ」

を参照して く だ

さい)

必要

56

Page 73: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

通信スレ ッ ド数

この設定は、 リモート ク ライアン トからのリ クエス ト を処理するために MicroKernel が 初に作成するスレッ ド

の数を指定します。 通信スレッ ドは、 リ クエス ト を行う ク ラ イアン ト プロセスに代わって、 実際に Btrieve オペ

レーシ ョ ンを実行する要素です。 このよ うに、 通信スレッ ドはワーカ スレッ ドによ く似ています。通信スレッ ド

は許容される 大範囲まで、 必要に応じて動的に増加します。 大値は、 256 です。

通信スレッ ドの設定は、 ある特定の状況下における改善に役立ちます。 たとえば、 1 つのファ イルに対して多く

のク ライアン トが操作 (主に書き込み) を行う よ うな場合、 よ り低い値を設定すればスケーラビ リティが向上す

るはずです。スレッ ド数の値をよ り低くする と、システム リ ソースでコンテキス ト スイ ッチを行わないよ うにし

ます。 このほか、 大量のワーカー スレ ッ ド間でスラ ッシングによって速度低下が発生する状況も、 この通信ス

レッ ドの設定によって改善する可能性があ り ます。 ワーカー スレ ッ ドは、 既存の全スレッ ドがレコード または

ファイルのロ ッ クで待機している場合にのみ動的に作成されます。

フ ァ イルの拡張係数

この値は、バージ ョ ン 8.x 以降の形式のデータ ファ イル内に保持する空きページの概算パーセン ト を指定します。

この設定は、旧バージ ョ ンの形式のファイルには適用されません。 MicroKernel では、 この値を使用して、 ファ イ

ルを拡張するか空きページを 初に使用するかを決定します。データベース エンジンは Turbo Write Accelerator を使用するので、 ディ スク書き込みのパフォーマンスは、 ファ イル内の空きページ数が増加するにつれて向上しま

す。これは、そのデータベース エンジンが複数の連続したファイル ページをディ スク上に書き込むこ とができる

からです。 したがって、 ディ スク書き込みのパフォーマンス とファ イルのサイズは互いに相殺関係にあ り ます。

ただし、 ファ イルに空きページが多すぎる と実際には全体のパフォーマンスを落と します。

データ ファ イル内に一定の連続した空きページを保持するためには、データベース エンジンが定期的にそのデー

タ ファ イルを拡張する必要があ り ます。 この設定がファ イルのサイズに影響があるこ とを覚えておいて くださ

い。 たとえば、 空きページのないファイルで作業する と きに、 [フ ァ イルの拡張係数] の値に 50% を指定した場

合、 そのファイルのサイズは 終的に 2 倍になり ます。 [フ ァ イルの拡張係数] の値に 75% を指定した場合、 そ

のファイルのサイズは 4 倍になり ます。 90% を指定した場合、 そのサイズは 10 倍近くになり ます。

完全に使用しないページのみが空きページとみなされるこ とに注意して ください。 ページのなかには途中までし

か使用していないページもあるので、15% の空きページといった場合、ファ イルの 15% が使用されないという意

味ではあ り ません。

この値は MicroKernel への単なる指示です。 ファ イルが更新される度合いによって、 実際の空き領域のパーセン

テージはいつでも小さ くするこ とができます。

この設定は、 バージ ョ ン 8.x よ り前の形式のファ イルには適用できません。 旧バージ ョ ンの形式のファイルにも

空きページがあ り、 そのファイルの動作状況によって空きページのパーセンテージは異なり ます。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric プ ロ セ ッ サの

コア数 ~ 256プロセッサのコア数。このプロセッサのコア数

は、 データベース エンジンが起動しているマ

シンのプロセッサ数です。

なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 0-100 15 パーセン ト 必要

57

Page 74: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

イ ンデ ッ クス バラ ンスの実行

この設定は、 MicroKernel が、 インデッ クス バランスを実行するかど うかを制御します。 インデッ クス バランス

によ り、 読み取りオペレーシ ョ ンのパフォーマンスは向上しますが、 このオプシ ョ ンを有効にする と、 時間がさ

らにかかり、 挿入、 更新、 削除オペレーシ ョ ン時にさ らにディ スクの I/O が必要な場合があ り ます。 インデッ ク

ス バランスの詳細については、 開発者リ ファレンス 『Pervasive PSQL Programmer's Guide』 を参照してください。

セグ メ ン ト サイズを 2 GB に制限

これを指定する と、データ ファ イルは、オペレーティング システムのファイル セグメン トである 2 GB の限界を

超えるごとに自動的に分割されます。 オンに設定した場合、 データ ファイルは 2 GB のセグメン トに分割されま

す。 オフに設定した場合、 データ ファ イルはセグメン ト化されず単一のファイルのままです。 セグメン ト化され

ていない大きなファイルを使用する利点は、 ディ スク I/O が効率的である という こ とです。 このため、 パフォー

マンスの向上が期待できます。

セグメン ト されていないファイルは、お使いのオペレーティング システムによって指定されているファイル サイ

ズの制限を受けます。 以前作成したファイルが既にセグメン ト化されている場合、 そのセグメン トはファ イル上

でそのまま残り ます。

「ファ イル バージ ョ ンの自動アップグレード」 の関連情報も参照してください。

ログ バッ フ ァー サイズ

この設定は、 MicroKernel によって使用される ト ランザクシ ョ ン ログ バッファーおよびアーカイブ ログ バッ

ファーのサイズを指定します。 ログ バッファーのサイズを増やすこ とによ り、 MicroKernel がログ情報をディ ス

クに書き込む回数が減るため、 パフォーマンスの向上が図れます。

メ モ [ログ バッ フ ァー サイズ]に[ト ラ ンザクシ ョ ン ログ サイズ] よ り大きい値を設定する と、MicroKernelは [ト ラ ンザクシ ョ ン ログ サイズ] の値を [ログ バッ フ ァー サイズ] に指定した値に自動的に変更します。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オン なし 必要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 262144 - メモ リ に

よって制限される

次の値のうち、 小さい方の値 : (MB 単位の物理メモリ / 256)または 8 MB

バイ ト 必要

58

Page 75: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバー設定プロパテ ィ

MicroKernel の 大メ モ リ使用量

この設定は、総物理メモ リに対して MicroKernel が消費できる メモ リの割合を指定します。MicroKernel による L1、L2 およびその他すべてのメモ リの使用量が含まれます (SRDE は含まれません)。 データベース エンジンは、 指

定した割合が必要でないか使用できない場合は、 これよ り少ないメモ リ を使用します。

値にゼロ (0) を指定する と、動的キャ ッシュはオフになり ます。 この場合、使用できるキャ ッシュは L1 のみで、

[キャ ッ シュ割当サイズ] で指定したサイズになり ます。 データベース サーバー専用のマシンを使用している場

合、 [MicroKernel の 大メ モ リ使用量] を 大値に設定するか、オペレーティング システムが占有しないメモリ

の割合を指定します。データベース サーバーでほかのアプリ ケーシ ョ ンが実行され、 これらすべてとパフォーマ

ンスのバランスをと る必要がある場合は、低い値を設定して、データベース キャ ッシュが利用可能なメモリ を使

用する場合に、 ほかのアプリ ケーシ ョ ンと競合しないよ うにする必要があ り ます。

メ モ [キャ ッ シュ割当サイズ] に [MicroKernel の 大メ モ リ使用量] の値よ り も大きな物理メモリ量を設

定した場合は、 [キャ ッシュ割当サイズ] の値が優先されます。 たとえば、 物理メモ リが 1 GB のマシンで、

[キャ ッシュ割当サイズ] に 600 MB、 [MicroKernel の 大メモ リ使用量] に 40% を設定したと します。 L1キャ ッシュには 600 MB のメモ リが割り当てられます。 [キャ ッシュ割当サイズ] の値の方が大きいので、 そ

の値が優先され、 L1 キャ ッシュに割り当てられる メモ リ量は [MicroKernel の 大メモ リ使用量] に指定さ

れた値よ り も大き くな り ます。

次の方程式を使用して MicroKernel 大メ モ リ使用量の近似値を割り出します。

(L1 キャ ッシュサイズ + 内部割り当て + L2 キャ ッシュ サイズ / 物理メモ リのサイズ ) * 100

この場合、

L1 キャ ッシュ サイズ : 「キャ ッシュ割当サイズ」

内部割り当て : L1 キャ ッシュの約 25% のサイズ

L2 キャ ッシュ サイズ : システムのメモ リ ロードに基づいて拡大および縮小する メモ リ容量

物理メモ リサイズ : マシンにインス トールされている メモ リ容量

パフォーマンス チューニングの詳細については、 「パフォーマンス チューニング」 を参照して ください。

I/O スレ ッ ド数

この設定は、 MicroKernel が起動するバッ クグラウンドの I/O スレッ ドの数を指定します。 これらのスレッ ドは、

MicroKernel のキャ ッシュからディ スク上のファ イルへすべてのページをア ト ミ ッ クかつ調和のとれた方法で書

き出す責任を果たします。 また、 初にファ イルを開いてファ イル コン ト ロール レコードの読み込みも行いま

す。 その他のほとんどの読み込みはローカル ワーカ スレッ ドおよび通信スレッ ドが行います。 MicroKernel が、

データ ファ イルを更新、 またはデータ ファ イルに書き込みを行う と、各ファ イルは、指定された I/O スレッ ドに

シーケンシャルに割り当てられます。 後のスレッ ドに達する と、すべてのデータ ファ イルがバッ クグラウンド

スレッ ドに割り当てられるまで、 MicroKernel は、 処理をやり直します。 MicroKernel では、 必要に応じて追加の

I/O スレッ ドを作成しないため、 必要と思われる I/O スレッ ドの数を予想して 大数を指定します。

適なパフォーマンスを実現するには、 [ 大オープン ファ イル数] に基づいた値を指定します。 Monitor ユー

ティ リ ティは開いているファイル数の現在値とピーク値を表示します。 データベースに平均 256 個のファイルが

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 0-100 60 パーセン ト 不要

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 1 ~ 1024 32 なし 必要

59

Page 76: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

ある場合、 デフォルトの 32 I/O スレッ ドでは各スレッ ドが 8 ファ イルを受け持つこ とにな り ます。 実際に即した

方法と して、 I/O スレッ ドごとに、 およそ 8 ファ イルを持つよ うにします。 たとえば、 オープン ファ イル数の平

均が 400 の場合、 およそ 50 個の I/O スレッ ドを使用します。 64 よ り大きい値を指定する とパフォーマンスが損

なわれるこ とがあ り ますが、 これはシステムの能力によ り ます。

メ モ この設定は、 マシンの特性、 OS の設定およびデータベース エンジンの作業負荷に影響されるため、適

切な I/O スレッ ド数を正確に計算するこ とはできません。

ト ラ ンザクシ ョ ン ログ サイズ

この設定は、 ト ランザクシ ョ ン ログ セグメン トの 大サイズを指定します。 ログ ファ イルが制限されたサイズ

に達する と、 MicroKernel は、 古いログ セグメン ト ファ イルを閉じ、 新しいファイルの使用を開始します。 ト ラ

ンザクシ ョ ン ログ セグメン トのサイズを制限するこ とによ り、 MicroKernel が一時的に使用するディ スク容量を

少なくできるため、 これを行いたいと思われるでし ょ う。 しかし、 サイズを制限する と、 ログ セグメン ト を頻繁

に閉じて作成するこ とが必要になるため、MicroKernel の処理量が増え、パフォーマンスが低下する可能性があ り

ます。

メ モ このオプシ ョ ンに [ログ バッ フ ァー サイズ] で指定した値よ り も小さい値を設定する と、 データベー

ス エンジンは [ト ラ ンザクシ ョ ン ログ サイズ] の設定を自動的に [ログ バッ フ ァー サイズ] の値に合わせ

ます。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 65536 - デ ィ ス ク容量に

よって制限される

「ログ バッ フ ァー サイズ」

の 2 倍バイ ト 必要

60

Page 77: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Windows ク ラ イアン ト 設定プロパテ ィ

Windows ク ラ イアン ト 設定プロパテ ィ

ク ラ イアン トの設定オプシ ョ ンは、 それぞれのインス ト レーシ ョ ンで設定が可能です。 これらのオプシ ョ ンは、

ワークステーシ ョ ンと して機能するサーバーを含め、ワークステーシ ョ ンごとに個別に設定する必要があ り ます。

グラフ ィカル ユーティ リ テ ィの Pervasive PSQL Control Center やコマンド ラ イン インターフェイス ユーティ リ

ティの bcfg を使って、ク ライアン ト を構成するこ とができます。PCC については、『Pervasive PSQL User's Guide』の 「Pervasive PSQL Control Center の使用」 を参照して ください。 bcfg については、 「CLI ユーティ リ ティによる

設定」 を参照してください。

次の表は、 使用可能なクライアン ト設定オプシ ョ ンとその設定の対応を示します。

表 13 ク ラ イアン ト の設定

設定オプシ ョ ン プロパテ ィ 名

「アクセス」 「ゲート ウェイ一貫性保守」

「ロード再試行回数」

「IDS の使用」

「ローカル MicroKernel エンジンの使用」

「 リモート MicroKernel エンジンの使用」

「ワイヤ暗号化」

「ワイヤ暗号化レベル」

「キャ ッシュ エンジン」 「起動時のリ ソース割当」

「非アクティブ時、 小の状態に戻す」

「キャ ッシュ割当サイズ」

「MicroKernel の 大メモ リ使用量」

「 小の状態に戻す待ち時間」

「キャ ッシュ エンジンのデバッグ」 [キャ ッシュ エンジンのデバッグ] で使用できる設定は、 サーバー構成にあ

る類似した設定と同様の機能をク ライアン ト キャ ッシュに対して実行しま

す。 「デバッグ」 の関連するサーバー設定を参照してください。

「通信プロ ト コル」 「自動再接続の有効化」

「サポート プロ ト コル」

「接続タイムアウ ト 」

「パフォーマンス チューニング」 「キャ ッシュ エンジンの使用」

「セキュ リ ティ」 「ランタイム サーバー サポート 」

「アプ リ ケーシ ョ ンの特性」 「スペースを含むファイル / ディ レク ト リ 」

「キー長の検証」

「スプラ ッシュ スク リーン」

61

Page 78: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

アクセス

[アクセス] には次の設定が含まれています。

「ゲート ウェイ一貫性保守」

「ロード再試行回数」

「IDS の使用」

「ローカル MicroKernel エンジンの使用」

「 リモート MicroKernel エンジンの使用」

ゲー ト ウ ェ イ一貫性保守

このオプシ ョ ンは、 MicroKernel ルーターが、 Pervasive PSQL が動作していないコンピューターのリ ス ト をレジス

ト リに保存する必要があるかど うかを指定します。 レジス ト リに保存する と、 ゲート ウェイ エンジンの検索に必

要な時間を短縮できます。 ワークグループに新しいエンジンを追加する と きは、 このオプシ ョ ンをオフに設定す

る必要があ り ます。

ロー ド再試行回数

この設定は、 MicroKernel ルーターが、 ターゲッ ト エンジンに対して接続を再試行する回数を指定します。

IDS の使用

この設定は主に、 Pervasive PSQL (IDS) を使用するレガシー アプリ ケーシ ョ ンで使用されます。 IDS 機能はコア

製品に統合されたため、 IDS を単独のインス トール済みコンポーネン ト と して使用するこ とはできな くな り まし

た。 IDS の統合は、 ク ライアン ト / サーバー環境の再構成を必要と します。

一般的には、 アプ リ ケーシ ョ ンは独自のファイルの場所情報を指定します。 別の方法と して、 IDS は、 テキス ト

ファ イル idshosts の情報に基づいてファイル場所のマッピングを指定します。

アプ リ ケーシ ョ ンが idshosts によるマッピング機能を使用しない場合は、 パフォーマンスを向上させるために

[IDS の使用] をオフにします。

アプリ ケーシ ョ ンが既に idshosts を使用している場合、 あるいはこの代替方法を使用してファ イルの場所をマッ

プしたいと考えている場合は、 [IDS の使用] をオンにします。 「idshosts ファ イルの使用」 を参照してください。

メ モ [IDS の使用] にオンを設定した場合や、 レガシー アプ リ ケーシ ョ ンがファ イルの場所情報を PIDSURL の形式で渡す場合には Pervasive PSQL 8.5 以降が必要です。 リ クエスターは IDS 情報を表すのにデータ

ベース URI を使用します。 データベース URI は Pervasive PSQL 8.5 で追加されました。 開発者リ ファレンス

『Pervasive PSQL Programmer's Guide』 の 「データベース URI」 を参照してください。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 適用外

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 0 ~ 65536 5 なし 適用外

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 適用外

62

Page 79: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Windows ク ラ イアン ト 設定プロパテ ィ

ローカル MicroKernel エンジンの使用

この設定は、ローカル アプリ ケーシ ョ ンがローカル エンジンに接続を試みるかど うかを指定します。オフに設定

する と、 ローカル エンジンへの接続は試行されません。

リ モー ト MicroKernel エンジンの使用

この設定は、 MicroKernel ルーターが、 リモート サーバーで動作している MicroKernel サーバーまたはワークグ

ループ エンジンへのアクセスを許可するかど うかを指定します。この設定をオンにし、[ローカル MicroKernel エンジンの使用 ] の設定をオンにした場合、 まずリモート サーバーへの接続が試行されます。

ワイヤ暗号化

「ワ イヤ暗号化」 を参照してください。

メ モ ク ラ イアン ト側のワイヤ暗号化設定は Pervasive JDBC および ADO.NET アクセス方法では使用されま

せん。 ク ラ イアン ト側のワイヤ暗号化設定の場合、 暗号化は接続文字列を使用して指定できます。 『JDBCDriver Guide』 の 「接続文字列の概要」、 および 『Pervasive Data Provider for .NET Guide and Reference』 の 「基

本的な接続文字列の定義」 を参照して ください。

ワイヤ暗号化レベル

「ワ イヤ暗号化レベル」 を参照して ください。

メ モ ク ラ イアン ト側のワイヤ暗号化設定は Pervasive JDBC および ADO.NET アクセス方法では使用されま

せん。 ク ラ イアン ト側のワイヤ暗号化設定の場合、 暗号化は接続文字列を使用して指定できます。 『JDBCDriver Guide』 の 「接続文字列の概要」、 および 『Pervasive Data Provider for .NET Guide and Reference』 の 「基

本的な接続文字列の定義」 を参照して ください。

キャ ッ シュ エンジン

これらの設定は、 キャ ッシュ エンジンが実行されている場合にのみ適用されます。 ワークグループ エンジンは

キャ ッシュ エンジンを兼ねています。ただし、データベース サーバー エンジンが実行されている場合にはキャッ

シュ エンジンは使用されないこ とに注意してください。

[キャ ッシュ エンジン] には次の設定が含まれています。

「起動時のリ ソース割当」

「非アクティブ時、 小の状態に戻す」

「キャ ッシュ割当サイズ」

「MicroKernel の 大メモ リ使用量」

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オン なし 適用外

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン / オフ オン なし 適用外

63

Page 80: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

「 小の状態に戻す待ち時間」

起動時のリ ソース割当

この設定は、キャ ッシュ エンジンの起動時に、スレッ ドやメモ リ バッファーを含むリ ソースを割り当てるよ うに

キャ ッシュ エンジンに指示します。

このオプシ ョ ンをオフにする と、 初のオペレーシ ョ ンが要求されるまで リ ソースが割り当てられません。 必要

に応じて、 Pervasive PSQL コンポーネン トによ り、 自動的にリ ソースが割り当てられます。 したがって、 多くの

場合、 このリ ソース割り当てを自分で行う必要はあ り ません。

非アク テ ィ ブ時、 小の状態に戻す

この設定は、 ワークグループ エンジンが実行されている場合にのみ表示されます。

この設定によ り、 アクティブなク ライアン トが存在しない状態で一定の時間が過ぎる と、 キャ ッシュ エンジンは

大部分のメモ リ容量およびスレッ ド リ ソースをシステムに解放し、 小の状態に戻り ます。 その時間は、 [ 小

の状態に戻す待ち時間] の値で設定します。 ほかのク ライアン トがアクティブになった場合は、 キャ ッシュ エン

ジンによ り、 リ ソースが再度割り当てられます。

キャ ッ シュ割当サイズ

この設定は、MicroKernel によって割り当てられるレベル 1 キャ ッシュのサイズを指定します。MicroKernel では、

すべてのデータ ファ イルへのアクセスにこのキャ ッシュが使用されます。

ご く一般的に言う と、 [キャ ッシュ割当サイズ] の値がシステム上の物理メモリの 40 % よ り小さ く、 設定プロパ

テ ィの [キャ ッ シ ュ エ ンジンの 大 メ モ リ 使用量] が 40% よ り大きい値に設定されている場合に、 全体のパ

フォーマンスは 高になり ます。 適な設定は、 データ ファ イルのサイズ、 システム上で実行されるほかのアプ

リ ケーシ ョ ンの数、 およびコンピューターにインス トールされている メモ リの量によって変わり ます。

データベース エンジンは、 初めて起動されたと きにこの値を設定し、 レジス ト リに書き込みます。 この初期値に

は物理メモ リの 20% が設定されます。 レジス ト リ設定が初期化される と、エンジンは起動されるたびにレジス ト

リから この値を読み取り ます。 エンジンがこの設定を再計算するこ とはあ り ません。 設定プロパティを使用して

値を変更する と、 レジス ト リの値も更新されます。 システムにメモ リ を追加した り取り除いた り した場合には、

新し く使用可能になったメモ リ を 大限活かせるよ うにこの設定を手動で変更する必要があ り ます。

データ型 範囲 デフ ォル ト 単位 データベース エンジン再起動の必要性

Boolean オン

オフ

オフ なし 適用外

データ型 範囲 デフ ォル ト 単位 データベース エンジン再起動の必要性

Boolean オン

オフ

オフ なし 適用外

データ型 範囲 デフ ォル ト 単位 データベース エンジン

再起動の必要性

Numeric 1 メ ガバイ ト から メモ リ によって制

限される量

(後述の「メモ」 を参照してください)

初の起動時に

動的に初期化さ

れる

メガバイ ト

(後述の 「メモ」 を

参照してください)

適用外

64

Page 81: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Windows ク ラ イアン ト 設定プロパテ ィ

メ モ Pervasive PSQL v10 よ り前の Pervasive PSQL ク ラ イアン ト を使用する場合、キャ ッシュ割当サイズの値

はバイ ト単位で指定する必要があ り ます。 小の 64KB (65,536 バイ ト ) が指定されます。 大値はメモ リ

容量によって制限されます。

MicroKernel の 大メ モ リ使用量

この設定は、総物理メモ リに対してキャ ッシュ エンジンが消費できる メモ リの割合を指定します。キャ ッシュ エンジンによって使用される メモ リには、 L1、 L2、およびその他すべてのメモリが含まれます。データベース エン

ジンは、 指定した割合が必要でないか使用できない場合は、 これよ り少ないメモ リ を使用します。

値にゼロ (0) を指定する と、動的キャ ッシュはオフになり ます。 この場合、使用できるキャ ッシュは L1 のみで、

[キャ ッ シュ割当サイズ] で指定したサイズになり ます。

パフォーマンスのチューニングについては、 「パフォーマンス チューニング」 を参照してください。

小の状態に戻す待ち時間

この設定は、 ワークグループ エンジンが実行されている場合にのみ表示されます。

この設定は、 キャ ッシュ エンジンが 小の状態に戻る前に非アクティブ状態でどれだけ待機するかを指定しま

す。 ( 小の状態とは、 キャ ッシュ エンジン起動時の初期状態です。 ) キャ ッシュ エンジンを 小の状態に戻す

と、大部分の容量のメモ リ と スレッ ド リ ソースがシステムに解放されます。キャ ッシュ エンジンを 小の状態に

戻したくない場合もあ り ます。たとえば、繰り返しキャ ッシュ エンジンを使用するバッチ ファ イルを使用中の場

合などです。 ほかのク ライアン トがアクティブになった場合は、 キャ ッシュ エンジンによ り、 リ ソースが再度割

り当てられます。

この設定は、[非アク テ ィ ブ時、 小の状態に戻す] にオフ (デフォルト ) が設定されている場合は無視されます。

キャ ッ シュ エンジンのデバッ グ

これらの設定は、 キャ ッシュ エンジンが実行されている場合にのみ適用されます。 ワークグループ エンジンは

キャ ッシュ エンジンを兼ねています。ただし、データベース サーバー エンジンが実行されている場合にはキャッ

シュ エンジンは使用されないこ とに注意してください。

[キャ ッ シュ エンジンのデバッ グ] で使用できる設定は、 [サーバー|デバッ グ] にある類似した設定がメ インの

データベース エンジンに対して実行するのと同様の機能を、ク ライアン ト キャ ッシュに対して実行します。各設

定の詳細については、 関連するサーバー設定を参照して ください。

「データ バッファーのバイ ト数」

「キー バッファーのバイ ト数」

「 ト レースするオペレーシ ョ ンの選択」

「 ト レース ファ イルのロケーシ ョ ン」

「 ト レース オペレーシ ョ ンの実行」

データ型 範囲 デフ ォル ト 単位 データベース エンジン再起動の必要性

Numeric 0-100 60 パーセン ト 適用外

データ型 範囲 デフ ォル ト 単位 データベース エンジン再起動の必要性

Numeric 0 - 2147483647 300000 ミ リ秒 適用外

65

Page 82: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

通信プロト コ ル

[通信プロ ト コル] には次の設定が含まれています。

「自動再接続の有効化」

「サポート プロ ト コル」

「接続タイムアウ ト 」

自動再接続の有効化

この設定は、 ネッ ト ワークの中断時にクライアン トが自動再接続を試行するかど うかを指定します。 オンに設定

する と、 自動再接続が有効になり ます。

自動再接続は、 この設定をサーバーの設定でも有効にしておかない限り、 有効になり ません。

サポー ト プロ ト コル

この設定は、 ク ラ イアン トが使用するプロ ト コルを指定します。 複数のプロ ト コルを指定した場合、 ク ライアン

トは、 使用可能なすべてのプロ ト コルで接続を試行します。 初に接続できたプロ ト コルは、 そのセッシ ョ ンの

間使用されます。 使用可能なオプシ ョ ンは次のとおりです。

TCP/IP

SPXII

NetBIOS

メ モ サーバーと ク ライアン トの両方で有効なプロ ト コルが 低 1 つないと、 通信を行う こ とができません。

NetBIOS が有効なのは Pervasive PSQL Workgroup のみで、 Pervasive PSQL Server では無効です。 Linux プラ ッ

ト フォームで動作する Pervasive PSQL でサポート されるプロ ト コルは TCP/IP のみです。したがって、サポー

ト プロ ト コルの設定は、 Linux では使用できません。

接続タ イムアウ ト

この設定の値は、ク ライアン トが リモート データベース エンジンを検索または接続するまで待つ時間を指定しま

す。 この値の設定が小さ過ぎる と、 接続が完了する前にタイムアウ トになるため、 サーバーが見つからないとい

う擬似エラーがクライアン トに返されます。この値の設定が大き過ぎる と、ク ライアン トが接続不可能なサーバー

へ接続しよ う と した場合、 エラーが返されるまでに著し く時間がかかる可能性があ り ます。 一般的に、 ほとんど

のネッ ト ワークでは 15 秒から 30 秒の間の値が妥当です。「サーバーが見つかり ません」 というエラーが頻発する

場合は、 よ り高い値を設定して ください。

この設定は、 以前は通信リ クエス ターの TCP/IP 接続タ イムアウ ト と呼ばれていました。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 適用外

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

複数選択 次の解説を

参照。

下記の 3 つの選択肢が

あ り ます

なし 適用外

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Numeric 1 ~ 2147483647 15 秒 適用外

66

Page 83: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Windows ク ラ イアン ト 設定プロパテ ィ

パフ ォーマンス チューニング

[パフォーマンス チューニング] には次の設定が含まれています。

「キャ ッシュ エンジンの使用」

キャ ッ シュ エンジンの使用

この設定は、 ク ラ イアン トのキャ ッシュを使用するかど うかを指定します。 この設定がオフの場合、 ク ライアン

ト ワークステーシ ョ ン上の比較的小さな固定サイズのキャ ッシュに、単一レコードをキャ ッシュします。 この設

定がオンになっている と、 ク ラ イアン トはキャ ッシュ エンジンがメモ リにロード されていればこれを使用しま

す。 キャ ッシュ エンジンがロード されていない場合は、 この設定はなんの効果もあ り ません。

ク ラ イアン ト キャ ッシュは、いろいろな意味でワークグループ エンジンと似ています。デフォルトでは、アプリ

ケーシ ョ ンが 初にデータベースにアクセスしたと きにク ラ イアン ト キャ ッシュはメモ リに自動的にロード さ

れ、 そのアプリ ケーシ ョ ンを終了する と数分後にアンロード されます。

ク ラ イアン ト キャ ッシュを常にメモ リに保持して、各使用セッシ ョ ンがキャ ッシュを再配置するパフォーマンス

コス ト を回避したい場合もあるでし ょ う。 ク ラ イアン ト キャ ッシュをロード したままにする場合は、コマンド プロンプ トから次のコマンドを実行して ください。

file_path\PSQL\bin\w3dbsmgr -btrv

Pervasive PSQL ファ イルのデフォルトの保存場所については、 『Getting Started with Pervasive PSQL』 の 「PervasivePSQL ファ イルはどこにインス トールされますか?」 を参照して ください。 「キャ ッシュ割当サイズ」 でク ライア

ン ト キャ ッシュに関する説明も参照してください。

キャ ッシュ エンジンが開始する と ト レイ アイコンが表示され、 Windows タス ク バーから ク ラ イアン ト キャ ッ

シュを制御できます。 ク ラ イアン ト キャ ッシュを停止するには、 ク ライアン ト キャ ッシュ ト レイ アイコンを右

ク リ ッ ク し、 [エンジンを停止し て終了] を選択します。

メ モ Pervasive PSQL は、 ク ライアン ト キャ ッシュ と、 データベース エンジン キャ ッシュやほかのク ライア

ン ト キャ ッシュ との同期をと り ます。 この動作は完全に自動的かつ透過的に行われます。 ただし、 データ

ベース エンジンでデータベースの変更が発生し、その変更がすべてのクライアン ト キャ ッシュに反映される

までの間には 大 5 秒の遅延が生じます。お使いのシステムで、 ク ライアン ト キャ ッシュにそのよ うな古い

ページが 大 5 秒間存在するこ とが許容されない場合は、 キャ ッシュエンジンを使用しないでください。

以下の操作はクライアン ト キャ ッシュには格納されません。

ト ランザクシ ョ ン内にあるすべての操作

ロッ ク バイアスのかかった操作

Insert、 Update、 Delete などの書き込み操作

Open および Close 操作

セキュ リ テ ィ

[セキュ リ ティ] には次の設定が含まれています。

「ランタイム サーバー サポート 」

データ型 範囲 デフ ォル ト 単位 データベース エンジン再起動の必要性

Boolean オン

オフ

オフ なし 適用外

67

Page 84: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

ラ ン タ イム サーバー サポー ト

この設定は、 ランタイム サーバー サポート を制御します。 この設定が "Yes" (有効) 場合は、 現在使用中のド ラ

イブのユーザー名が使用されます。 別のユーザー名で RTSS を有効にするには、 「ユーザー名 , パスワード」 を入

力します。

「CN= ユーザー名 .O= 組織 , パスワー ド」 の形式で、 完全修飾された NDS ユーザー名を使用できるこ とに注意し

てください。ユーザー名はシンプルなバインダ リ名であってもかまいません。バインダ リ コンテキス ト一覧の

初のエン ト リはシンプルな名前である必要があ り ます。 そ う しないと、 NDS のログインが失敗します。 シンプル

な名前で NDS ログインが失敗した場合は、 バインダ リ ログインが試行されます。 バインダ リ ログインは、 ログ

イン試行を処理している間、 進行を妨げるこ とがあ り ます。

SUPERVISOR および ADMIN は、 正しいパスワード と一緒に入力しても、 有効なユーザー名ではあ り ません。 リ

クエスターが、SUPERVISOR または ADMIN 以外のログイン ユーザー名を検出できない場合は、ログインを試行

しません。

アプ リ ケーシ ョ ンの特性

[アプ リ ケーシ ョ ンの特性] には次の設定が含まれています。

「スペースを含むファイル / ディ レク ト リ 」

「スプラ ッシュ スク リーン」

「キー長の検証」

スペースを含むフ ァ イル / デ ィ レ ク ト リ

このオプシ ョ ンは、ト ランザクシ ョナル インターフェイス オペレーシ ョ ンに指定するファイル名でスペースを使

用できるよ うに、 ト ランザクシ ョナル インターフェイスに指示します。

スプ ラ ッ シュ スク リーン

この設定は、ト ランザクシ ョナル インターフェイスのスプラ ッシュ スク リーンを表示させるかど うかを制御しま

す。 スプラ ッシュ スク リーンは、 初にク ライアン ト リ クエスターがロード される と きに表示されます。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

String YesNoユーザー名 , パスワード

Yes なし 適用外

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オン なし 適用外

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 適用外

68

Page 85: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Windows ク ラ イアン ト 設定プロパテ ィ

キー長の検証

このオプシ ョ ンを従来の Btrieve アプ リ ケーシ ョ ンで使用する と、 ク ラ イアン ト リ クエスターに渡されたイン

デッ クスのキー長がキーに対して十分なサイズであるかど うかが、 リ クエスターで検証されなくな り ます。 この

オプシ ョ ンをオフに設定するこ とで、アプリ ケーシ ョ ンはステータス 21 のエラーを回避できるよ うにな り ます。

注意 ただし、 オフに設定した場合、 このオプシ ョ ンはメモ リの上書きを防ぐための Pervasive リ クエスター

によるチェッ クを無効にします。 メモ リの上書きによ り生じる状況で、 望まし くない状況はいくつかあ り ま

すが、 中でも一般保護エラー (GPF) が発生する可能性があ り ます。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オン なし 適用外

69

Page 86: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

Linux ク ラ イアン ト 設定プロパテ ィ

Pervasive PSQL のク ラ イアン ト およびサーバーは、 どちら もグラ フ ィ カル ユーテ ィ リ テ ィ の Pervasive PSQLControl Center やコマンド ラ イン インターフェイス ユーティ リ ティの bcfg を使って構成するこ とができます。

PCC については、 『Pervasive PSQL User's Guide』 の 「Pervasive PSQL Control Center の使用」 を参照して ください。

bcfg については、 「CLI ユーティ リ ティによる設定」 を参照してください。

設定値での大文字小文字の区別

Linux ク ラ イアン トは設定値の確認または変更を行う場合、 大文字小文字を区別しません。 たとえば、 設定値に

"Yes" または "yes" を入力した場合、 Linux ク ライアン トではこれらを同一の値である と解釈します。

ローカル設定 ([Local]) によ って影響を受ける ク ラ イアン ト のパフ ォーマンス

Linux ク ライアン ト インターフェイスが初めて呼び出されたと きには、そのデフォルトの設定値が Pervasive レジ

ス ト リに設定されます。 Pervasive PSQL Client は、 自身のインス トールにサーバー エンジンが含まれているかど

うかを認識しません。 そのため、 ローカル設定 ([Local] ) を有効 ("Yes") にします。 これは Linux ク ライアン

トのパフォーマンスに影響を及ぼす可能性があ り ます。

ク ラ イアン ト を使用しているコンピューターにサーバー エンジンがない場合は、 ローカル設定 ( [Local] ) を無

効("No")にします。「Use Local MicroKernel Engine(ローカル MicroKernel エンジンの使用)」を参照して ください。

埋め込みスペースを含むフ ァ イル名

デフォルトで、 Linux ク ライアン ト インターフェイスはスペースを含むファイル名をサポート します。

たとえば、 次のよ うにします。

/mymount/usr/gary/file with spaces.mkd

スペースを含まないファ イル名を使用したい場合は、 [スペースを含むファ イル / ディ レク ト リ ] ( [EmbeddedSpaces]) 設定を変更する必要があ り ます。 「Embedded Spaces (スペースを含むファイル / ディ レク ト リ )」 を参照

してください。

設定リ フ ァ レンス 次の表は、 Linux ク ライアン トの設定オプシ ョ ンの一覧を示します。

表 14 Linux ク ラ イアン ト の設定

設定オプシ ョ ン プロパテ ィ 名

「Access (アクセス)」 「Use Local MicroKernel Engine (ローカル MicroKernel エンジンの使用)」

「Use Remote MicroKernel Engine ( リ モート MicroKernel エンジンの使用)」

「Use IDS (IDS の使用)」

「Wire Encryption (ワ イヤ暗号化)」

「Wire Encryption Level (ワイヤ暗号化レベル)」

「Communication Protocols (通信プロ ト コル)」 「Enable AutoReconnect (自動再接続の有効化)」

「Application Characteristics (アプ リ ケーシ ョ ン

の特性)」

「Embedded Spaces (スペースを含むファ イル / ディレク ト リ )」

「Verify Kye Length (キー長の検証)」

70

Page 87: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Linux ク ラ イアン ト 設定プロパテ ィ

Access (アクセス)

[Access] には次の設定が含まれています。

「Use Local MicroKernel Engine (ローカル MicroKernel エンジンの使用)」

「Use Remote MicroKernel Engine ( リモート MicroKernel エンジンの使用)」

「Use IDS (IDS の使用)」

「Wire Encryption (ワイヤ暗号化)」

「Wire Encryption Level (ワイヤ暗号化レベル)」

Use Local MicroKernel Engine (ローカル MicroKernel エンジンの使用)

「ローカル MicroKernel エンジンの使用」 を参照してください。

Use Remote MicroKernel Engine (リ モー ト MicroKernel エンジンの使用)

「 リモート MicroKernel エンジンの使用」 を参照してください。

リ モー ト エンジン と UNC パス

UNC パスがク ライアン トから正し く動作するよ うにするには、 以下のこ と行う必要があ り ます。

アクセスしよ う とするファ イルと同じコンピューターにあるエンジンを実行している必要があ り ます。

[リ モー ト MicroKernel エンジンの使用] をオンに設定しておきます。

メ モ ローカルの Linux マシンを指す UNC パスを使って送信するこ とはできません。 ただし、 次のよ う な

UNC スタイルのパスは使用するこ とができます。 //localhost/usr/local/psql/data/samples/sample.btr

ファ イル サーバーにエンジンが不要の場合 (つま り、 ク ライアン トのローカル エンジンが欲しい場合)、 ク ライ

アン トの リモート ファ イル システムをマウン ト し、 UNC 形式ではなく " ネイティブ形式 " のパスになるよ うパ

スを変更する必要があ り ます。 たとえば、 次のパスは Linux のネイティブな形式です。

/mnt/myremotedata/sample.btr

Use IDS (IDS の使用)

「IDS の使用」 を参照してください。

Wire Encryption (ワイヤ暗号化)

「ワ イヤ暗号化」 を参照してください。

メ モ ク ラ イアン ト側のワイヤ暗号化設定は Pervasive JDBC および ADO.NET アクセス方法では使用されま

せん。 ク ラ イアン ト側のワイヤ暗号化設定の場合、 暗号化は接続文字列を使用して指定できます。 『JDBCDriver Guide』 の 「接続文字列の概要」、 および 『Pervasive Data Provider for .NET Guide and Reference』 の 「基

本的な接続文字列の定義」 を参照して ください。

Wire Encryption Level (ワイヤ暗号化レベル)

「ワ イヤ暗号化レベル」 を参照して ください。

71

Page 88: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

設定リ フ ァ レンス

メ モ ク ラ イアン ト側のワイヤ暗号化設定は Pervasive JDBC および ADO.NET アクセス方法では使用されま

せん。 ク ラ イアン ト側のワイヤ暗号化設定の場合、 暗号化は接続文字列を使用して指定できます。 『JDBCDriver Guide』 の 「接続文字列の概要」、 および 『Pervasive Data Provider for .NET Guide and Reference』 の 「基

本的な接続文字列の定義」 を参照して ください。

Communication Protocols( 通信プロト コ ル)

[Communication protocols] には次の設定が含まれています。

「Enable AutoReconnect (自動再接続の有効化)」

Enable AutoReconnect (自動再接続の有効化)

この設定は、 ネッ ト ワークの中断時にクライアン トが自動再接続を試行するかど うかを指定します。 オンに設定

する と、 自動再接続が有効になり ます。

自動再接続は、 この設定をサーバーの設定でも有効にしておかない限り、 有効になり ません。

メ モ Pervasive Linux ク ライアン トはこの Auto-Reconnect (自動再接続)機能をサポート しますが、Linux サー

バーではサポート しません。 このため、 Linux ク ラ イアン トから AutoReconnect (PARC) 機能を使用した場

合のみ Windows サーバーに接続するこ とができます。

Application Characteristics (アプ リ ケーシ ョ ンの特性)

[Application characteristics] には次の設定が含まれています。

「Embedded Spaces (スペースを含むファイル / ディレク ト リ )」

「Verify Kye Length (キー長の検証)」

Embedded Spaces (スペースを含むフ ァ イル / デ ィ レ ク ト リ)

「スペースを含むファイル / ディ レク ト リ 」 を参照してください。

Verify Kye Length (キー長の検証)

「キー長の検証」 を参照してください。

データ型 範囲 デフ ォル ト 単位 エンジン再起動の必要性

Boolean オン

オフ

オフ なし 適用外

72

Page 89: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

5

パフ ォーマンス

データベース パフォーマンスの分析およびチューニング

この章では、 以下の項目について説明します。

「パフォーマンスの分析」

「パフォーマンス チューニング」

「ハイパーバイザー製品でのパフォーマンス」

「Xtreme I/O ド ラ イバー」

73

Page 90: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

パフ ォーマンスの分析

Pervasive PSQL Server の Windows 版では Windows パフォーマンス モニターで使用するパフォーマンス カウン

ターを提供します。 Pervasive PSQL のパフォーマンス カウンターがサポート されるのは、 Windows Vista 以上の

Windows オペレーティング システムのみです。 パフォーマンス カウンターはデータベース エンジンの状態や動

作を測定します。 これによ りアプリ ケーシ ョ ンのパフォーマンスを分析するこ とができます。 Windows パフォー

マンス モニターは、 指定の時間間隔でパフォーマンス カウンターの現在の値を要求します。

Pervasive PSQL は、 パフォーマンス モニターで表示するためだけにデータを提供しており、 カウンターのプロパ

ティは変更できません。 パフォーマンス モニターは以下のアイテムを制御します。

データの表示形式。 折れ線グラフ (デフォルト )、 ヒ ス ト グラムおよびテキス ト レポートの 3 種類の形式で

表示されます。

表示フ ィ ールド。 [ 新]、 [平均]、 [ 小] および [ 大] という ラベルが付けられています。

値の表示用のスケール。 Pervasive PSQL は各カウンターに対してデフォルトのスケールを提供します。 パ

フォーマンス モニターを使用すれば、個々のカウンターのスケールを変更するこ とができます。「カウンター

のスケールを変更するには」 を参照して ください。

カウンターの値は、 呼び出し元を問わず、 データベース エンジンへのすべての呼び出しを反映します。 つま り、

ト ランザクシ ョナル インターフェイス、リ レーシ ョナル インターフェイス、ネイティブな Btrieve アプリ ケーシ ョ

ン、 ユーティ リ ティなど、 すべてがカウンターの値の一因とな り ます。 カウンターの値はすべてのファイルを対

象に収集されます。 ファ イルごとのカウンターは現在サポート されていません。

パフォーマンス カウンターの使用は、主にアプリ ケーシ ョ ン開発者およびその他の技術スタ ッフ向けの高度な機

能です。 Windows パフォーマンス モニターおよび一般的なカウンターの使用の詳細については、 Microsoft の関

連ドキュ メン ト を参照してください。

イ ンス ト ール時の登録

デフォルトで、 Pervasive PSQL のインス トールでは Pervasive PSQL パフォーマンス カウンターをパフォーマンス

モニターに登録します。 このカウンターはインス トール完了後に使用できるよ うにな り ます。

お客様のニーズへの対応のため、本章で説明されていない Pervasive PSQL コレクター セッ ト またはカウンターを

追加インス トールするこ とになる可能性もあ り ます。そのよ うな場合は、Windows パフォーマンス モニターで提

供されるコレクター セッ ト またはカウンターの説明を参照してください。 「カウンター セッ ト または個別のカウ

ンターをモニターへ追加する」 を参照して ください。

データ コ レ ク ター セ ッ ト

データ コレクター セッ トは、複数のカウンターを 1 つのコンポーネン トにま とめています。このコンポーネン ト

を使用してパフォーマンスを再確認したり記録したりするこ とができます。 Pervasive PSQL では以下のデータ コレクター セッ ト を提供します。

「Pervasive PSQL MicroKernel Btrieve Operations」

「Pervasive PSQL MicroKernel Cache」

「Pervasive PSQL MicroKernel I/O」

「Pervasive PSQL MicroKernel Locks and Waits」

「Pervasive PSQL MicroKernel Transactions」

Pervasive PSQL MicroKernel Btrieve Operations

これらのカウンターは、 ト ランザクシ ョナル (Btrieve) インターフェイスに関するク ライアン ト アプリ ケーシ ョ

ンの動作の特徴を示すために役立ちます。 カウンターは、指定した時点にデータベース エンジンで処理されたオ

ペレーシ ョ ンの種類を報告します。

『Btrieve API Guide』 の 「Btrieve API オペレーシ ョ ン」 も参照してください。

74

Page 91: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンスの分析

Pervasive PSQL MicroKernel Cache

データベース エンジンは 2 つのレベルのメモ リ キャ ッシュ システムを使用してデータ操作のパフォーマンスを

向上させます。 2 つのキャッシュは 「L1 (レベル 1) キャ ッシュ」 と 「L2 (レベル 2) キャ ッシュ」 と呼ばれます。

ユーザーの要求に応じエンジンがディ スクからページを読み取る頻度が高くなるほど、 パフォーマンスは低下し

ます。 これらのカウンターを使用する と、データベース エンジンによるディ スク読み込みの回避状況をまとめて

表示し、 キャ ッシュ サイズの設定に対してなんらかの変更が必要かど うかを判断するこ とができます。

すべてのデータが L1 キャ ッシュに格納された場合は 高のパフォーマンスが得られます。 ただし、 データ ファ

イルのサイズによっては、 L1 キャ ッシュにすべてのデータ ページを保持できないこ と もあ り ます。 このため、

データベース エンジンは第 2 レベルのキャッシュ (L2 キャ ッシュ) も使用します。 L2 キャ ッシュのページは圧

縮形式で格納されるため、 よ り多くのページをメモ リに入れるこ とができます。 そのため、 L1 キャ ッシュよ り も

パフォーマンスは低下しますが、 データベース エンジンがディ ス クからページを読み込む状況と比べればパ

フォーマンスは高くな り ます。

「データベースのメモ リ キャ ッシュの理想的なサイズを計算するには」 も参照してください。

表 15 MicroKernel Btrieve オペレーシ ョ ン用のカウン ター

カウン ター 説明 典型的な使用法

Btrieve Close Operations/sec 1 秒あたりの Btrieve Close オペレーシ ョ ン数。 ク ラ イ アン ト アプ リ ケー

シ ョ ンの動作を調査 し ま

す。 問題を解決する 初の

ステップと して、 Btrieve オペレーシ ョ ンに関するアプ

リ ケーシ ョ ン動作の分析に

役立つ可能性があ り ます。

Btrieve Get/Step Operations/sec 1 秒あたりの Btrieve Get および Step オペレーシ ョ ン数。

各種 Get および Step オペレーシ ョ ンについては、 『BtrieveAPI Guide』 の 「Btrieve API オペレーシ ョ ン」 を参照して

ください。

Btrieve Open Operations/sec 1 秒あたりの Btrieve Open オペレーシ ョ ン数。

Btrieve Records Deleted/sec 1 秒あたりの Btrieve レコード削除数。

Btrieve Records Inserted/sec 1 秒あたりの Btrieve レコード挿入数。

Btrieve Records Updated/sec 1 秒あたりの Btrieve レコード アップデート数。

Change Operations/sec 1 秒あた りのデータ ファ イルを変更する Btrieve オペレー

シ ョ ン数。

Operations/sec 1 秒あたりのオペレーシ ョ ン数。

Page Server Requests/sec 1 秒あた りの リ モー ト キャ ッシュエンジンからのページ

リ クエス ト数。

75

Page 92: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

表 16 MicroKernel キャ ッ シュ用のカウン ター

カウン ター 説明 典型的な使用法

Level 1 Cache Dirty Percentage ダーテ ィ ページを含む使用

中の L1 キ ャ ッ シ ュの割合

(%)。

頻繁にアクセスされるページが継続的にキャ ッシュの

外へ出されるかど うかを判断するのに役立ちます。 そ

のよ う なページが継続的にキャ ッシュの外へ出される

とパフォーマンスが低下する可能性があ り ます。

ディ ス クへ書き込まれていない変更を含むダーテ ィ

ページは、 L1 キャ ッシュに存在しているだけかもしれ

ません。 大量に書き込みが行われる状況下では、 L1キャ ッシュにダーティ ページが含まれる可能性が高く

な り ます。 これによってページが強制的に L1 キャ ッ

シュから出され、 L2 キャ ッシュを設定していれば L2キャ ッシュへ入れられます。 L2 キャ ッシュを設定して

いなければ L1 キャ ッシュの外へ完全に出されてしま

います。

データベース エンジンは、指定した間隔で、 または L1キャ ッ シュがほぼいっぱいになった と きにダーテ ィ

ページをディ ス クへ書き込みます。 ページが頻繁に

ディ スクへ書き込まれる と、 パフォーマンスに悪影響

を及ぼす可能性があ り ます。

L1 キャ ッシュのサイズを調整してダーテ ィ ページの

割合が高くならないよ うにすれば、 パフォーマンスを

向上させる こ とができます。 「キャ ッシュ割当サイズ」

も参照してください。

Level 1 Cache Hits/sec 1 秒あた り の L1 キャ ッシュ

ヒ ッ ト数。

データベース エンジンが、 要求されたページを L1キャ ッシュで見つける こ とができたかど うかを判断す

るのに役立ちます。ヒ ッ ト率が高くなる と、データベー

ス エンジンが L2 キャ ッシュまたは物理記憶域へアク

セスする こ とな く L1 キャ ッシュでページを見つけて

いるこ とを示します。

Level 1 Cache Hit Ratio L1 キ ャ ッ シ ュ ア ク セスの

ヒ ッ ト率 (%) 。

MicroKernel が有効であ る間

だけ割合が表示されます。

Level 1 Cache Misses/sec 1 秒あた り の L1 キャ ッシュ

失敗数。

Level 1 Cache Usage 現在使用中の L1 キャ ッシュ

の割合 (%)。L1 キャ ッシュのサイズをアプリ ケーシ ョ ンに応じて調

整する場合に役立ちます。 たとえば、 サイズが小さな

データ ファイルまたは主に読み取り専用のデータ ファ

イルを使用するアプ リ ケーシ ョ ンの場合、 デフォル ト

で設定された L1 キャ ッシュはそのデータ ファ イルだ

けではいっぱいにならないかもしれません。 L1 でメモ

リが使用されなくても、 オペレーティング システムま

たはその他のアプ リ ケーシ ョ ンがその未使用分のメモ

リ を使用するこ とはできません。

L1 キャ ッシュ サイズを適宜変更すれば、 メモ リ をオペ

レーティング システムへ解放するこ とができます。 逆

に、 データベース全体を メモ リに入れておきたい場合

は、L1 キャ ッシュ サイズの設定が妥当かど うかを知る

ためにこの値を監視するこ とができます。

76

Page 93: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンスの分析

Pervasive PSQL MicroKernel I/O

このセッ トのカウンターは、データベース エンジンによる、物理記憶域へのデータの読み取りおよび書き込み状

況を把握するのに役立ちます。カウンターによって報告されるページとはデータ ファ イル ページです。これらの

カウンターでは、アーカイブ ログまたはト ランザクシ ョ ン ログ向けに使用されるファ イルのページ用のデータは

報告しません。

『Pervasive PSQL Programmer's Guide』 の 「ページ」 も参照して ください。

Level 2 Cache Hits/sec 2 秒あた り の L1 キャ ッシュ

ヒ ッ ト数。

データベース エンジンが、 要求されたページを L2キャ ッシュで見つける こ とができたかど うかを判断す

るのに役立ちます。ヒ ッ ト率が高くなる と、データベー

ス エンジンが物理記憶域へアクセスする こ とな く L2キャ ッシュでページを見つけているこ とを示します。

Level 2 Cache Hit Ratio L2 キ ャ ッ シ ュ ア ク セスの

ヒ ッ ト率 (%) 。

MicroKernel が有効であ る間

だけ割合が表示されます。

Level 2 Cache Misses/sec 1 秒あた り の L2 キャ ッシュ

失敗数。

Level 2 Cache Raw Size L2 キャ ッシュの現在のサイ

ズ ( バイ ト )。任意指定の L2 キャ ッシュ サイズを決定するために役

立ちます。

L2 キャ ッシュは 「MicroKernel の 大メモ リ使用量」用

に設定される要素の 1 つです。 その設定は、 総物理メ

モ リに対してデータベース エンジンが消費できる メモ

リの割合を指定します。 これには、 データベース エン

ジンによる、L1 キャ ッシュ、L2 キャ ッシュおよびその

他すべてのメモ リの使用量が含まれます

「MicroKernel の 大メモ リ使用量」 の設定が 0 以外の

場合、 L2 キャ ッシュのサイズはその設定による メモ リ

制限内に収ま り ます。 L2 キャ ッシュはシステムのメモ

リ消費を監視し、 必要に応じて自身のサイズを変更し

ます。 L2 キャ ッシュによって使用される メモ リは、 オ

ペレーティング システムによってスワップ アウ ト され

るこ と もあ り ます。

Level 2 Cache Raw Usage 現在使用中の L2 キャ ッシュ

の量 ( バイ ト )。

Level 2 Cache Size Relative toMemory

物理 メ モ リ に対する L2キ ャ ッ シ ュ サイ ズの割合

(%)。

システム メモ リに対する L2 キャ ッシュの使用割合を

示します。

Level 2 Cache Usage 現在使用中の L2 キャ ッシュ

の割合 (%)。現時点における L2 キャ ッシュの使用割合を示します。

表 17 MicroKernel 入力 / 出力用のカウン ター

カウン ター 説明 典型的な使用法

Pages Read/sec 1 秒あた りのディ ス クからの読み取り

ページ数。

データベース エンジンによる、 物理記憶域

へのデータの読み取りおよび書き込み状況

を測定します。Pages Written/sec 1 秒あた り のデ ィ ス クへの書き込み

ページ数。

表 16 MicroKernel キャ ッ シュ用のカウン ター

カウン ター 説明 典型的な使用法

77

Page 94: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

Pervasive PSQL MicroKernel Locks and Waits

ク ラ イアン トの要求は、 リ ソースが使用可能になるのを待つため遅延するこ とがあ り ます。 これらのカウンター

を使用すれば、 リ ソースが使用可能になるまでク ライアン ト要求を待つ必要があるデータベース リ ソースのタイ

プを特定するこ とができます。 同様に、 これらのカウンターでは複数のク ライアン トが リ ソースへアクセスした

と きのデータベース エンジンの動作を観察するこ とができます。 値がク ラ イアン ト数に近いまたは等しい場合

は、 同じ リ ソースに対して競合している可能性があるこ とを示しています。 これらの競合を低減するための是正

措置を行えば、 反応性を改善するこ とができます。

「Waits on Page Buffers」 および 「Waits on Page Reads」 カウンターはグローバル リ ソースを待機します。 その他の

カウンターはすべて複数のクライアン トに適用しますが、 各ク ライアン トはそれぞれ異なる リ ソースを待機して

いる場合があ り ます。

『Pervasive PSQL Programmer's Guide』 の 「データの整合性」 および 「複数のク ライアン トのサポート 」 を参照し

てください。

表 18 MicroKernel ロ ッ クおよび待機用のカウン ター

カウン ター 説明 典型的な使用法

Client Record Locks ク ラ イアン ト によって明示的にロ ッ ク された

レコード数。

ク ラ イアン ト アプ リ ケーシ ョ ンの作業負

荷を調査します。

Waits on Active Reader Lock アクテ ィブな リーダー ロ ッ クを待機中のク ラ

イアン ト数。複数のク ライアン トが同時にアク

ティブな リーダー ロ ッ クを保持できます。ただ

し、アクティブな リーダー ロ ッ ク とアクティブ

なライタ ロ ッ クは排他的に使用されます。その

ため、 1 つのク ライアン トがアクティブな リー

ダー ロ ッ クを保持する と、どのク ライアン ト も

アクテ ィブなラ イ タ ロ ッ クを取得する こ とは

できません。 1 つのク ライアン トがアクティブ

なライタ ロ ッ クを保持する と、複数のク ライア

ン ト がアクテ ィブな リーダー ロ ッ クを取得す

るこ とはできません。各ファ イルがそれ自身の

リーダー (およびライタ) ロ ッ クを持っていま

す。

「Waits on Active Writer Lock」 カウンターも参照

してください。

Waits on Active Writer Lock アクテ ィブなラ イ タ ロ ッ クを待機中のク ラ イ

アン ト数。一度に 1 つのク ライアン トだけがア

クテ ィブなラ イ タ ロ ッ クを保持できます。 各

フ ァ イルがそれ自身の ラ イ タ (および リ ー

ダー) ロ ッ クを保持します。

「Waits on Active Reader Lock」 カウンターも参照

してください。

Waits on File Locks 現在ファ イル ロ ッ クで待機中のクライアント数。

78

Page 95: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンスの分析

Pervasive PSQL MicroKernel Transactions

これらのカウンターは、 ト ランザクシ ョ ンに関するク ライアン ト アプリ ケーシ ョ ンの動作を理解するために役立

ちます。 たとえば、 変更が多く処理に長時間かかる少数のト ランザクシ ョ ンと、 短時間で処理が完了する多くの

ト ランザクシ ョ ンとでは動作が異なり ます。

『Btrieve API Guide』 の 「Begin Transaction (19 または 1019)」、 「End Transaction (20)」 および 「Abort Transaction(21)」、 また 『Pervasive PSQL Programmer's Guide』 の 「 ト ランザクシ ョナル インターフェイスの基礎」 も参照し

てください。

Waits on Page Buffers ページ バッファーが利用可能になるのを待機

中のク ライアン ト数。 も しページがリ クエス ト

に応じるためにアクセス可能でない場合は、 リ

クエス トは MicroKernel が 1 ページを提供する

こ とが可能になるまでブロ ッ ク します。

データベース エンジンが、 キャ ッシュの

ページ バッファーを使用できるかど うか

を示します。 この値を メモ リ キャ ッシ関

連のカウンターと一緒に使用して、キャ ッ

シュのサイズが作業負荷に対して適切か

ど うかを確認します。 キャ ッシュ サイズ

を大き くする と使用可能な総ページ数も

増えます。これによ り、ページ バッファー

への待機を減らすこ とができます。

キャ ッシュにページがない場合は、以下の

3 つ状況によってこの値が急増する可能

性があ り ます。

データ ファ イルが 近開かれた

データ ページへ初めてアクセスする、

またはそのデータ ページへアクセス

するこ とがほとんどない

メモ リ キャ ッシュが、頻繁にアクセス

および変更されるすべてのページを含

めるこ とができないほど小さい可能性

がある

1 番目と 2 番目の項目によって値が急増す

るのは、ファ イルへのアクセスが初めてで

あるため回避するこ とはできません。 3 番目の状況はキャ ッシュ サイズを大き くす

るこ とで回避できます。キャ ッシュがいっ

ぱいでキャ ッシュ失敗数が多くなる と、メ

モ リ キャ ッシュが小さすぎて、 頻繁にア

クセスおよび変更されるすべてのページ

を含める こ とができない可能性があ り ま

す。

「MicroKernel キャ ッシュ用のカウンター」

も参照してください。

Waits on Page Locks 現在ページ ロ ッ クで待機中のク ライアン ト数。 ク ラ イアン ト アプ リ ケーシ ョ ンの作業負

荷を調査します。

Waits on Page Reads ディ ス クからページ読み取り を待機中のク ラ

イアン ト数。 1 つのク ライアン トが既にページ

の読み取り処理を行なっている場合、 ほかのク

ラ イアン ト は処理中の読み取り が完了するま

で待機しなければなり ません。

同時に同じファ イルの同じページへの読

み取り を試みる ク ラ イアン ト数を測定し

ます。

Waits on Record Locks 現在レコード ロ ッ クで待機中のクライアント数。 ク ラ イアン ト アプ リ ケーシ ョ ンの作業負

荷を調査します。

表 18 MicroKernel ロ ッ クおよび待機用のカウン ター

カウン ター 説明 典型的な使用法

79

Page 96: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

Windows パフ ォーマンス モニ ターの使用

このセクシ ョ ンでは、 Windows パフォーマンス モニターの基本的な使用手順について説明し、 Pervasive PSQL パフォーマンス カウンターを使用できるよ うにします。 Windows パフォーマンス モニターの使用に関する詳細に

ついては、 Microsoft のドキュ メン ト を参照してください。

以下に示す手順は、 Pervasive PSQL のイ ンス ト ールによ って Pervasive PSQL パフ ォーマンス カウン ターが

Windows パフォーマンス モニターに登録されているこ とを前提と しています。

Pervasive PSQL データ コ レ ク ター セ ッ ト を表示する

1 Windows パフォーマンス モニターを起動します。 このユーティ リ ティの起動手順はオペレーティング シス

テムによって異なり ますが、 一般的には [コ ン ト ロール パネル] の [管理ツール] から起動するこ とができ

ます。 また、 [ファ イル名を指定して実行] ウ ィンド ウ ([ス ター ト ] メニューから [フ ァ イル名を指定し て

実行] を選択) で、 「perfmon」 と入力し [OK] をク リ ッ ク して起動するこ と もできます。

2 左ペインのツ リーから [パフォーマンス モニター] をク リ ッ ク し、 右ペイン上部のツールバーにあるプラス

記号 (+) をク リ ッ ク します。

3 [使用可能なカウンター] セクシ ョ ンのカウンター リ ス ト内で、 Pervasive PSQL データ コレクター セッ トへ

スクロールします。

表 19 MicroKernel ト ラ ンザクシ ョ ン用のカウン ター

カウン ター 説明 典型的な使用法

System Transactions in Progress 進行中のシステム ト ラン

ザク シ ョ ン数。 システム

ト ラ ンザクシ ョ ンはデー

タ フ ァ イルの変更を準備

し、その変更をファイルに

保持し続ける特殊なタ イ

プの ト ラ ンザクシ ョ ンで

す。

システム ト ランザクシ ョ ンの発生頻度が高すぎるまたは低

すぎるかど うかを判断するために役立ちます。

データベース エンジンは、 システム ト ランザクシ ョ ン中に

変更をデータ ファ イルへ書き込みます。 システム ト ランザ

クシ ョ ンが発生する頻度は、 「起動時間制限」 および 「オペ

レーシ ョ ン バンドル制限」 とい う 2 つのサーバー設定パラ

メーターによって決められるか、 あるいは L1 キャ ッシュの

空き領域が少ないこ とが影響します。

通常、システム ト ランザクシ ョ ンの実行頻度が高すぎたり低

すぎたりする とパフォーマンスに悪影響を及ぼします。 一般

的には、 1 秒あた りのページ書き込み数が増加し、 レコード

を変更する Btrieve オペレーシ ョ ン数は減少し、またアクティ

ブなラ イ タ ロ ッ クを待機する ク ラ イアン ト数は増加する可

能性があ り ます。 これは特定の作業負荷に対する理想的な間

隔を測定するための実験が必要となるこ と もあ り ます。

Transaction Commits/sec 1 秒あた り に実行された

コ ミ ッ ト数。

アプ リ ケーシ ョ ン ト ランザクシ ョ ンのコ ミ ッ ト数を測定し

ます。 『Btrieve API Guide』 の 「End Transaction (20)」 も参照

してください。

80

Page 97: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンスの分析

カウン ター セ ッ ト または個別のカウン ターをモニ ターへ追加する

1 以下の手順のいずれかを実行します。

a. カウンター セッ ト と してま とめて追加するには、 [使用可能なカウンター] リ ス トから希望のカウン

ター セッ ト項目をク リ ッ ク します。

b. カウンターを個別に追加するには、 そのカウンターが属するカウンター セッ ト を展開し (カウンター

セッ トの項目をダブルク リ ッ ク、 または右端の下矢印をク リ ッ ク)、 その中から対象のカウンターをク

リ ッ ク (複数ク リ ッ ク) します。

カウンターの説明を見るには、 [説明を表示する] オプシ ョ ンを選択して ください。

81

Page 98: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

2 [追加] をク リ ッ ク してから [OK] をク リ ッ ク します。

カウン ターのスケールを変更するには

1 作業対象のカウンターを右ク リ ッ ク し、 [プロパテ ィ ] をク リ ッ ク します。

2 [データ] タブで、 [スケール] ド ロ ップダウン リ ス トから希望の値をク リ ッ ク します。

同じグラフ上に 2 つ以上のカウンターを表示する場合に、 それらカウンターの出力数値の差が非常に大きい

場合は、 適切に表示されるよ う スケールを調整する必要があるかもしれません。 データがグラフ化される前

に、 カウンターの出力値にスケール値を掛けます。 たとえば、 1 番目のカウンターの出力値が 53 と 99、 2 番目のカウンターの出力値が 578 と 784 である と します。 1 番目のカウンターのスケールに 10 を設定するこ と

で、 530 および 990 と出力されるよ うにするこができます。 これによ り、 両カウンターのデータをよ り同等

(530、 990、 578 および 784) に見るこ とができます。

3 [OK] をク リ ッ ク します。

82

Page 99: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンスの分析

[スケール] フ ィールドの値は、元の値 (この例では 1) から新しい値 (この例では 10) に変更されています。

4 [グラフ] タブで、[垂直スケール] セクシ ョ ンの [ 大] および [ 小] フ ィールドに必要な値を設定します。

グラフ化される対象が非常に小さい (または非常に大きい) 場合は垂直スケールを変更するこ とができるの

で、 グラフが見やすくなり ます。 たとえば、 カウンターの出力値が常に 20 未満の場合は、垂直スケールの

大を 20、 小を 0 に変更するこ とができます。

5 [OK] をク リ ッ ク します。

83

Page 100: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

パフ ォーマンス チューニング

このセクシ ョ ンでは、 データベース初期接続および実行時オペレーシ ョ ンでパフォーマンスを 大にするための

一般的なヒン ト をいくつか提供します。 一般的なガイ ド ラインをいくつか示しますが、 特定のアプリ ケーシ ョ ン

のパフォーマンスは、 以下に挙げる要因だけに限らず、 非常に多くの要因によって変わり ます。

ネッ ト ワークの帯域幅および使用率

アプリ ケーシ ョ ンでのコーディング技法

使用可能な物理記憶域

使用可能なメモ リ

プロセッサの速度

アプリ ケーシ ョ ンでの使用パターン (大量の書き込み、大量の読み込み、 ト ランザクシ ョ ンの使用 / 不使用、

レコード サイズの大小、 複雑または単純なクエ リ、 ODBC、 Btrieve のみ、 など)

CPU サイ クルで競合する無関係なアプリ ケーシ ョ ン

データベース エンジン設定

ご覧のよ うに、 エンジンの設定は一定のアプリ ケーシ ョ ンの全体のパフォーマンスの中では比較的限定的な役割

を果たします。 さ らに、データベース エンジンは使用パターンに基づいてさまざまな リ ソースを動的に管理しま

す。データベース エンジン自体が、必要に応じ環境に合わせてチューニングします。以下のセクシ ョ ンで提供す

るのは、 有用なガイ ド ラ インにすぎず、 特定のレベルのパフォーマンスを保証するものではあ り ません。

パフ ォーマンスのボ ト ルネ ッ ク を見極める

Monitor ユーティ リ ティ を使用する と、 特定のデータベース エンジンの設定オプシ ョ ンに関連するパフォーマン

スのボ トルネッ クを明らかにするこ とができます。 オペレーティング システムの [ス ター ト ] メニューまたはア

プ リ画面から、 あるいは Pervasive PSQL Control Center の [ツール] メニューから Monitor を起動します。

Monitor の表示と設定オプシ ョ ン

Monitor のメニューにある 2 つの選択肢によって、 設定オプシ ョ ンに関連するパフォーマンスの値が表示されま

す。

MicroKernel |リ ソース使用状況

MicroKernel |通信

次の表に示すよ うに、 データベース エンジンは複数のサーバー設定オプシ ョ ンを動的に管理します。

表示および動作の解釈

Monitor に表示される情報を活用するこ とができます。 Monitor はリ ソースのタイプごとに 3 つの情報を表示しま

す。 たとえば、 リモート セッシ ョ ン総数には次のよ うに表示されます。

表 20 Monitor で表示される、 動的に管理されている設定

動的に管理される設定 リ ソース使用状況ウ ィ ン ド ウに

表示される値

通信統計情報ウ ィ ン ド ウに

表示される値

ファ イル数 ○

ハンドル数 ○

ク ライアン ト数 ○

ワーカ スレッ ド数 ○

リモート セッシ ョ ン総数 ○

84

Page 101: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス チューニング

現在値。 実際に動作している リモート セッシ ョ ンの現在の数。

ピーク値。 エンジンが開始されてから実際に使用された リモート セッシ ョ ンの 大数。

大値。 リモート セッシ ョ ンの使用可能な 大数。

リ ソースのピーク値と 大値が同じ場合には、 そのリ ソースの 大値を増やすよ うに設定プロパティを設定すれ

ば、データベース エンジンは、必要な場合に特定のリ ソースの追加のインスタンスを割り当てるこ とができます。

設定プロパテ ィ を変更する前に

以下のセクシ ョ ンでは、 次のこ とを前提と します。

1 Pervasive PSQL Control Center (PCC) が既に開いているこ と。

このタスクについての説明が必要な場合は、 『Pervasive PSQL User's Guide』 の 「Windows での PCC の起動」

を参照してください。

2 構成しよ う とするエンジンが既に登録済みであるこ と (可能な場合)。

このタスクについての説明が必要な場合は、 『Pervasive PSQL User's Guide』 の 「 リモート サーバー エンジン

を登録するには」 を参照して ください。

3 所定のエンジンを構成するには、 オペレーティング システムの適切な権限が必要です。

このタスクについての説明が必要な場合は、 『Pervasive PSQL User's Guide』 の 「データベース エンジンの管

理者権限の許可」 を参照して ください。

4 一部のエンジン設定については、 設定を変更した後にデータベース エンジンの再起動が必要になり ます。

初期接続時間を 小限にする

短接続時間の基礎を成す理論は、 3 つの必要条件を中心に展開します。 これらの必要条件についての要約は次

のよ うにな り、 詳細についてはその後で説明します。

既知の通信プロ ト コル。 ク ラ イアン ト またはサーバーが、 その環境でサポート されていないプロ ト コルを介

して接続を試行するために余計な時間を費やすこ とは望まし くあ り ません。 ク ライアン ト / サーバーが使用

できないプロ ト コルを削除するこ とによ り、ネッ ト ワーク コンポーネン トがそれらの使用を試行するこ とを

防げます。

既知のデータベース エンジンのロケーシ ョ ン。ク ライアン トが存在しないエンジンへの接続を試行するこ と

は望まし くあ り ません。 ワークグループのみのサポート、 またはサーバーのみのサポート を適切に指定する

こ とによ り、 ク ラ イアン トが存在しない接続でタイムアウ トになるこ とを防ぐこ とができます。 非共有およ

び共有データベースの両方がある環境では、ゲート ウェイの一貫性保守を使用して、データベース エンジン

がデータベース エンジンの実行されていないマシンを常に知るこ とができ、 これによ り、 これらのマシン上

のエンジンへの接続を試行せず、 別の方法でデータにアクセスします。

実行準備の整ったデータベース エンジン。休止しているエンジンが新しい接続リ クエス ト を受け取る と、 リ

ソースの再割り当ておよび実行時の状態に戻るのに時間がかかり ます。 接続スピードがサーバー上のリ ソー

ス使用量よ り重要な場合は、サーバー エンジンが使用されていないと きにも休止しないよ うにするこ とがで

きます。

ク ラ イアン ト のプロパテ ィ

ク ラ イアン トのプロパティの変更は、そのク ライアン ト マシンで行う必要があ り ます。設定を変更したい各ワー

クステーシ ョ ンでプロパティを変更する必要があ り ます。

ク ラ イアン ト 側の接続待ち時間を 小限にするには

1 Pervasive PSQL エクスプローラーで、ツ リーのローカル ク ラ イアン ト ノードを展開します (ノードの左の展

開アイコンをク リ ッ ク します)。

2 [MicroKernel ルーター] を右ク リ ッ ク します。

85

Page 102: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

3 [プロパテ ィ ー] をク リ ッ ク します。

4 プロパティ ツ リーで [通信プロ ト コル] をク リ ッ ク します。

5 [サポー ト プロ ト コル] で、 必要なプロ ト コルにはチェッ ク マークが入って選択されており、 使用されない

プロ ト コルのチェッ ク マークは外されているよ うにします。

6 [適用] をク リ ッ ク します。

これで、 ク ラ イアン トが、 使用されていないプロ ト コルと通信しよ う とするのを妨ぐこ とができるよ うにな

り ました。

7 プロパティ ツ リーで [アクセス] をク リ ッ ク します。

8 リモート サーバーまたはリモート ワークグループ エンジンのみを使用している場合は、 [ローカル

MicroKernel エンジンの使用] のチェッ ク マークを外すよ うにします (つま り、 オフに設定します)。

ローカル ワークグループ エンジンのみを使用している場合は、 [リ モー ト MicroKernel エンジンの使用] の

チェ ッ ク マークを外すよ うにします (つま り、 オフに設定します)。

ワークグループ エンジンを使用するこ と もあ り、 また、 サーバー エンジンまたはリモート ワークグループ

エンジンへ接続するこ と もある場合には、両方の設定をオンにして(チ ェ ッ ク を入れて)おく必要があ り ます。

このよ うな共有と非共有データの混合環境では、 各ク ライアン トで [ゲー ト ウェ イ一貫性保守] をオンに設

定しておく こ とができます。 この設定によって、データベース エンジンに接続するこ とができないすべての

マシンの名前のリ ス ト を強制的にク ライアン ト ソフ ト ウェアに保持させます。 ク ラ イアン ト ソフ ト ウェア

が、指定されたコンピューターにはエンジンが存在しないこ とを判定するには、すべてのネッ ト ワーク プロ

ト コルのリ クエス トがタイムアウ トになるまで待ちます。

Pervasive データベース エンジンを持たないサーバーにデータが格納されていて、 [リ モー ト MicroKernel エンジンの使用] の設定がオンの場合、 ク ラ イアン トはそのマシンにエンジンがないこ とを知るために少なく

と も 1 度はタイムアウ ト を待たなければなり ません。ゲート ウェイ一貫性保守を使用する と、アプリ ケーシ ョ

ンがそのデータに 初にアクセスしたと きのみにこのタイムアウ トが起きるよ うにできます。

メ モ ゲート ウェイ一貫性保守を使用する と、 ネッ ト ワーク ト ポロジを固定します。 後に、 リモー ト コン

ピューターにサーバーまたはワークグループ エンジンをインス トールする場合、各ク ライアン トで [ゲート

ウェイ一貫性保守] をオフにして、データベース エンジンを持たないコンピューターのリ ス トが削除される

よ うにする必要があ り ます (これによ り新しいデータベース エンジンに接続できるよ うにな り ます)。 [ゲー

ト ウェイ一貫性保守] に戻る と、 リ ス トは空になっています。

9 [OK] をク リ ッ ク します。

これで、 ク ライアン トが、使用されていないデータベース エンジンに接続しよ う とするのを防ぐこ とができ

ます。

サーバーのプロパテ ィ

サーバー側の接続待ち時間を 小限にするには

1 Pervasive PSQL エクスプローラーで、 ツ リーのエンジン ノードを展開します (ノードの左の展開アイコンを

ク リ ッ ク します)。

2 設定を指定するデータベース エンジンを右ク リ ッ ク します。

3 [プロパテ ィ ー] をク リ ッ ク します。

4 [サポー ト プロ ト コル] で、 必要なプロ ト コルにはチェッ ク マークが入って選択されており、 使用されない

プロ ト コルのチェッ ク マークは外されているよ うにします。

5 [適用] をク リ ッ ク します。

86

Page 103: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス チューニング

これで、 サーバーが、 使用されていないプロ ト コルと通信しよ う とするのを防ぐこ とができます。

メ モ サーバーの設定で選択したプロ ト コルの少なく と も 1 つが、 ク ラ イアン トの設定で選択されたものと

同一であるこ とを確認して ください。 サーバーと ク ライアン トは同じプロ ト コルを使用しなければ通信でき

ません。

6 プロパティ ツ リーで [メ モ リの使用] をク リ ッ ク します。

7 [起動時のリ ソース割当] をク リ ッ ク して、 値をオンに設定します (チ ェ ッ ク ボ ッ クスを選択)。

このオプシ ョ ンは、データベース エンジンが必要なすべてのメモ リ を割り当てるタイ ミ ングを、 初の接続

要求が入ってきたと きではな く、 起動時と します。 この値を選択する と、 よ り多くのメモ リが必要ですが、

ク ラ イアン トから見る と、 エンジンの処理速度が速くな り ます。

8 [非アクテ ィ ブ時、 小の状態に戻す] をオフに設定します (チェッ ク ボッ クスをク リ ア)。

このオプシ ョ ンは、データベース エンジンが非アクティブなと きにも、 リ ソースを解放してオペレーティン

グ システムに戻さないこ とを指定します。すべてのリ ソースは割り当てられたままで、次のク ライアン ト接

続に備えられます。

9 [OK] をク リ ッ ク します。

10 これらの変更を有効にするために、 [はい] をク リ ッ ク してエンジンを再起動します。

ラ ン タ イムのスループ ッ ト を 大にする

大スループッ ト を得るための原理は、 こ こに挙げる非常に多くの要因に依存します。 も重要な要因のいくつ

かを挙げます。

十分な物理メ モ リ。 ホス ト システムの RAM が少なすぎる場合、 異なるユーザーおよびプロセスが限られた

リ ソースを競い合う と、システムはその時間と CPU サイクルのほとんどを メモ リ とディ スクのスワップに費

やすこ とにな り ます。

十分な CPU 能力。 CPU が、 データ処理リ クエス トの流入量について行けなくなる と、 アプリ ケーシ ョ ンの

パフォーマンスが悪影響を受けます。

十分なネ ッ ト ワーク帯域幅。 ネッ ト ワークが遅かったり、 高いコ リジ ョ ン率によって悪影響を受けている場

合、データベース エンジンはデータ アクセスのリ クエス ト間で休止状態になり、各ク ライアン トでは低いパ

フォーマンスを示します。

小限のデ ィ スク I/O。 ディ スク I/O は、 メモ リ I/O よ り著し く速度低下を招きます。 十分なキャッシュを確保して、 できる限りディ スクにアクセスするこ とを避けます。

十分な リ ソース割り当て。 大きな物理メモ リが使用可能であっても、 データベース エンジンの設定プロパ

ティが人為的に低く設定されている場合には、 データベースのパフォーマンスは悪くな り ます。

結局、 適化されたパフォーマンスは、 ネッ ト ワークのボ トルネッ ク、 ディ スク I/O のボ トルネッ ク、 メモ リの

ボ トルネッ ク、および CPU のボ トルネッ クの間を綱渡りするこ とで実現しています。 このセクシ ョ ンでは、 メモ

リおよびディ スク I/O のボ トルネッ クを減少させる方法のガイ ド ラインをいくつか示します。

速いデ ィ スク と速い CPUハードウェアへの投入費用に対しパフォーマンス向上の効果を 大にしたければ、 既存のパフォーマンスの制約

を理解する必要があ り ます。 データベースが非常に大き くて、 データベースの主要な部分をキャ ッシュに入れる

ための十分なメモ リ を購入してインス トールするのが妥当でない場合、 パフォーマンスはディ スク I/O によって

制約を受けがちです。 これらの状況では、 速い RAID ディ スク配列に費用をかけてディ スク I/O のパフォーマン

スを 大にします。

さ らに、 アプリ ケーシ ョ ンが SRDE を使用していて一時ファイルを頻繁に作成する場合、 これらのファイルが作

成されるディ レク ト リが速いディ スク ド ラ イブであるこ とを望むでし ょ う。このディ レク ト リの場所および一時

87

Page 104: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

ファ イルを作成するクエ リのタイプの詳細については、 『SQL Engine Reference』 の 「テンポラ リ ファ イル」 を参

照してください。

データベースが小さ くてメモ リに全部またはほとんどがキャ ッシュできる場合、 速いディ スク配列の追加では著

しいパフォーマンス向上を得る可能性はあ り ません。 このよ うな状況下では、CPU をアップグレードするか CPUを追加するこ とによ り 高のパフォーマンス改善値が得られます。

十分な物理メ モ リ とデータベース キャ ッ シュ を確保する

Pervasive.SQL バージ ョ ン 8 以降を使用する場合、データベース エンジンは設定プロパティで設定したキャ ッ シュ

割当サイズのレベル 1 キャ ッシュに加え、 レベル 2 動的キャッシュを提供します。 MicroKernel の 大メ モ リ使

用量にゼロを設定してレベル 2 動的キャッシュを無効にしないとすれば、レベル 1 キャ ッシュ サイズを手動で調

整するのは、 以前のリ リースよ りずっと楽です。 これを念頭において、 このセクシ ョ ンでは、 データベース エン

ジンの 適なパフォーマンスのための十分なメモ リ を確実に利用できるよ うにする方法を説明します。

理想的には、データベース エンジンが十分なメモ リ を割り当てるこ とができ、管理する各データベースの完全な

コピーをキャ ッシュできれば、 ディ スク I/O を 大限避けるこ とができます。 1 つまたは複数のデータベース全

体をキャ ッシュするのは状況によって、 特にデータベースサイズが非常に大きい場合には、 明らかに実用的では

あ り ません。 さ らに、 既存のシステム リ ソースが通常の使用でも大きな負荷がかかっている場合、 パフォーマン

スを向上させる対策はマシンに RAM を追加するこ とだけです。

データベース エンジンは 初に起動されたと きに動的にレベル 1 キャ ッシュ値を選択します。 ただし、 この値は

使用可能なメモ リに基づいていて、 その環境で理想的なキャッシュ量になる とは限り ません。

データベースのメ モ リ キャ ッ シュの理想的なサイズを計算するには

1 まず、 データベース エンジンがサービスするすべてのデータベース ファ イルのサイズを合計します。

メ モ エンジンがサービスするデータベースが 2 つ以上あっても、 同時に使用されない場合は、 大きい方の

サイズだけを加算します。

たとえば、 サーバー上に 2 つのデータベースがあ り、 それらのサイズは以下のとおりで、 ユーザーが同時に

両方のデータベースにアクセスする と します。

これらすべてのファイルの合計は 1,430 MB です。

今得た値は、データベース エンジンがホス トするすべてのデータをキャ ッシュした場合に使用する メモリの

大量です。 この数値を MaxCache と呼びます。

キャ ッ シュ割当サイズに、 これよ り大きい値を指定しよ う とは考えないでし ょ う。 そ うするこ とは、 データ

ベース エンジンにまったく使用しないと思われる メモ リ を割り当てるこ とになるからです。実際の運用に妥

当なのは、キャ ッ シュ割当サイズに MaxCache の 20% から 70% を設定するこ とです。この範囲中で低い値は

読み取り処理の多いアプリ ケーシ ョ ンに 適で、高い値は書き込み処理の多いアプリ ケーシ ョ ンに 適です。

それは、 すべての書き込み / 更新操作はレベル 1 キャ ッシュで行われるからです。

データベース A データベース B

file1.mkd 223 MB Afile.mkd 675 MB

file2.mkd 54 MB Bfile.mkd 54 MB

file3.mkd 92 MB Cfile.mkd 318 MB

file4.mkd 14 MB

88

Page 105: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス チューニング

メ モ ファ イル ページは、 アクセスされたと きにのみデータベース キャ ッシュに書き込まれます。 したがっ

て、 データベース エンジンはデータベースのすべてのページがアクセスされるたびに MaxCache を必要と し

ます。 この評価方式によ り、 長期間安定した状態でデータベース処理を行う こ とができます。 データベース

エンジンを毎晩または毎週停止する場合、一定の稼働時間内にデータベース エンジンが、データベースのす

べてのページにアクセスするこ とはあま りあ り ません。

このよ うな状況の場合、 一定の稼動期間にアプリ ケーシ ョ ンが別個のページに平均何回アクセスするかを見

積も り、 ページ サイズを掛けて、 特定の稼動期間のよ り現実的な MaxCache の値を求めたいでし ょ う。

「MicroKernel キャ ッシュ用のカウンター」 も参照して ください。

Windows 32 ビッ ト オペレーティング システムでは、すべてのユーザー プロセスのメモリは 2GB に制限されてい

ます。MaxCache の計算値が 2 GB よ り大き く、データベース エンジンが 32 ビッ ト Windows オペレーティング システム上で実行される場合、 MaxCache に 2 GB の値を使用します。

必要な物理メ モ リ総量を決定するには

次の方程式を使用して、 データベース エンジンで必要と される総物理メモ リ量の近似値を割り出します。

データベースの 大メモ リ使用量 = L1 キャ ッシュサイズ + 内部割り当て + L2 キャ ッシュサイズ

各項目の説明は次のとおりです。

L1 キャ ッシュ サイズ : 「キャ ッシュ割当サイズ」

内部割り当て : L1 キャ ッシュの約 25% のサイズ

L2 キャ ッシュ サイズ : システムのメモ リ ロードに基づいて拡大および縮小する メモ リ容量

以下の点に注意してください。

L1 キャ ッシュは 「キャ ッシュ割当サイズ」 に基づく固定サイズです。 このサイズはデータベース操作に

よって拡大したり縮小したりするこ とはあ り ません。 アプリ ケーシ ョ ンで多数の書き込み操作を行う場

合は、 この L1 キャ ッシュをできるだけ増やしてください。

すべてのデータを L1 キャ ッシュに収容するこ とができれば、 高のパフォーマンスが得られます。 す

べてのデータが L1 キャ ッシュに収容されない場合は、 「キャ ッシュ割当サイズ」 および 「MicroKernelの 大メモ リ使用量」 を調整して妥当なシステム メモ リ量を使用します。

L2 キャ ッシュは、 システムのメモリ ロードに基づいて拡大および縮小します。 たとえば、 ほかのアプ

リ ケーシ ョ ンでよ り多くのメモ リが必要となった場合、L2 キャ ッシュは縮小します。十分なメモリが使

用可能であれば、 L2 キャ ッシュは上記の方程式に基づいて 大量に達します。 L2 キャ ッシュの拡大や

縮小はパフォーマンスに影響します。 縮小した場合は、 データ ページが L2 キャ ッシュから除去される

などの事象が起こ り ます。ディ スク ス ト レージからのデータ ページの読み取りは、キャ ッシュに保持さ

れたデータ ページの読み取り と比べ、 よ り時間がかかり ます。

L2 キャ ッシュには圧縮データ ページが含まれます(少ないスペースによ り多くのページが収ま り ます)。

L2 キャ ッシュからのページ アクセスは、L1 キャ ッシュからのページ アクセスよ り も時間がかかり ます

が、ディ スク ス ト レージからのページ アクセスに比べれば処理が速くなり ます。多数の読み取り操作を

実行するアプ リ ケーシ ョ ンで L2 キャ ッシュは役立ちますが、 すべての読み取りデータ ページを L1キャ ッシュに収容するこ とはできません。

デ ィ ス ク I/O を 小限にする

ディ スクからの読み込みおよびディ スクへの書き込みは、 メモ リに対するそれよ りずっと時間がかかり ます。 し

たがって、 パフォーマンスを 適化する 1 つの方法はディ スクの動作を 小限にするこ とです。

ディ スク I/O を 小化する上での重要な考慮点はデータの回復の可能性です。 ディ スク I/O は、 ト ランザクシ ョ

ン一貫性および回復可能性に対する直接的な交換条件です。 変更のログをディ スクに書き込むための停止なしで

データをメモ リに保持するほど、 データベースのパフォーマンスは速くな り ます。 一方、 変更のログをディ スク

89

Page 106: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

に書き込むための停止を行わずにデータをメモ リに保持するほど、 システムに異常をきたした場合に失うデータ

が増えます。

デ ィ スク I/O を減少させるには

1 前のサブセクシ ョ ン、 「十分な物理メモ リ とデータベース キャ ッシュを確保する」 で説明したよ うに、 も

重要な考慮点の 1 つは、ディ スクおよびキャ ッシュ間のデータ ページの頻繁なスワップを避けるために十分

なデータベース メモ リ キャ ッシュを確保するこ とです。詳細については、そのセクシ ョ ンを参照して くださ

い。

ディ スク I/O を減らす 良の方法の 1 つは、 動的なレベル 2 キャ ッシュを必ずオンにするこ とです。 レベル

2 キャ ッシュはキャ ッシュ要求がレベル 1 固定キャッシュの容量を超えたと き、 アプリ ケーシ ョ ンの使用量

の変化によってサイズを動的に調整して可能な限り多くのデータを メモ リに格納し、 それによ りディ スク I/O を減らします。 デフォルトで、 レベル 2 キャ ッシュはオンになっています。 データベース エンジンがレベ

ル 2 キャ ッシュを使用しているこ とを確認するには、 設定プロパティの [MicroKernel の 大メ モ リ使用量]

を調べます (「MicroKernel の 大メモ リ使用量」 を参照して ください)。

2 次に、 システム異常の場合に、 どれだけのロギングが必要で、 どれだけのデータベース オペレーシ ョ ンを

失ってもかまわないかを考慮します。 失ってもかまわない変更が多いほど、 パフォーマンスの向上を追求す

るこ とができます。

「アーカ イブ ログの使用」、 「 ト ラ ンザクシ ョ ン一貫性保守」、 および 「 ト ラ ンザクシ ョ ン ログ」 はすべてロ

グ ファ イルを必要と します。 デフォル トで、 アーカイブ ロギングはオフになっています。 定期的なバッ ク

アップを実行し、システム異常の時点のデータに回復する能力を必要とする場合にのみこれをオンにします。

ログの対象とするファ イルを指定する と きには、 完全にログを必要とするファ イルのみを指定するよ うにし

てください。 詳細については、 第 8 章の 「ログ、 バッ クアップおよび復元」 を参照してください。

デフォルトで、 ト ランザクシ ョ ン ログはオンになっています。 ト ランザクシ ョ ン ログをオフにする と、 パ

フォーマンスは若干向上しますが、複数ファイルの一貫性と ト ランザクシ ョ ン ア ト ミ シティは保証されませ

ん。 ト ランザクシ ョ ン ログをオフにする前に、 アプリ ケーシ ョ ンがこの機能を使用しないで実行できるかど

うかをベンダーに確認して ください。

注意 ト ランザクシ ョ ン ログが無効な場合、 複数ファイルのデータベースの整合性は保証されません。

デフォル ト で、 ト ランザクシ ョ ン一貫性保守はオフになっています。 アプ リ ケーシ ョ ンでシステム ク ラ ッ

シュが起きても ト ランザクシ ョ ン処理が完了するこ とを必要とする場合は、 この機能を有効にします。 ト ラ

ンザクシ ョ ン一貫性保守を使用する と、 パフォーマンスに も高いペナルティが課されますが、 引き換えに

完了した ト ランザクシ ョ ンの 高の安全性を引き出します。

3 いずれかのロギング機能をオンにしている場合、 エンジンがディ スクに書き込む前にどれだけのデータを保

存するかを指定するこ とができます。 変更データは繰り返し作成されるので、 この機能は重要です。 メモ リ

に構築するログ データの許容量が多いほど、 ディ スク書き込みの頻度は減り ます。

[ログ バッ フ ァー サイズ] 設定は、 エンジンがデータベース操作をログ ファ イルに書き出す前に、 メモ リに

格納しておくバイ ト数を指定します (サーバーのプロパティ ツ リーで [パフ ォーマンス チューニング] を

ク リ ッ ク します)。

システム異常の場合、 ログ バッファー内のデータは失われます。

4 ト ランザクシ ョ ン一貫性保守をオンにしている場合、 ディ スク上のログセグメン トの 大サイズを指定する

こ とができます。 小さいログ セグメン トは作成と閉じるこ とを繰り返すので、 大きなログ セグメン ト サイ

ズを指定する と、 若干パフォーマンスを向上させるこ とができます。

[ト ラ ンザク シ ョ ン ログ サイズ] 設定は、 ログ セグメン ト を閉じて新しいログ セグメン ト を開く までにロ

グ セグメン トに格納できる 大バイ ト数を指定します (サーバーのプロパティ ツ リーで [パフ ォーマンス

チューニング] をク リ ッ ク します)。

90

Page 107: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス チューニング

5 データベースの使用率が高い場合には、データ ファ イルが存在するのとは物理的に異なるボ リ ュームにログ

が保持されるよ うシステムを構成する必要があ り ます。 一般的に高負荷の下では、 単一ド ライブで I/O 帯域

幅を競う代わりに、ログ ファ イルへの書き込みとデータ ファ イルへの書き込みを別々のド ライブに分ける方

がパフォーマンスがよ くな り ます。 全体的なディ スク I/O は減少しませんが、 ロードはディ スク コン ト ロー

ラー間で効率よ く分散されます。

6 アプリ ケーシ ョ ンの使用方法がデータベース読み取り処理に重点を置いている場合、 [イ ンデ ッ クス バラ ン

スの実行] を調整するこ とによ り、 パフォーマンスを向上させるこ とができます (サーバーのプロパティ ツリーで [パフ ォーマンス チューニング] をク リ ッ ク します)。 インデッ クス バランスは通常のインデッ クス

ページのノード数を増やし、 読み込みオペレーシ ョ ンを速く します。 ただし、 Insert、 Update、 および Deleteオペレーシ ョ ンでは、エンジンは隣接ページにまたがってインデッ クス ノードのバランスをと るため、ディ

スク I/O 時間が余計に必要になるこ とがあ り ます。

7 MicroKernel および ODBC レベルの両方で ト レースを必ずオフにして ください。 ト レースは、 多くのディ ス

ク I/O を引き起こすため、 パフォーマンスを著し く低下させます。

ODBC の ト レースがオフであるこ とを確認するには、Pervasive PSQL Control Center から ODBC ア ド ミ ニス ト

レーターを起動します。 ODBC アド ミニス ト レーターで [ト レース] タブをク リ ッ ク します。 ト レースがオ

フの場合、 [ ト レースの開始] と表示されたボタンがあるので、 [キャ ンセル] をク リ ッ ク します。 ト レース

がオンの場合は、 [ト レースの停止] ボタンをク リ ッ ク し、 [OK] をク リ ッ ク します。

MicroKernel の ト レースがオフであるこ とを確認するには、 設定プロパティの [ト レース オペレーシ ョ ンの

実行] がオ フに設定されている (チェ ッ ク されていない) かを調べます (サーバーのプロパティ ツ リーで

[デバッ グ] をク リ ッ ク します)。

十分な リ ソース割り当てを確保する

データベース サーバー プラ ッ ト フォームに十分なメモ リおよび CPU パワーがある場合は、データベース エンジ

ンが複数クライアン トおよび複数データ ファ イルを も効果的にサービスできるよ う、ハード ウェア リ ソースを

大限利用できるよ うにしてください。

複数ク ラ イアン ト および複数フ ァ イルを扱えるよ う に設定するには

1 [I/O スレ ッ ド数]設定によ り、ファ イル操作の処理に利用できるスレッ ド数を指定するこ とができます(サー

バーのプロパティ ツ リーで [パフ ォーマンス チューニング] をク リ ッ ク します)。

ガイ ド ラ インと して、 この設定の値は、 アプリ ケーシ ョ ンが平均的に開く ファ イル数のおよそ 1/8 にします。

たとえば、 アプリ ケーシ ョ ンがたいてい 40 ファ イルを開く場合、 I/O スレッ ドに 5 を設定します。

Monitor を使用して、 メニューから [MicroKernel |リ ソースの使用状況] を選択します。 ウ ィンド ウが開き、

フ ァ イル数に開いているファイル数の現在値とピーク値が表示されています。 何度か現在値を記録して平均

表示度数を出すこ とができます。 その平均値に基づいて、 I/O スレッ ド数に適切な設定をしてください。

大きいシステム キャ ッ シュ

Windows オペレーティング システムによっては " 大きいシステム キャ ッシュ " 設定を提供しています。これを使

用すれば、 システムが空き メモ リ を利用して 近アクセスしたデータをキャ ッ スする こ とができます。 一部の

Windows サーバーではデフォルトでこの設定がオンになっています。 これは、 単純なファイル共有には都合がよ

く、 積極的にシステム キャ ッシュを増加させます。

ファ イル キャ ッシュ用のメモ リ を積極的に使用する と、 Pervasive PSQL をスワップ アウ トするこ とがあ り ます。

これによってデータベースに伴う多くのパフォーマンス問題が発生する可能性があ り ます。 " 大きなシステム

キャ ッシュ " をオンにし、 Pervasive PSQL の設定である [システム キャ ッ シュ] の設定もオン (明示的、 または

[MicroKernel の 大メ モ リ使用量] をゼロに設定) にする と、パフォーマンスが低下する可能性があ り ます。デー

タベースのパフォーマンスを向上させるために考えられる解決策は、 この " 大きなシステム キャ ッシュ " をオフ

にするこ とです。

91

Page 108: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

この設定をオフにするには、 (コン ト ロール パネルまたはマイ コンピューターのプロパティから) システム プロ

パティにアクセスします。 [詳細設定] タブをク リ ッ ク し、 [パフォーマンス] セクシ ョ ンの [設定] ボタンをク

リ ッ ク します。 [パフォーマンス オプシ ョ ン] ダイアログで [詳細設定] タブをク リ ッ ク します。

[メモ リの使用量] セクシ ョ ンで、 [システム キャ ッ シュ] オプシ ョ ンが選択されている場合は、 大きなシステム

キャ ッシュがオンになっています。 これをオフにするには、 [メモ リの使用量] のも う 1 つのオプシ ョ ンである "プログラム " を選択します。 [OK] をク リ ッ ク し、 開いていた一連のダイアログを閉じ、 オペレーティング シス

テムを再起動します。 このオペレーティング システムの設定を反映させるには再起動する必要があ り ます。

Xtreme I/O ド ラ イバーについては、 「システム要件」 も参照してください。

92

Page 109: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ハイパーバイザー製品でのパフ ォーマンス

ハイパーバイザー製品でのパフ ォーマンス

Pervasive PSQL Vx Server は、ハイパーバイザー製品や仮想マシン環境用のデータベース製品です。Pervasive PSQLVx Server で 高のパフォーマンスを実現するには、 以下の事項を順守して ください。

ハイパーバイザー ベンダーからのパフォーマンス 良実施例に従う こ と。

Pervasive PSQL Vx Server をホス トする仮想マシンに十分なメモ リ (RAM) が確保されているこ と。

ハイパーバイザー ホス トには十分な数の仮想 CPU があ り、同じマシン上の全仮想マシンの中で仮想 CPU の競合を 小化します。これによ り、Pervasive PSQL Vx Server を実行する仮想マシンとの競合が避けられます。

共通 (アフ ィニティ) 規則を使用する場合は、 必ずすべてのコアを同じソケッ トで実行するよ うにして くだ

さい。

Pervasive PSQL Vx Server データ ファ イルは高速な物理ス ト レージに存在し、 物理ス ト レージ デバイスに対

するスピンドルの競合およびコン ト ローラーの競合を 小化します。

93

Page 110: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

Xtreme I/O ド ラ イバー

Pervasive PSQL 32 ビッ ト サーバー製品 (Windows 版) には、 Xtreme I/O (XIO) と呼ばれるデータベース アクセ

ラレータがオプシ ョ ンで含まれています。 XIO の使用するための 低限のシステム要件を満たしていれば、 カス

タム インス トールを使用してこのオプシ ョ ンをインス トールできます。 XIO は Pervasive PSQL データ ファ イルの

ディ スク アクセスを加速させるこ とによってデータベースのパフォーマンスを向上させます。

XIO とデータベース エンジンは共同してパフォーマンスを高めます。 データ ファ イルが開かれる と、 エンジン

は XIO に通知します。 その時点から、XIO はそのデータ ファ イルへのディ スク アクセスを加速させます。 XIO は透過的に動作し、 ユーザーやアプリ ケーシ ョ ンの介入は必要あ り ません。

XIO では、 アクセスを加速したくないデータ ファ イルを除外するこ とができます。 除外を指定するのは簡単で、

テキス ト ファ イルを更新してデータベース エンジンを再起動するだけです。

以下のト ピッ クでは、 XIO の追加情報を提供します。

「留意点」

「システム要件」

「XIO メモ リ キャ ッシュ」

「よ く寄せられる質問」

「各種ユーティ リ ティ」

「除外ファイル」

「Pvsw.log のメ ッセージ」

「イベン ト ログ メ ッセージ」

「XIO の ト ラブルシューティング」

Pervasive の Web サイ トの Pervasive PSQL 技術白書で XIO の技術白書も参照して ください。 この白書では、 技術

的な説明をこのセクシ ョ ンよ り詳細に行っています。

留意点

一般的に、 XIO は、サイズの大きなデータ セッ ト を使用するほとんどのアプリ ケーシ ョ ンのパフォーマンスを向

上させます。 XIO の使用上の留意点を次の表に示します。

表 21 XIO 使用上の留意点

条件 説明

アプリ ケーシ ョ ンはデータに対してランダム アクセ

スを使用する (データ アクセスの傾向はシーケン

シャルではない)

このよ うなパターンは、データベース管理システムを使用するアプ

リ ケーシ ョ ンの特徴です。

データ セッ トは Windows システム キャ ッシュに完

全に収まらないほど大きい

Windows システム キャ ッシュのサイズと比べてデータ セッ ト サイ

ズが大きければ大きいほど、ディ スクの読み取り と書き込みはよ り

頻繁に行われます。 XIO は、 このよ うなと きに読み取り と書き込み

をキャ ッシュするこ とができます。

データが Windows システム キャ ッシュに完全に収まっている場

合、 XIO は読み取りや書き込み要求を処理しません。

アプ リ ケーシ ョ ンは頻繁にディ ス ク アクセス操作

(読み取りおよび書き込み) を実行する

ディ スク アクセスは、 多くの場合アプ リ ケーシ ョ ンの も速度の

遅い局面です。

既にサード パーティ製のディ スク入出力を加速する

プログラムを使用している

ディ スク I/O を加速するプログラムを複数使用するこ とは、お勧め

できません。 このよ う なプログラムは互いに干渉し、予測不能な結

果を生みます。

この理由によ り、XIO のみをディ スク I/O プログラムと して実行し

てください。

94

Page 111: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Xtreme I/O ド ラ イバー

システム要件

XIO は、 以下の要件を満たすプラ ッ ト フォームにのみインス トールするこ とができます。

Windows サーバー ク ラス 32 ビッ ト オペレーティング システム (XIO は 64 ビッ ト プラ ッ ト フォームではサ

ポート されません)。

Windows Server 2008 RTM (6.0.6001) または Service Pack 2 (SP2, 6.0.6002)、 またはそれ以上

Windows Server 2003 ( 新の Service Pack を適用)

CPU は Pentium III 以上である必要があ り ます。

低 4 GB 利用可能なシステム RAM。 XIO は実行時のメモ リ要件もチェッ クするので注意してください。実

行時でメモ リが 4 GB に満たない場合、 XIO は実行しません。

Pervasive PSQL データ ファ イルは、 NTFS ファ イル システムに存在する必要があ り ます。 FAT32 ファ イル システムのデータ ファ イルはサポート されません。 ファ イル システムの詳細についてはオペレーティング システムのマニュアルを参照して ください。

XIO をインス トールしたら、 システムの設定を以下のよ うにする必要があ り ます。

オペレーティング システムのラージ システム キャ ッシュはオフにする必要があ り ます。 つま り、 Windowsレジス ト リのラージ システム キャ ッシュ設定にゼロを設定して ください。 XIO がインス トールされている

場合は、 Pervasive PSQL インス トール プログラムがラージ システム キャ ッシュをオフに設定します。

Pervasive PSQL の L2 キャ ッシュはオフにする必要があ り ます。 つま り、 [MicroKernel の 大メモリ使用量]

にゼロを設定してください。 「MicroKernel の 大メモ リ使用量」 を参照してください。 XIO がインス トール

されている場合は、 Pervasive PSQL インス トール プログラムが L2 キャ ッシュをオフに設定します。

XIO メ モ リ キャ ッ シュ

XIO はブロ ッ ク レベルのキャ ッシングを使用しますが、 これはデータベース エンジンが速度向上を必要とする

特定のファイルに対してのみです。 XIO のメモ リ キャ ッシュは、 Pervasive PSQL データ ファ イル専用です。 たと

えば、 XIO を非 Pervasive ファ イルの汎用ディ スク アクセラレータ と して使用するこ とはできません。

XIO は、高度な追跡およびキャッシュ アルゴ リズムを使用してキャ ッシュを管理します。 このアルゴ リズムにつ

いては、 このセクシ ョ ンで説明する範囲を超えていますので、 解説しません。 ただし、 XIO のメモリの使用方法

を知るこ とによ り、 このド ラ イバーがどのよ うに機能するかをよ り よ く理解するこ とができます。

メ モ リの使用

XIO は拡張メモ リ、 標準メモ リ、 またはその両方を使用します。

拡張メ モ リ

XIO は、 拡張メモ リが使用可能な場合、 まず拡張メモ リ をキャ ッシュに使用します。 拡張メモ リは、 物理アドレ

ス拡張 (PAE) メモ リ と も呼ばれます。 拡張メモ リは、 4 GB を超えた RAM です。

XIO は、 大 MaxPAEMemMB レジス ト リに指定された値まで、オペレーティング システムが許す限り大きな拡

張メモ リ を予約します。 「レジス ト リ設定」 を参照して ください。 XIO は拡張メモ リ をシステムがシャ ッ ト ダウ

ンするまで保持します。 つま り、 キャ ッシュ全体が拡張メモ リに保持されれば、 キャ ッシュ サイズは変化せず、

縮小または拡張します。

標準メ モ リ

拡張メモ リが存在しない場合、XIO は標準メモ リからキャ ッシュを取得します。標準メモ リは、4 GB までの RAMです。標準メモ リでは、 XIO はデータベース エンジンのメモ リ要求とシステム全体のメモ リ要求のバランスをと

り ます。 XIO のキャッシュは、 ほかのシステム リ ソースがメモ リ を取得および開放するよ うに、縮小および拡張

します。

95

Page 112: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

MaxCacheSizeMB のレジス ト リ値が -1 (デフォルト ) の場合、 XIO は現在のシステムの状態に基づいてキャ ッ

シュ サイズを増加または減少させて調整を行います。この場合の 大キャッシュ サイズは、物理メモリのおよそ

80% です。

MaxCacheSizeMB が数メガバイ トに設定されている場合、 XIO はオペレーティング システムが許可するその値ま

でしか拡張しません。

MaxCacheSizeMB にインス トールされている メモ リ を超えた値を設定する と、Windows イベン ト ログにエラーが

書き出され、 ド ラ イバーは読み込まれません。 「イベン ト ログ メ ッセージ」 を参照して ください。

MaxCacheSizeMB は、 標準メモ リ と PAE メモ リ (存在する場合) との組み合わせに基づいたキャッシュの 大サ

イズです。キャ ッシュは、メモ リがどこにあろ う と MaxCacheSizeMB の値を超えて大き くなるこ とはできません。

「レジス ト リ設定」 を参照して ください。

メ モ リの組み合わせ

拡張メモ リが存在してもオペレーティング システムが MaxPAEMemMB に指定された値のメモ リ を割り当てられ

ない場合、 XIO は拡張メモ リ と標準メモ リ を組み合わせて使用します。 XIO は、 4 GB に満たない標準メモリ を使

用する前に、 オペレーティング システムから利用可能な 4 GB を超える拡張メモ リ を使用して MaxCacheSizeMB設定を実現します。 標準メモ リに存在する XIO キャ ッシュは必要に応じて縮小および拡大します。

レジス ト リ設定

Windows のレジス ト リには XIO の設定パラ メーターが含まれています。パラ メーターの大多数は予約されていて

変更できません。

ただし、 MaxCacheSizeMB および MaxPAEMemMB レジス ト リ エン ト リは設定可能です。

注意 上の表に挙げられている以外の XIO レジス ト リ エン ト リは変更し ないで く だ さい。予測不能な結果を

招きます。

レジス ト リの編集は高度な操作です。誤って編集する と、オペレーティング システムが起動しな くなる恐れ

があ り ます。 必要であれば、 経験豊富な技術者に依頼して編集を行っても らって ください。

レジス ト リ キー 1 用途 有効な値 説明

MaxCacheSizeMB XIO が使用する物理メ モ リ の

大量を メガバイ ト (MB) で

指定します。

-1 または使用する値

を MB 単位で指定し

ます。

デフォルト : -1

この設定は、 PAE メモ リが存在する場合

には、 標準メモ リ と PAE メモ リ を組み合

わせた 大値です。

-1 を指定する と、 XIO は必要に応じ標準

メモ リ内でキャ ッシュを動的に増大また

は縮小します。

Pervasive では MaxCacheSizeMB に -1 を設

定して XIO がキャ ッシュを動的に調整で

きるよ うにするこ とを推奨します。

MaxPAEMemMB XIO がキャ ッ シュに使用する

物理アドレス拡張 (PAE) メモ

リ の 大値を メ ガバイ ト 単位

で指定します。

0 または使用する値

を MB 単位で指定し

ます。

デフォルト : 8192

PAE メモ リは、4 GB を超えた RAM です。

1HKEY_LOCAL_MACHINE\SOFTWARE\PERVASIVE SOFTWARE\XIO

96

Page 113: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Xtreme I/O ド ラ イバー

よ く 寄せられる質問

このセクシ ョ ンでは、 XIO に関する一般的な質問について説明します。

質問 回答

XIO を ク ラ ス ター環境で使用

できますか?

いいえ。 Pervasive PSQL をク ラスター環境で使用する場合は、 Xtreme I/O をインス トー

ルしてはいけません。 マシンがフェールオーバーによってオンラインになり、 共有記憶

域をアクセスできないままにしておく と、 ノードに XIO がインス トールされている場

合、 そのノードがハングするこ とがあ り ます。

そのため、 Pervasive PSQL インス トールの [セッ ト アップ タイプ] ダイアログでは、 [カ

スタム] を選択して ください。 使用可能なインス トール オプシ ョ ン と して [PervasiveXtreme I/O] が表示される場合は、 そのオプシ ョ ンをク リ ッ ク して、 [この機能は使用で

きな くな り ます。] を選択します。

Pervasive PSQL インス トールの残り を完了します。 これ以上のカスタマイズは必要あ り

ません。

XIO を仮想マシンで使用でき

ますか?

いいえ。 Pervasive PSQL を仮想マシンで使用する場合は、 Xtreme I/O をインス トールし

てはいけません。

Pervasive PSQL Vx Server には

XIO が含まれていますか?

いいえ。 Pervasive PSQL Vx Server は物理マシンにインス トールする こ とはできますが、

これは主に仮想環境向けに用いられるものです。 XIO は仮想環境で使用できないので、

Pervasive PSQL Vx Server には含まれていません。

XIO がインス トールされてい

るかど うかは、ど う したらわか

り ますか?

pvsw.log ファ イルの XIO メ ッセージをチェッ ク して ください。 「Pvsw.log のメ ッセージ」

を参照して ください。

あるいは、 コマンド プロンプ トで xiomgr とい う コマンドを実行します。 オペレーティ

ング システムが xiomgr のヘルプ情報を表示すれば、 XIO ド ラ イバーがインス トールさ

れています。

XIO が有効かど うかは、ど う し

たらわかり ますか?

xiomgr -query のよ うに、 xiomgr ユーティ リティに "query" オプシ ョ ンを付けて実行しま

す。

このユーティ リティは XIO の現在の状態 (有効または無効) および実行中かど うかを表

示します。 「Xiomgr」 を参照してください。

さ らに、 pvsw.log ファ イルの XIO メ ッセージをチェッ クするこ とができます。 「Pvsw.logのメ ッセージ」 を参照してください。

XIO が実行中かど うかは、ど う

したらわかり ますか?

XIO キャ ッシュがメモ リ をど

れだけ使用しているかは、ど う

したらわかり ますか?

Xiostats ユーティ リ ティ を実行します。

" キャ ッシュ サイズ " 統計情報に XIO キャ ッシュのサイズがメガバイ ト (MB) 単位で

示されます。 「Xiostats 統計情報」 も参照してください。

XIO キャ ッシュがどれく らい

有効かは、ど う したらわかり ま

すか?

一般的に、 " 読み取り ヒ ッ ト率 " 統計情報のパーセンテージをチェッ ク します。 パーセ

ンテージが大きいほど XIO はキャ ッシュを多く使用しており、 XIO はよ り効果的にパ

フォーマンスを向上させています。

よ り範囲を狭めるには、" キャ ッシュ可能な IO %" 統計情報を調べるこ と もできます。こ

れは、 Pervasive PSQL データのみに関連するすべての I/O リ クエス トのパーセンテージ

を示します。高いパーセンテージは、ディ スク アクセス リ クエス トの大多数が PervasivePSQL データに関連しているこ とを示します。

「Xiostats 統計情報」 も参照してください。

97

Page 114: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

各種ユーテ ィ リ テ ィ

XIO は、 ド ライバーに関する 2 種類のユーティ リ ティ xiomgr と xiostats を提供します。

Xiomgr

適用

説明

Xiomgr は XIO ド ラ イバーを管理し ます。

概要

xiomgr -<query | start | stop | enable | disable | help>

オプシ ョ ン

XIO キャ ッシュにどのフ ァ イ

ルがキャ ッシュ されているか

は、ど う したらわかり ますか?

Xiostats ユーティ リ ティ を実行します。[表示|開いているファイル]をク リ ッ ク します。

「機能の全容」 も参照して ください。

" 開いているキャ ッシュ フ ァ

イル " 統計情報の値は、自分で

開いた と思っているフ ァ イル

数よ り多かった り少なかった

りするのはなぜですか?

データベース エンジンはファ イルを開いて閉じるこ とがあ り ます。 このよ うな場合は "開いているキャ ッシュ ファ イル " にはカウン ト されません。 4 つにセグメン ト化された

Pervasive PSQL ファ イルを開く と、 1 つだけではなく 4 つのファ イルが開いている と表

示されます。 データベース エンジンはセグメン ト ごとに Open オペレーシ ョ ンを実行し

ます。 システム ファ イルおよびデータ辞書ファ イルも開かれ、 これらも合計に含まれま

す。

「Xiostats 統計情報」 も参照してください。

Windows (32 ビ ッ ト ) Linux ク ラ イアン ト サーバー データベース エンジン

Yes No No Yes

-query XIO ド ラ イバーの現在の状態を報告します。 たとえば、 実行中である とか、 有効であるな

どです。

-start XIO ド ライバーを起動します。

xiomgr -stop コマンドの後で実行する場合は、まず、データベース エンジンが開始している

こ とを確認して ください。 「XIO の ト ラブルシューティング」 も参照してください。

-stop XIO ド ライバーを停止します。

まず、データベース エンジン サービスを停止する必要があ り ます。「XIO の ト ラブルシュー

ティング」 も参照して ください。

-enable オペレーティング システムが起動したと きに XIO ド ラ イバーを起動します。

enable オプシ ョ ンは、 次にオペレーティング システムを起動したと きに有効になり ます。

-disable オペレーティング システムが起動したと きに XIO ド ラ イバーが起動しないよ うにします。

disable オプシ ョ ンは、 次にオペレーティング システムを起動したと きに有効になり ます。

-help ユーティ リ ティの使用法に関する情報を表示します。

質問 回答

98

Page 115: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Xtreme I/O ド ラ イバー

Xiostats

このユーティ リ ティは XIO キャ ッシュに関する統計情報を表示します。

Xiostats は、本来、統計情報とグラフ化データの調査を十分に理解しているユーザー向けの高度なユーティ リ ティ

です。 そ うであっても、 このユーティ リ テ ィではいくつかの基本的な統計情報を提供します。 Xiostats に関する

一般的なヒン トについては、 「よ く寄せられる質問」 を参照して ください。

統計情報

Xiostats の主な目的は、XIO および XIO キャ ッシュに関する統計情報を提供するこ とです。この情報は、このユー

ティ リ ティのメ イン ウ ィンド ウにマ ト リ ッ クス と して表示されます。 次の表では統計情報について説明します。

表 22 Xiostats 統計情報

統計情報 説明

時間 システム日付および時刻。

経過秒数 Xiostats が起動されてから経過した秒数。つま り、 どれだけの時間実行されたかを秒数

で示します。

物理メモ リ MB そのマシンの拡張メモ リ を含む物理メモ リの合計の概算。

キャ ッシュ サイズ XIO キャ ッシュのサイズ (メガバイ ト単位)。 この値は、 キャ ッシュがどのメモ リ を使

用するかによって異なり ます。 「メモ リの使用」 を参照して ください。

開いているキャ ッシュ ファイル 開いていて、 実際にキャ ッシュされている (ファ イルが読み取られているかまたは書

き込まれている) Pervasive PSQL ファイルの数。

開いているキャ ッシュ ファ イルの合計数は、 自分で開いている と思っている数と異な

る こ とがあ り ます。 1 つのファ イルを開く こ とによって、 複数の物理ファ イルが開か

れるこ とがあ り ます。 たとえば、 4 つにセグメン ト化された Pervasive PSQL ファ イル

では、 1 つだけではな く 4 つのファ イルが開いている と表示されます。 データベース

エンジンはセグメン ト ごとに Open オペレーシ ョ ンを実行します。

圧縮率 キャ ッシュによって実行されるデータ圧縮の量。

たとえば、 圧縮率が 8 (8 が 1 になるこ とを意味します) である と仮定します。 キャ ッ

シュのサイズが 1 GB で圧縮率が 8 の場合、 キャ ッシュには 8 GB のデータが格納され

ます。

この比率は、 データの特性によって異な り ます。 データによっては圧縮可能ですが、

圧縮できないものもあ り ます。

読み取り ヒ ッ ト率 " ヒ ッ ト " は、XIO が物理ディ スクではなくキャ ッシュから読み取るデータを対象と し

ます。

一般的に、 このパーセンテージが高いほど XIO が効率的に実行されています。

メモ:データが全部 Windows システム キャ ッシュに収まっている場合、XIO は読み取

り要求を処理しません。

ダーティ バッファー % キャ ッシュに既に書き込まれて、 まだディ スクには書き込まれていないキャ ッシュ内

のデータ量。

キャ ッシュ可能な IO % Pervasive PSQL データのみに関連するすべての I/O リ クエス トのパーセンテージ (XIOは、 すべてのディ スク アクセス要求を認識しますが、 Pervasive PSQL データに関連す

るもののみに動作します)。

サーバーが Pervasive PSQL 専用である場合、 キャ ッシュ可能な IO % は高いパーセン

テージを示します。 これは、 ディ スク アクセス要求の大多数が Pervasive PSQL データ

に関連するためです。

99

Page 116: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

機能の全容

次の表は、 統計情報のレポート をサポートする本ユーティ リ ティの機能の簡単な説明です。

除外フ ァ イル

XIO には xioexclude.lst というテキス ト ファ イルが含まれており、これを使用してアクセスを加速したくないデー

タ ファ イルを指定するこ とができます。 一般的には、除外ファイルを追加する必要はあ り ません。除外ファイル

を選択する場合には、 以下の手順に従います。

1 このファ イルをテキス ト エディ ターで開きます。

デフォルトで、このファ イルは %allusersprofile% の下の Pervasive Software\PSQL にあ り ます。デフォルトで、

オペレーティング システムは %allusersprofile% の下のいくつかのフォルダーを隠しフォルダーにするため、

隠しファ イルを検索するよ うにして ください。

キャッシュ読み取りバイト数 キャ ッシュから読み込まれたバイ ト数。

キャッシュ書き込みバイト数 キャ ッシュに書き込まれたバイ ト数。

機能 説明

オプシ ョ ン オプシ ョ ン ダイアログを使用する と、 Xiostats がキャ ッシュをポーリ ングする間隔など、 ユー

ティ リティの機能の一定の部分をカスタマイズするこ とができます。[オプシ ョ ン] コマンドは、

[ファ イル] メニューから使用できます。

パラ メーター パラ メーター一覧は、 Xiostats のさまざまなレジス ト リ設定を示します。 これらの設定の 2 つだ

けがカスタマイズできます。 「レジス ト リ設定」 を参照してください。

「レジス ト リ設定」 に挙げられている 2 つ以外の XIO レジス ト リ エン ト リは変更しないでくだ

さい。 予測不能な結果を招きます。

[パラ メーター] コマンドは、 [表示] メニューから使用できます。

開いているファ イル数 開いているファ イルの一覧は、 現在どのファ イルが開かれ、 キャ ッシュ されているかを表示す

るのに便利です。

[開いているファ イル] コマンドは、 [表示] メニューから使用できます。

パフォーマンス [パフォーマンス] コマンドを使用する と、 PerfMon ユーティ リティのカウンターに簡単にアク

セスできます。 PerfMon ユーティ リ ティは、 Windows オペレーティング システムの一部と して

含まれています。 このカウンターの使用については、 そのマニュアルを参照して ください。

グラフ [グラフ] コマンドを使用する と、統計情報をグラフ化してさまざまな方法で表示するこ とがで

きます。 データは、 変数、 微分、 積分のグラフと して表示するこ とができます。

Xiostats ログに保存された統計情報データ もグラフ化する こ とができます。 Xiostats のログは、

スプレ ッ ドシー ト プログラムで表示可能なカンマ区切り (CSV) 形式で保存されたテキス ト

ファ イルです。

[ファ イル] メニューのコマンドを使用して、 ログ ファ イル (CSV ファ イル) を開いた り閉じ

た り します。

ログ ファイル ログ ファイル コマンドを使用する と、統計情報のログへの記録を開始および停止したり、 ログ

のスケジュールを設定するこ とができます。

Xiostats のログは、 スプレッ ドシート プログラムで表示可能なカンマ区切り (CSV) 形式で保存

されたテキス ト ファイルです。

[ファ イル] メニューのコマンドを使用して、 ログ ファ イル (CSV ファ イル) を開いた り閉じ

た り します。

メモ : ログ間隔が非常に短い場合、 ログ ファ イルのサイズは短期間で非常に大き くな り ます。

表 22 Xiostats 統計情報

統計情報 説明

100

Page 117: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Xtreme I/O ド ラ イバー

2 xioexclude.lst の指示に従ってファイル名を追加します。

3 オペレーティング システムを再起動します。

Pvsw.log のメ ッ セージ

データベース エンジンのインス トール時に、XIO がインス トールされ、データベース エンジンが XIO キャ ッシュ

にファイルをキャ ッシュするこ とができれば pvsw.log ファ イルにメ ッセージが書き込まれます。このログ ファ イ

ルには次のよ うなメ ッセージが書き込まれます。

MicroKernel は XIO キャ ッシュ ド ラ イバーへのアクティブな リ ンケージを確保しました。

メ モ XIO がインス トールされているが、pvsw.log にこのメ ッセージが含まれていない場合は、データベース

エンジンが XIO と通信するこ とができず、 ファ イルはキャ ッシュ されません。 これを修正するための処置

は、 ト ランザクシ ョナル サービスをいったん停止して再開するこ とです。 『Pervasive PSQL User's Guide』 の

「Windows サーバー上でのサーバー エンジンの起動と停止」 を参照してください。 サービスを再開したこ と

によって、 データベース エンジンが XIO と通信できるよ うになる と、 このメ ッセージが pvsw.log に書き込

まれます。

101

Page 118: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

イベン ト ログ メ ッ セージ

XIO は、 次の表に示すよ うにエラー メ ッセージを Windows イベン ト ログに書き込みます。

表 23 Xiostats イベン ト ログ メ ッ セージ

メ ッ セージ 対処方法

XIO started. 不要。

XIO did not shut down properly. このエラーが連続して発生する場合は、 Pervasive のテクニカル サポートにお問い合わせください。

XIO failed to load because a memory allocation of %2 bytesfor %3 failed.

インス トールされているシステム メモ リ量と、「MaxCacheSizeMB」および 「MaxPAEMemMB」 の設定を確認して ください。

XIO detected insufficient RAM (%2MB).It requires %3MBto operate.

システム RAM を 低限必要な 2 ギガバイ ト (GB) に増やして く

ださい。

XIO encountered an unrecoverable system error. %2. Pervasive のテクニカル サポートにお問い合わせください。

XIO detected the parameter %2 has an invalid value %3.

The legal range is %4 to %5.

The current setting has been coerced to the default value%6.

パラ メーターを正しい範囲内の値に設定して ください。

NT OS Version %2.%3 is not a Server Build.

XIO detected the parameter %2 has an invalid value %3.

The legal range is %4 to %5.

The current setting has been coerced to the minimum value%6.

パラ メーターを正しい範囲内の値に設定して ください。

XIO detected that the installed memory size changed from%2MB to %3MB.

インス トールされている メモ リ を調べ、 低量の 2GB が使用可能

であるこ とを確認してください。

The maximum cache size parameter (%4MB) may needadjustment.

「MaxCacheSizeMB」 の設定を調べ、 システム メモ リ とデータ セッ

トの量に基づいて必要な量に調整して ください。

102

Page 119: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Xtreme I/O ド ラ イバー

XIO のト ラブルシューティ ング

このセクシ ョ ンでは、 XIO の使用中に問題が発生した場合の対処方法について提案します。

表 24 XIO ト ラブルシューテ ィ ング

状況 説明

XIO が有効であるのに、 システム起動

時にロード されない。

1. オペレーティング システムをセーフ モード (一般的にシステム起動時に F8キーを押す) で起動します。

2. XIO ド ラ イバーが読み込まれないよ うに、 コマン ド プロンプ ト で xiomgr -disable という コマンドを実行します。

デフォルトで、 xiomgr は、 Program Files ディ レク ト リの下の Pervasive ツ リーの

PSQL\bin\ ディ レ ク ト リ にあ り ます。 『Getting Started with Pervasive PSQL』 の

「Pervasive PSQL ファイルはどこにインス トールされますか?」 も参照してくだ

さい。

3. オペレーティング システムを再起動する と、 XIO を開始せずにロード されま

す。

XIO キャ ッシュがデータベース エンジ

ンの読み書きに応答しない。

この状況は、データベース エンジンおよび XIO キャ ッシュ間の通信がリ ンク さ

れな くなった場合に起こ り ます。 以下の手順を使用して、 データベース エンジ

ンと XIO キャ ッシュ間の通信を再確立してください。

1. Pervasive PSQL サービスを停止します。

2. Xiomgr -stop コマンドを実行します。

3. Xiomgr -start コマンドを実行します。

4. Pervasive PSQL サービスを開始します。

リ ンクの切断は、以下のよ うに間違った順序で動作を行った場合に発生します。

A. Pervasive PSQL サービスを停止する。

B. Xiomgr -stop コマンドを実行する。

C. Pervasive PSQL サービスを開始する。

D. Xiomgr -start コマンドを実行する。

問題は、 手順 C と D の順序が逆であるこ とです。 Xiomgr -stop コマンドに続い

て、 まず Xiomgr -start コマンドを実行し、 次に Pervasive PSQL サービスを開始

する必要があ り ます。

103

Page 120: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

パフ ォーマンス

104

Page 121: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

6

参照整合性の設定

参照整合性の構造について

参照整合性 (RI) は、 テーブルと関連するデータの同期を確実にするためにデータベースに作成するこ とのでき

る、 チェッ クおよびバランスのシステムです。

「参照整合性 (RI) の概念」

「主キーの設定」

「外部キーの設定」

「Btrieve およびリ レーシ ョナル制約間の相互作用」

105

Page 122: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

参照整合性の設定

参照整合性 (RI) の概念

参照整合性 (RI) を使用する と、 同一のフ ィールド値がそのテーブルまたはほかのテーブルに存在するかど うか

に基づき、 データの変更または、 変更や追加や削除の禁止を行う こ とができます。

定義

いくつかの重要な用語を明確にするこ とによ り、 RI がよ く理解できます。

規則

規則は、原因とその効果の単純なステート メン トで、データベースに定義された RI システムによって実行されま

す。

例 A

たとえば、 削除規則によって、 主キーを持つレコードが削除されたと きに、 外部キーを持つレコードに何が起き

るかが次のよ うに定義されている と します。 「'Bhargava Building' を含むレコードが削除されたと き、 そのレコー

ドを参照するテーブル A のすべての行は削除される。」

削除規則は、 主キー値を参照する外部キーがある場合、 その主キー値を含む行が削除されるのを禁止するこ と も

できます。

例 B

更新規則は、 ユーザーがレコードを更新またはレコードを追加しよ う と したと きに、 外部キーを含むレコードに

何が起こるかを定義したもので、 次のよ う なものです。 「ユーザーがテーブル B に新しいレコードを追加しよ う

と したと き、 ビル名がテーブル C に存在しなければ、 追加するこ とを拒否する。」

主キー

主キーは規則が従属する 1 つまたは複数の列です。 どのテーブルでも主キーは 1 つだけ許可されており、 重複値

は許可されていません。 更新規則では、 主キーというのは、 レコードの更新または追加が許可されるかど うかを

判断するために、 更新または追加した列と比較される列のこ とです。

「例 A」 では、 "Bhargava Building" を含む列が主キーです。

「例 B」 では、 テーブル C のビル名を含む列が主キーです。

外部キー

外部キーは、 処理方法を決定するために主キーと比較される 1 つまたは複数の列です。

前述の 「例 A」 では、 テーブル A の "Bhargava Building" を含む列が主キーです。

前述の 「例 B」 では、 テーブル B のビル名を含む列が外部キーです。

カスケー ド

カスケー ド規則は、 データベースがある操作が起こるこ とを許可し、 ほかのテーブルまたは行を 初の操作と同

期をと るよ うに変更するこ とによって RI を確実にする規則です。たとえば、カスケー ド削除規則が定義されてい

る と、主キー テーブルでのレコードの削除によ り、データベースは削除された行の主キーと同じ値の外部キーを

持つデータベース中のすべての行を検索して削除します。

制限

制限規則は、 データベースに既に存在する値に基づく操作を許可するかど うかをデータベースが決定するのに使

用する規則です。 たとえば、 更新制限規則が定義されている場合、 外部キーを含む行をテーブルに追加しよ う と

106

Page 123: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

参照整合性 (RI) の概念

する と、データベース エンジンは外部キー フ ィールドの値を主キーの値と比較します。同じ値の主キーを持つ行

が存在しない場合、 その行を外部キー テーブルに追加するこ とは許可されません。

キーおよび規則について

このセクシ ョ ンでは、 主キーおよび外部キーの概念についてよ り詳細に説明します。

上記の例では、 テーブル A の student_ID (A.student_ID) は IDENTITY データ型で、 2 つの行が同じ値を

持つこ とを許可していません。 学生はそれぞれユニークな ID 番号を持ちます。 student_ID をテーブル A の主

キーと して定義します。

それから、 テーブル B の stud_ID (B.stud_ID) を A.student_ID を参照する外部キーと して定義します。

stud_ID のデータ型は、 IDENTITY と比較できる INTEGER などのデータ型である必要があ り ます。 主キーと外

部キーのデータ型には互換性が必要です。 参照整合性を確実にするために、 必要なだけの外部キーをいくつでも

設定するこ とができます。 複数の外部キーは同一の主キーを参照するこ とができます。

主キーを持つテーブルは親テーブルと呼ばれ、外部キーを持つテーブルは子テーブルと呼ばれます。いったんキー

が定義される と、表 26 に示すよ うに選択できる動作の範囲が限られます。必要なだけ規則を定義するこ とができ

ますが、タイプごとには 1 つしか定義できません。たとえば、削除制限規則を定義した場合、同じキーにカスケー

ド削除規則を定義するこ とはできません。 これは、 2 つの動作が相互に排他的であるためです。

更新制限

前述の例で説明する と、 更新制限規則を設定するこ とによ り、 新規または更新された行の B.stud_ID の値は必

ず A.student_ID にも存在しているこ とが保証されます。 テーブル B に行を追加できるよ うにするには、 その

前に、 テーブル A に行があるこ とが必要です。 言い方を変える と、 子行を作成する前に少なく と も 1 つの親行を

作成する必要があ り ます。

削除制限

例では、削除制限規則を設定するこ とによ り、 テーブル A の行は、 テーブル B のいずれかの行がその行を参照し

ている場合は削除できないこ とが保証されます。 Name の値が "John" である行は、 John の student_ID がテーブル

B で参照されているため、 削除できません。

John の student_ID を参照するテーブル B の行がすべて削除されたら、 テーブル A から John の行を削除するこ と

ができます。

表 25 主キーおよび外部キー

テーブル A テーブル B

student_ID Name stud_ID Class

20543 John 20543 ENG -101

20577 Mary 20543 AST-202

表 26 RI 規則の選択

行いたい動作 ... 定義する規則

B.stud_ID の値が A.student_ID のいずれかの値に一致しなければ、テーブル B に行が追

加されたり更新されたりするこ とを許可しない。

更新制限

B.stud_ID の値がその行と一致しなければ、 テーブル A の行を削除するこ とを許可し

ない。

削除制限

テーブル A から行が削除された場合、 その削除された A.student_ID の値に一致する

B.stud_ID のすべての行をテーブル B から削除する。

削除カスケード

107

Page 124: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

参照整合性の設定

削除カスケー ド

例では、 削除カスケード規則を設定するこ とによ り、 Name 値が "John" の行が削除された場合、 テーブル B の両

方の行が削除されるこ とを保証します。

Pervasive PSQL では、 自己参照するテーブルに対し、 循環するカスケード削除を使用できます。 このため、 削除

カスケードは慎重に使用してください。 親テーブル、 子テーブル、 または両テーブルのすべてのレコードを不用

意に削除しないよ うにしてください。

このよ う なカスケード削除がどのよ うにして発生するかをわかりやすくするために例を示します。 2 つの列を持

つテーブル d3 を作成する と します。

CREATE TABLE d3 (c1 INT PRIMARY KEY, c2 INT)INSERT INTO d3 VALUES (2.2)INSERT INTO d3 VALUES (3.2)INSERT INTO d3 VALUES (1.3)INSERT INTO d3 VALUES (4,1)

次に、 外部キーを追加し、 カスケード削除規則を設定するよ うにテーブルを変更します。

ALTER TABLE d3 ADD FOREIGN KEY (c2) REFERENCES d3 ON DELETE CASCASE

次のステート メン トによ り、 テーブル内のすべての行が削除されます。

DELETE FROM d3 WHERE c1 = 2

c1 = 2 の行だけでなく、 すべての行が削除されるのはなぜでし ょ う ?

削除カスケードは、 削除された主キーと同じ値の外部キーを持つすべての行を削除します。 2 番目の行は 初の

行と外部キー関係があ り ます。同様に、 3 番目の行は 2 番目の行と、 4 番目の行は 3 番目の行と外部キー関係があ

り ます。 外部キー関係があるこ とで、 すべての行に渡ってカスケード削除規則が適用されるため、 1 行目によ り

2 行目が、 2 行目によ り 3 行目が、 そして 3 行目によ り 4 行目が削除されるこ とにな り ます。

Pervasive PSQL は、 相互に参照するテーブルでの循環削除カスケードを許可していません。 たとえば、 テーブル

d1 と d2 がある と して、 次のよ うなシナリオを考えます。

CREATE TABLE d1 (c1 INT PRIMARY KEY, c2 INT)CREATE TABLE d2 (e1 INT PRIMARY KEY, e2 INT)

次の変更ステート メン トは許可されます。

ALTER TABLE d1 ADD FOREIGN KEY (c2) REFERENCES d2 ON DELETE CASCADE

次の変更ステート メン トは許可されません。 テーブル d1 と d2 には既に削除カスケードの関係があるからです。

ALTER TABLE d2 ADD FOREIGN KEY (e2) REFERENCES d1 ON DELETE CASCADE

108

Page 125: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

主キーの設定

主キーの設定

主キーは、 SQL ステー ト メ ン ト または Pervasive PSQL Control Center を使用し て作成する こ と ができ ます。

『Pervasive PSQL User's Guide』 の 「列のタスク」 を参照して ください。

テーブル作成中に主キーを作成する

CREATE TABLE ステート メン トで PRIMARY KEY キーワードを使用して、 テーブル作成時に主キーを作成する

こ とができます。 主キーは 1 つまたは複数の列で構成されます。 次の例では id が作成され、 主キーに指定され

るこ とを示しています。

CREATE TABLE mytable (id INTEGER,

myname CHAR(20),

PRIMARY KEY(id))

次の例は複数の列を使ってユニークな値を持つ主キーを作成する方法を示しています。

CREATE TABLE mytable (id INTEGER,

myname CHAR(20),

PRIMARY KEY(id, myname))

主キーに指定した単一または複数の列に UNIQUE 属性を指定したかど うかに関わらず、 データベース エンジン

はその列に重複値とヌル値を許可しないインデッ クスを自動的に作成します。 どのよ うな場合もキー列にヌル値

は許可されません。 すべての主キー値はユニークです。

ほかの例については、 『SQL Engine Reference』 の 「CREATE TABLE」 を参照してください。

既存のテーブルに主キーを追加する

PCC を使用して、 または ADD PRIMARY KEY を使った ALTER TABLE ステート メン トによって、 既存のテーブ

ルに主キーを追加するこ とができます。 『Pervasive PSQL User's Guide』 の 「列に主キーを設定または削除するに

は」 および 「SQL Editor」 を参照して ください。

主キーは重複およびヌル値を許可しない列にしか作成するこ とができません。

必要な場合には、 列属性を変更し、 その列を主キーに設定するこ とを同時に行う こ とができます。 SQL を使った

例を示します。

ALTER TABLE mytable MODIFY id INTEGER UNIQUE NOT NULL PRIMARY KEY

複数の列から成る主キーを追加したい場合は、 キーを分けて追加する必要があ り ます。

ALTER TABLE mytable ADD PRIMARY KEY(id, myname)

ほかの例については、 『SQL Engine Reference』 の 「ALTER TABLE」 を参照してください。

109

Page 126: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

参照整合性の設定

外部キーの設定

外部キーは、SQL ステート メン ト または Pervasive PSQL Control Center を使用して作成するこ とができます。外部

キーを作成する と きに、 同時に関連する規則も定義できます。 同一のキーに複数の規則を定義するこ とができま

す。関連する規則を指定しないで外部キーを作成した場合、更新と削除はどちらもデフォルトの参照整合性によっ

て制限されます。

テーブル作成中に外部キーを作成する

列の定義で REFERENCES キーワードを使用して、 テーブル作成時に外部キーを作成するこ とができます。 外部

キーは 1 つまたは複数の列で構成されます。 列のデータ型は、 この外部キーが参照する主キーと同じでなければ

なり ません。 次の例では your_id が作成され、 mytable.id を参照する外部キーに指定されるこ とを示してい

ます。

CREATE TABLE yourtable (your_id INTEGER REFERENCES mytable(id) ON DELETE CASCADE, yourname CHAR(20))

ステート メン トの 後に外部キーの指定を追加するこ と もできます。 キーに複数列を使用する場合、 この技法を

使う必要があ り ます。

CREATE TABLE yourtable (your_id INTEGER,

yourname CHAR(20),

FOREIGN KEY(your_id, yourname) REFERENCES

mytable(id, myname) ON DELETE CASCADE)

外部キーを作成する と、 データベース エンジンは指定された列にインデッ クスを追加します。

ほかの例については、 『SQL Engine Reference』 の 「CREATE TABLE」 を参照してください。

既存のテーブルに外部キーを追加する

PCC を使用して、 または ADD FOREIGN KEY を使った ALTER TABLE ステート メン トによって、 既存のテーブ

ルに外部キーを追加するこ とができます。 『Pervasive PSQL User's Guide』 の 「外部キーのタスク」 および 「SQLEditor」 を参照してください。

次の例ではこの外部キーに削除規則と更新規則の 2 つの規則が定義されています。

ALTER TABLE yourtable ADD FOREIGN KEY (your_id,yourname) REFERENCES mytable(id,myname) ON DELETE CASCADE ON UPDATE RESTRICT

DELETE CASCADE は慎重に使用してください。 「削除カスケード」 に記載されている例を参照してください。

ほかの例については、 『SQL Engine Reference』 の 「ALTER TABLE」 を参照してください。

110

Page 127: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve およびリ レーシ ョ ナル制約間の相互作用

Btrieve およびリ レーシ ョ ナル制約間の相互作用

Pervasive PSQL は、リ レーシ ョナル インターフェイス と ト ランザクシ ョナル インターフェイスの両方を介して同

一データへの同時アクセスをサポー トするよ うに設計されていますが、 リ レーシ ョナル (SQL) データベース

アーキテクチャの機能によって、 リ レーシ ョナル アクセスを妨げるものがあ り ます。たとえば、参照整合性 (RI)のよ う な リ レーシ ョナル アクセスを制限するよ うに設計された機能は、 データ整合性という点では Btrieve アク

セスも制限します。

整合性の設定、バウンド データベース、 ODBC/SQL セキュ リティ、 ト リガー、参照整合性、およびオーナー ネー

ムなどの機能を ト ランザクシ ョナル (Btrieve) アプ リ ケーシ ョ ンが使用するデータベースに実装するには、 あら

かじめこれらの機能について完全に理解している必要があ り ます。ほとんどの場合、一挙両得のデータベース アクセスを得られますが、 セキュ リ ティ、 参照整合性、 およびト リガーはアクセスやオペレーシ ョ ンに制約を設け

るため、一部の Btrieve オペレーシ ョ ンは、それらの実装によって制限されたり妨害されたりする場合があ り ます。

整合性の設定、 バウンド データベース、 セキュ リ ティ、 ト リ ガー、 または参照整合性を使用している場合には、

データまたはファイルへの Btrieve アクセス時、 そのデータに設定されているバインドおよび制約に違反する と、

Btrieve アクセスが制限された り アクセスできな く なった りする こ とがあ り ます。 ト リ ガーと RI は主と して

Btrieve API を介したデータの操作能力を制限します。

セキュ リティ とオーナー ネームは、 適切なアカウン ト、 アクセス権、 およびパスワードを持たないデータへのア

クセスまたは操作能力を制限する場合があ り ます。 これらの機能について考えられるさまざまな組み合わせはた

く さんあるので、 も一般的な組み合わせのみを以下に一覧表示します。

(1) データベースにバウンド データベースが設定されているかど うかに関係な く、 データベース エンジンは、

データ ファ イルに ト リガーある場合、外部キーがある場合、 あるいは外部キーで参照される主キーがある場合に

は、自動的にデータ ファ イルをバウンド と してスタンプします。バウンド データベースやファイルの詳細につい

ては、 「バウンド データベース」 を参照してください。

表 27 リ レーシ ョ ナル制約と Btrieve アクセス間の相互作用

条件 結果

DDF の有無

整合性の

設定

バウンド データ

ベース

リレーショナル セキュリティの

使用

ト リ ガー

の使用

RI の使用 Btrieveアクセス可能

SQL/ODBCア クセス可能

No - - - - - Yes No

Yes No No No No - Yes Yes

Yes No No (1) No Yes (2) - Yes (2) Yes

Yes Yes No No No No Yes Yes

Yes Yes No Yes No No Yes (3) Yes (3)

Yes Yes No (1) Yes No Yes Yes (4) Yes (3) (4)

Yes Yes No (1) Yes Yes (2) No Yes (1) Yes (3)

Yes Yes Yes No No No Yes Yes

Yes Yes Yes Yes No No Yes (3) Yes (3)

Yes Yes Yes (1) Yes No Yes Yes (2) (4) Yes (3) (4)

Yes Yes Yes (1) Yes Yes (2) No Yes (2) (3) Yes (3)

111

Page 128: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

参照整合性の設定

(2) テーブルに ト リ ガーを追加する と、 Btrieve インターフェイスは ト リ ガーの実行を引き起こすあらゆるオペ

レーシ ョ ンについて、そのファイルへのアクセスが妨げられます。 ト リ ガーは Btrieve インターフェイスを介した

データベース操作には作用しないため、 このロ ッ クアウ ト動作によってデータの一貫性が保持されます。 詳細に

ついては、 「バウンド データベースと整合性の設定」 を参照してください。

(3) データベースまたはファイルがセキュ リティで保護されている場合、 ユーザーがそのファイルに対する権限

(リ レーシ ョナル ユーザー名とパスワード、 または有効な Btrieve オーナー ネーム) を持っているのであれば、ア

クセスは許可されます。セキュ リ ティで保護されたデータベース内にあるがオーナー ネームが設定されていない

ファ イルには、 Btrieve ユーザーはアクセスできません。 Btrieve オーナー ネームが既に設定されているファ イル

にリ レーシ ョナル セキュ リ ティ を 初に設定する と き、 Master ユーザーがオーナー ネームを使ってユーザーに

リ レーシ ョナル権限を付与する必要があ り ます。詳細については、 「Pervasive PSQL セキュ リティ」 を参照して く

ださい。

(4) テーブルに参照整合性制約が含まれており、 そのデータベースで整合性の設定が有効になっている場合、 制

約に違反する Btrieve および SQL 操作は共に行えません。 このメカニズムによ り、 アクセス方法に関係なくデー

タの整合性が保たれます。

バウン ド データベース と整合性の設定

名前付きデータベースに [整合性の設定] 属性を指定しない場合、 データベース エンジンは参照整合性、 ト リ

ガー、セキュ リ ティ規則のいずれも強制しません。名前付きデータベースに [整合性の設定] 属性を指定する と、

データのアクセスに使用する方法とは無関係に、MicroKernel はデータベースの定義済みセキュ リティ、参照整合

性 (RI) およびト リガーを設定できます。 MicroKernel は以下のよ うにこれらの規則を設定します。

Btrieve ユーザーはリ レーシ ョナル セキュ リティの制約を受けません。 ファ イルにオーナー ネームが設定さ

れている場合、 それは有効なままです。 ファ イルにオーナー ネームがない場合、 Btrieve ユーザーはリ レー

シ ョナル セキュ リティ制約に関係なくデータにアクセスできます。 Btrieve オペレーシ ョ ンは RI やそれ以外

のデータベースに定義されているすべての制約に加え、 以下に示すト リガー制限の影響を受けます。

ファ イルに制約が存在する場合、 Btrieve アクセスは以下のよ うに許可されます。

バウンド ファ イルに複数の制約が存在する場合、アクセス レベルは 大限の制約または制約の組み合わせに従い

ます。 たとえば、 ファ イルに INSERT ト リ ガーと UPDATE ト リ ガーが定義されている場合、 Btrieve ユーザーは

読み取り専用および削除アクセスのみが行えます。

「整合性の設定」 が直接 「バウンド データベース」 に関連付けられていません。 データベースは整合性の設定な

しでバインド されるか、 データベースはバインド されずに整合性の設定を設定されます。

バウン ド データベース

名前付きデータベースに 「バインド」 属性を指定した場合、 そのデータベースの DDF およびデータ ファ イルは

ほかのデータベースとは関連付けるこ とができません。 また、バウンド データ ファ イルを、データベース内の複

数のテーブル定義と関連付けるこ と もできません。 新しいテーブルまたは DDF をバウンド データベースに追加

する と、データベース エンジンが自動的に新しいオブジェク トのバインドを行います。 この動作によ り、予測で

きない動作やデータ整合性を壊すこ とになる矛盾を防ぎます。たとえば、同じデータベース内の 2 つの異なるテー

ブル定義に同じデータ ファ イルを使用した場合、 一方のテーブルに RI 規則を定義し、 も う一方には定義しない

表 28 Btrieve アクセスの制限-整合性の設定

フ ァ イルの制約 Btrieve を使ったアクセスで許可されるレベル

RI 制約の定義あ り ユーザーはデータのアクセス、および RI 制約の範囲内でのオペレーシ ョ ン

の実行が可能です。

INSERT ト リ ガーの定義あ り 読み取り専用、 更新、 および削除オペレーシ ョ ンが許可されます。

UPDATE ト リ ガーの定義あ り 読み取り専用、 挿入、 および削除オペレーシ ョ ンが許可されます。

DELETE ト リ ガーの定義あ り 読み取り専用、 更新、 および挿入オペレーシ ョ ンが許可されます。

112

Page 129: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve およびリ レーシ ョ ナル制約間の相互作用

でおく こ とができます。 この場合、RI 規則を持たないテーブルに行を挿入するこ とは、 も う一方のテーブルの RI規則に違反するこ とにな り ます。データ ファ イルと DDF をバインドするこ とによ り このよ うな矛盾を防ぎます。

DDF および データ ファ イルは、 個々にバインドできます。 データ ファ イルに ト リガーがある場合、 外部キーが

ある場合、または外部キーで参照される主キーがある場合、データベース エンジンは自動的にそのデータ ファ イ

ルをバインド データ ファイルと して特徴付けます。これらのファイルは別のデータベースと共有できず、複数の

テーブル定義に関連付けられるこ と もできません。

データ ファ イルがバインド されているこ とは、そのデータ ファ イルへの Btrieve アクセスには直接影響しません。

ただし、 バインド されたファイルには Btrieve アクセスを制限するほかの制約があるこ とがあ り ます。

関連項目

データベースへの 「整合性の設定」 および 「バウンド データベース」 設定の使用法については、 「データベース

の新規作成 GUI リ ファレンス」 を参照して ください。

113

Page 130: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

参照整合性の設定

114

Page 131: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

7

Pervasive PSQL セキュ リ テ ィ

ト ランザクシ ョナルおよびリ レーシ ョナル インターフェイスのためのセキュ リ テ ィに関する概念と作業

Pervasive PSQL は、 Btrieve や SQL ベースのアプリ ケーシ ョ ンで使用できる完全な リ レーシ ョナル データベース

セキュ リティを提供します。 この章では、 これら 2 つの関係および、 互いにどのよ うに動作するのかについて説

明します。

「セキュ リ ティ モデルと概念」

「 ト ランザクシ ョナル インターフェイスのセキュ リティ計画」

「 ト ランザクシ ョナル インターフェイス セキュ リティのクイ ッ ク スタート 」

「セキュ リ ティの作業」

「データの暗号化」

115

Page 132: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL セキュ リ テ ィ

データベース セキュ リ テ ィ

Pervasive PSQL v11 SP3 で新しいデータベースを作成したと き、 デフォルトでは、 データベース セキュ リティは

オフになっています。これは、"Master" ユーザーのパスワードを指定するこ とによってオンになり ます。パスワー

ドに関する制約については、 「識別子の種類別の制限」 の表を参照して ください。

Master ユーザー

データベース セキュ リ テ ィは、 セキュ リ テ ィ をオンにしたと きに、 データベースヘのフル アクセス権を持つ

"Master" という名前のデフォルト ユーザーが存在するかど うかに基づきます。 デフォルトでは、 Master ユーザー

のパスワードは設定されていません。 Master ユーザーのパスワードを指定する と、 セキュ リ ティが有効、 つま り

オンになり ます。

Master ユーザーは、 グループやほかのユーザーを作成したり、作成したグループやユーザーにデータ アクセス権

限のセッ ト を定義する こ とができます。 ユーザーやグループは、 SQL ステー ト メ ン ト を使用して、 あるいは

Pervasive PSQL Control Center (PCC) を使用して追加できます。

特殊な PUBLIC グループ

すべてのユーザーに同様のアクセス権を付与したい場合は、 それらのアクセス権を "PUBLIC" とい う名前の特殊

なグループに付与するこ とができます。 初、 PUBLIC には何のアクセス権も割り当てられていません。

PUBLIC はすべてのユーザーおよびグループにデフォルトのアクセス権を与えるこ とから、 特殊なグループと呼

ばれます。 データベース エンジンは常に、 まず PUBLIC に割り当てられているアクセス権を調べます。 PUBLICのアクセス権の適用方法をわかりやすくするために 2 つの例を示します。

PCC で、 PUBLIC に CREATE TABLE 権限を割り当てる と します。 次に、 PCC で "myuser" という名前のユーザー

を作成しますが、 ユーザーのアクセス権にテーブルを作成するための個別の権限は含めないものと します。 デー

タベース エンジンは 初に PUBLIC のアクセス権を調べるため、 この場合、テーブル作成の権限は PUBLIC から

付与されるこ とにな り、 myuser はテーブルを作成できます。

逆に言えば、 PUBLIC にアクセス権が付与されていない場合は、 個々のユーザーまたはグループに付与されてい

るアクセス権が適用されます。 たとえば、 PCC で、 PUBLIC に CREATE TABLE 権限を割り当てないと します。

ユーザーまたはユーザーが属するグループのアクセス権がテーブルの作成を許可しない限り、 どのユーザーも

テーブルを作成できません。

ユーザーとグループ

データベース セキュ リ テ ィ をオンにしたら、 グループとユーザーを定義するこ とができます。 PCC の PervasivePSQL エクスプローラー にグループおよびユーザーのノードが現れます。 『Pervasive PSQL User's Guide』 の 「ユー

ザーとグループの作業」 を参照して ください。

制限

ユーザーは、 複数のグループのメンバーになるこ とはできません。

グループ内のすべてのユーザーは、 そのグループに定義された権限と完全に同じ権限を持ちます。 グループ

のメンバーであるユーザーに個別に権限を許可したり取り消した りするこ とはできません。

グループを別のグループに追加するこ とはできません。

116

Page 133: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

セキュ リ テ ィ モデルと概念

セキュ リ テ ィ モデルと概念

このセクシ ョ ンでは、 SQL ( リ レーシ ョナル) および Btrieve ( ト ランザクシ ョナル) で使用できるセキュ リ ティ

モデルについて説明します。 両方のインターフェイスは、 ユーザーに権限を割り当てる方法の選択に際して、 同

レベルの精度を共有しています。 どちらのインターフェイスもデータベース セキュ リティをサポート します。 ト

ランザクシ ョナル インターフェイスには、アクセス許可の方法を決定するセキュ リティ ポ リシーが追加されてい

ます。 リ レーシ ョナル インターフェイスは列レベルのセキュ リティをサポート しています。

メ モ ト ランザクシ ョナル インターフェイスのセキュ リ テ ィ ポ リ シーを指定しても、 リ レーシ ョナル イン

ターフェイスのセキュ リティには何ら影響あ り ません。 しかし、 説明上、 ト ランザクシ ョナル インターフェ

イス セキュ リ テ ィで説明されている 「データベース」 ポ リ シーと、 リ レーシ ョナル インターフェイスのセ

キュ リ ティは同じタイプである と考えてください。 2 つのインターフェイスのセキュ リティにおける主な違

いは、 リ レーシ ョナル インターフェイスのセキュ リティ ポ リシーを変更できないこ とです。セキュ リ ティは

オンかオフのいずれかです。オンの場合、セキュ リ ティは ト ランザクシ ョナル インターフェイス用のデータ

ベース ポ リシー タイプのセキュ リティに類似しています。

リ レーシ ョ ナル イ ン ターフ ェ イスで使用可能なモデル

リ レーシ ョナル インターフェイスの場合、 セキュ リ ティはオンかオフのいずれかです (上記の 「メモ」 を参照し

てください)。デフォルトで、セキュ リ ティはオフになっています。セキュ リ ティは、 Master ユーザーのパスワー

ドを指定するこ とによってオンになり ます。

セキュ リティをオンにしたら、 PCC を使って 低でも、 データベースヘのログインを許可するユーザーを定義す

る必要があ り ます。 ユーザーごとにオブジェク トの権限を設定するこ とができます。 さ らに、 ユーザーのグルー

プを定義したり、 各グループにオブジェク トの権限を設定するこ と もできます。

『SQL Engine Reference』 では、以下の内容がリ レーシ ョナル インターフェイス用のセキュ リティに適用されます。

「ビューおよびス ト アド プロシージャに対する権限」

「ALTER GROUP」

「ALTER USER」

「CREATE GROUP」

「CREATE USER」

「DROP GROUP」

「DROP USER」

「GRANT」

「REVOKE」

「SET PASSWORD」

「SET SECURITY」

「psp_groups」

「psp_procedure_rights」

「psp_table_rights」

「psp_view_rights」

「psp_users」

117

Page 134: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL セキュ リ テ ィ

複数のデータベースのデータは、 データベースが同じマシン上に存在するのであれば、 アクセスできます。 ただ

し、 一度に 1 つのデータベースにしかログインできません。 各データベースのセキュ リティを基に、 適用される

データベース アクセスの状況を示します。

これ以降のセキュ リ テ ィについての説明は、 ト ランザクシ ョナル インターフェイスにのみ当てはま り ます。 リ

レーシ ョナル インターフェイス以外の説明が不要であれば、 「データの暗号化」 へ進んでください。

ト ラ ンザクシ ョ ナル イ ン ターフ ェ イスで使用可能なモデル

ト ランザクシ ョナル インターフェイスで使用可能な認証および許可モデルには、 次のモデルがあ り ます。

「ク ラシッ ク」

「混合」

「データベース」

このセクシ ョ ン、およびこれ以降のセキュ リティについて説明は、 ト ランザクシ ョナル インターフェイスのみを

使用するアプリ ケーシ ョ ンに当てはま り ます。 「資格情報」 、 「ログイ ン資格情報」 、 または 「ユーザー資格情報」

は、 有効なユーザー名とパスワードの一組を指します。

Pervasive PSQL v11 SP3 では、 OS に依存しないデータベース認証および許可の機能が ト ランザクシ ョナル イン

ターフェイスで利用できます。従来の (オペレーティング システム) 認証モデルは本リ リースでも今までどおり

使用できますが、Btrieve のユーザーおよび権限がファイル システムのユーザーおよび権限から派生されない場合

に、 モデルを選択できるよ うにな り ました。 ユーザーにデータ ファ イルへのオペレーティング システム アクセ

スが許可されていなくても、 そのユーザーにデータベースヘのアクセスを許可できます。

現在ある Btrieve アプリ ケーシ ョ ンは、 アプリ ケーシ ョ ン コードに何ら変更を加える必要なく、 新しいセキュ リ

ティ モデルを利用するこ とができます。

ク ラシ ッ ク

ク ラシッ ク セキュ リ テ ィは、 本製品の以前の リ リースで提供された Btrieve セキュ リ テ ィ モデルです。 Btrieveユーザーの場合、 認証はオペレーティング システムによって実行され、 データ アクセス権限は当該ユーザーの

ファイル システム権限によって決定されます。 オペレーティング システムに依存しないデータベース エンジン

で提供される唯一の許可機能は Btrieve オーナー ネームで、これは実質的にはファイル アクセス パスワードです。

このセキュ リティ モデルでは、オペレーティング システムによって認証されるユーザーはみな、オペレーティン

グ システムを介してデータ ファ イルを読み書きする必要があるため、 Btrieve を介してデータにアクセスする場

合も同様の権限を持ちます。Btrieve オーナー ネームはこの規則の例外で、付加的な許可レベルを提供するもので

す。 ただし、 この許可レベルはユーザーの ID とは関連付けられません。 アプ リ ケーシ ョ ンまたはユーザーが指

定されたファイルにオーナー ネームを供給できるかど うかという こ と とのみ関連付けられます。

Btrieve オーナー ネームの詳細については、 「オーナー ネーム」 を参照してください。

ク ラシ ッ ク セキュ リ テ ィ の設定

ク ラシッ ク セキュ リティでは、データベースのユーザーおよびアクセス権限の設定は、オペレーティング システ

ムでユーザーを作成し、 ファ イル権限を割り当てるこ とによって行います。データベース エンジンを構成するた

めに実行する別の操作はあ り ません。

ログインしているデータベース

のセキュリティ

ログインしていないデータベース

のセキュリティ

説明

オン オフ アクセスのすべての権利が付与されます。

オン オン ユーザー名とパスワードが、両方のデータベースでまった

く同じでなければなり ません。

オフ オン アクセスは拒否されます。

118

Page 135: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

セキュ リ テ ィ モデルと概念

ユーザー アカウン トの設定方法および権限の割り当て方法についての説明は、オペレーティング システムに付属

のドキュ メン ト を参照してください。

混合

混合セキュ リ ティ モデルでは、 データベース ログインの発生時、 データベース エンジンはユーザーが入力した

ユーザー名とパスワードをオペレーティング システムの認証サービスに渡します。オペレーティング システムが

ユーザー名とパスワードを認証した場合、データベース エンジンはデータベースのユーザーおよび権限テーブル

を使って、当該ユーザーの具体的なアクセス権を決定します。 したがって、 各ユーザーのデータ アクセス権限を

データベース内に定義しておく必要があ り ます。言い換える と、 データベース エンジンは、当該ユーザーのデー

タ ファ イルに対するファイル システム権限に関係なく、 定義されている権限を適用します。

Btrieve アプリ ケーシ ョ ンのデータベース許可は、 リ レーシ ョナル インターフェイスのセキュ リティ モデルを拡

張するこ とによって提供されているため、 Btrieve アプリ ケーシ ョ ンでも使用できます。 ユーザーを定義し権限を

設定する機能は、 PCC によって、 また、 GRANT、 REVOKE、 ALTER GROUP、 CREATE USER、 ALTER USER、DROP USER などの SQL ステート メン トによっても提供されます。

混合セキュ リティ モデルでは、データベースに定義されているユーザー名はすべて、オペレーティング システム

に定義されているユーザー名と完全に一致していなければなり ません。データベース ログイン中は、データベー

ス エンジンはユーザーが入力したユーザー名とパスワードを単にオペレーティング システムの認証モジュール

に渡すだけです。オペレーティング システムが資格情報を認証した場合、データベースは自身のユーザーおよび

権限テーブルを使って、 当該ユーザーの具体的なアクセス権を決定します。 各ユーザーをデータベースに追加す

る必要があ り ます。各ユーザーのアクセス権を個別に定義する代わりに、デフォルト グループの PUBLIC を使っ

て 1 度にアクセス権を定義するこ とができます。 有効なユーザーは、 PUBLIC グループに付与されているアクセ

ス権を自動的に継承します。

混合セキュ リ ティ環境を設定する詳細な手順については、 「混合およびデータベース セキュ リ ティの設定」 を参

照してください。

データベース

データベース セキュ リティ モデルでは、データベース エンジンが Btrieve データ ファ イルのユーザーの認証と許

可を行います。 ユーザーがデータに接続しアクセスする能力は、 そのユーザーがアプリ ケーシ ョ ンを実行するコ

ンピューターに正常にログインできる限りは、オペレーティング システムのアカウン ト識別情報やファイル シス

テム権限とは関係あ り ません。

Btrieve アプリ ケーシ ョ ンのデータベース認証および許可は、 リ レーシ ョナル インターフェイスのセキュ リ テ ィ

モデルを拡張するこ とによって提供されているため、 Btrieve アプリ ケーシ ョ ンでも使用できます。 ユーザーを定

義し権限を設定する機能は、 PCC によって、 また GRANT や REVOKE などの SQL ステート メン トによって提供

されます。

メ モ 新しいデータベースを作成する場合は、 今までどおり、 ユーザーはオペレーティング システムで管理

者レベルの権限を持っている必要があ り ます。

データベース セキュ リティ環境を設定する詳細な手順については、 「混合およびデータベース セキュ リティの設

定」 を参照してください。

混合およびデータベース セキュ リ テ ィ モデルでの注意事項

データベースごとにユーザーのセッ ト を定義する必要があ り、 ユーザーごとにアクセス権限のセッ ト を定義する

必要があ り ます。 アクセス権を割り当てる も簡単な事例は、 特殊なグループの PUBLIC にアクセス権を割り当

てるこ とです。 すべてのユーザーは PUBLIC からデフォルトのアクセス権を継承します。 また、 当該データベー

スのメンバーである と判断される必要のあるデータ ファ イルが格納されているファイル システム ディ レク ト リ

を指定する必要があ り ます。

119

Page 136: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL セキュ リ テ ィ

データベース エンジン (または、 混合セキュ リティの場合はオペレーティング システム) は、 ディ レク ト リ ツリー内にあるデータ ファ イルへのアクセスが試行されるたびに、ユーザー認証および許可を実行します。データ

ベース とディ レク ト リ間のこの関連付けがないと、Btrieve アプリ ケーシ ョ ンが特定のデータ ファ イルを開こ う と

したと き、 データベース エンジンには定義済みのユーザーおよび権限の適切なセッ ト を判断するためのデータ

ベース コンテキス トがあ り ません。

混合またはデータベース セキュ リティ モデルは、当該データベースに属するものと して定義されているディ レク

ト リに存在する Btrieve データ ファ イルでのみ使用できます。 このデータベースには、 「デフォルトのデータベー

ス と現在のデータベース」 に記載されているデフォルト データベース DefaultDB も含まれます。 データベースと

関連付けられていないディ レク ト リにあるデータ ファ イルは、 ク ラシッ ク セキュ リティ モデルでのみアクセス

できます。

これらのモデルの主な利点の 1 つは、 オペレーティング システム ユーザーのデータ ファ イルへのアクセスを制

限する一方で、 データベース エンジンを介したデータ アクセスにはフル アクセスを許可できるこ とです。 対照

的にク ラシッ ク モデルでは、 データ ファ イルへのレコードの追加が許可されているユーザーは、 必ずオペレー

ティング システムからもデータ ファ イルのコピー、 削除ができなければなり ません。

メ モ ワークグループ エンジンはオペレーティング システム認証を実行しないため、ワークグループ エンジ

ンを使用している場合の、 ク ラシッ クおよび混合セキュ リティ ポ リシーの動作は同じです。 ワークグループ

エンジンを使って Btrieve データベースをセキュ リティで保護したい場合は、 データベース セキュ リティ ポリシーを使用する必要があ り ます。

混合およびデータベース セキュ リ テ ィ の設定

混合セキュ リティ またはデータベース セキュ リティに移行するには、多数の選択を行った上、慎重に計画を立て

る必要があ り ます。 既に確立している環境では、 お使いの製品環境が混乱しないよ うに、 Btrieve ファ イルをデー

タベースにまとめる方法を考え、 移行の予定を立てる必要があるかもしれません。

ク ラシッ ク セキュ リティから混合またはデータベース セキュ リティへの変換方法に関する情報については、 「セ

キュ リ ティの作業」 を参照して ください。次のセクシ ョ ンでは、 「セキュ リ ティの作業」 で取り上げる題材の概要

について簡単に説明します。

オーナー ネーム

オーナー ネームは、 Btrieve ファ イルのアクセスを得るために必要なパスワードです。 オーナー ネームとシステ

ム ユーザー名あるいはリ レーシ ョナル データベース ユーザー名との間に関連はあ り ません。オーナー ネームは、

ファ イル パスワード と考えてください。

短いオーナー ネームは半角 8 文字までの範囲で指定できます。 長いオーナー ネームは半角 24 文字までの範囲で

指定できます。 ただし、 長いオーナー ネームを指定した場合、 そのデータ ファ イルは Pervasive PSQL v10 SP1 より前のデータベース エンジンで読み取るこ とができないので注意してください。 また、長いオーナー ネームを使

用したデータ ファ イルは、v9.5 よ り前のファイル形式にリ ビルド しよ う とする場合、そのオーナー ネームを 初

に削除しておかないと リ ビルドするこ とができません。 オーナー ネームは、長いものでも短いものでも、 その

大長 (8 または 24 バイ ト ) に満たない部分は空白が埋め込まれます。

PCC では現在、 ファ イルのセキュ リ ティ プロパティを介してオーナー ネームを指定する方法は提供していませ

ん。 ただし、 PCC の SQL Editor で GRANT ステート メン ト を使ってオーナー ネームを設定するこ とができます。

『SQL Engine Reference』 の 「オーナー ネーム」 を参照して ください。 Maintenance ユーティ リ ティ または FunctionExecutor ユーテ ィ リ テ ィ を使用して、 フ ァ イルのオーナー ネームを設定またはク リ アする こ と もでき ます。

「Maintenance を使用した Btrieve データ ファ イルの操作」 を参照してください。

120

Page 137: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

セキュ リ テ ィ モデルと概念

オーナー ネームには、 表 29 に示すよ うに、 いくつかの属性があ り ます。

備考

ファ イルに暗号化を指定したオーナー ネームを 初に設定したと きに、データベース エンジンはファイル全体を

暗号化します。 この処理はファイルが大きいほど時間がかかり ます。

暗号化されたファイルに対するデータ アクセス操作は通常のファイルに比べて時間がかかり ます。データベース

エンジンは、 ディ スクからページを読み込むと暗号化された各ページを元に戻して解読し、 ディ スクに書き戻す

と きに再度暗号化します。

注意 暗号化が設定されている場合には特に、 ファ イルのオーナー ネームを忘れないよ う記録しておいてく

ださい。オーナー ネームを見つける方法はあ り ませんし、オーナー ネームなしでデータにアクセスする方法

もあ り ません。

オーナー ネームおよびセキュ リ テ ィ

保護されたデータベース内のテーブルであるファ イルに Btrieve オーナー ネームが設定されている場合、 データ

ベースの Master ユーザーは、 そのテーブルに対する権限を任意のユーザー (Master ユーザーを含む) に与える場

合、 GRANT ステート メン トでオーナー ネームを使用する必要があ り ます。

あるユーザーのためにオーナー ネームを含む GRANT ステート メン ト を発行する と、そのユーザーはデータベー

スにログインするこ とによ り、毎回オーナー ネームを指定するこ とな く、指定されたテーブルにアクセスするこ

とができます。

Master ユーザーが GRANT ステート メ ン ト で正しいオーナー ネームを使ってテーブルに対する権限をあるユー

ザーに許可していなければ、そのユーザーが ODBC 経由でそのテーブルにアクセスを試みた場合、アクセスは許

可されません。

テーブルが読み取り専用属性のオーナー ネームを持っている場合、 Master ユーザーはオーナー ネームを使って

自分自身に SELECT 権を特に許可しな くても、 自動的に SELECT 権限を持ちます。

データ ファ イルにオーナー ネームが設定されていない場合、 そのファイルのリ レーシ ョナル セキュ リ ティ を有

効にする と、 ファ イルへの Btrieve アクセスは許可されなくな り ます。 ファ イルのアクセス時にオーナー ネーム

の指定が可能なユーザーが Btrieve アクセスを回復できるよ うに、 そのファイルにオーナー ネームを設定する必

要があ り ます。 この動作によ り、 デフォルトの Btrieve ユーザーはリ レーシ ョナル セキュ リ ティを迂回できな く

な り ます。

表 29 オーナー ネームのオプシ ョ ン

オプシ ョ ン 説明

読み取り専用 パスワードを指定しな くても、ユーザーはデータ ファイルの変更を行わないデータ アクセス

操作を行う こ とができます。

読み取 り 専用、

暗号化

パスワードを指定しな くても、ユーザーはデータ ファイルの変更を行わないデータ アクセス

操作を行う こ とができます。 このオプシ ョ ンを設定する と、 データベース エンジンはオー

ナー ネームをキーに使用してファ イルの全レコードを暗号化します。 後から追加されるレ

コード も暗号化されます。

ノーマル パスワードを指定しないと、ユーザーはファ イル アクセス操作を一切行う こ とができません。

暗号化のみ パスワードを指定しないと、ユーザーはファ イル アクセス操作を一切行う こ とができません。

追加または変更されたレコードは、 パスワードを使用して暗号化されます。 このオプシ ョ ン

を設定する と、 データベース エンジンはオーナー ネームをキーに使用してファ イルの全レ

コードを暗号化します。 後から追加されるレコード も暗号化されます。

121

Page 138: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL セキュ リ テ ィ

Btrieve オーナー ネームを使用してファ イルへのアクセスを許可する例については、 『SQL Engine Reference』 の

「GRANT」 を参照してください。

複数のデータベースのデータにアクセスする

複数のデータベースのデータは、 データベースが同じマシン上に存在するのであれば、 アクセスできます。 ただ

し、 一度に 1 つのデータベースにしかログインできません。 各データベースのセキュ リティを基に、 適用される

データベース アクセスの状況を示します。

表 30 セキュ リ テ ィ 設定に基づ く データベースのアクセス権

ログイ ン し ているデータベース

のセキュ リ テ ィ

ログイ ン し ていないデータベース

のセキュ リ テ ィ

説明

有効(混合またはデータベース セキュリティ モデルのいずれか)

なし アクセスのすべての権利が付与されます。

有効(混合またはデータベース セキュリティ モデルのいずれか)

有効 (混合またはデータベース セキュ リ ティ モデルのいずれか)

ユーザー名とパスワードが、 両方のデータベー

スでまったく同じでなければなり ません。

なし 有効 (混合またはデータベース セキュ リ ティ モデルのいずれか)

アクセスは拒否されます。

122

Page 139: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ト ラ ンザクシ ョ ナル イ ン ターフ ェ イスのセキュ リ テ ィ 計画

ト ラ ンザクシ ョ ナル イ ン ターフ ェ イスのセキュ リ テ ィ 計画

Pervasive PSQL v11 SP3 をインス トールした後も、セキュ リ ティのデフォルトの動作は以前のリ リース と変わり ま

せん。つま り、データベース エンジンは 「ク ラシッ ク」、すなわち OS ベースの認証および許可を使用します。 オ

ペレーティング システムを通して特定データ ファ イルへのアクセスが許可されているユーザーは、 Btrieve オー

ナー ネームを使ってデータ ファ イルへのアクセスが制限されていない限り、ファ イルに対する権限と同レベルの

権限をファイルに含まれているデータ レコードに対しても持ちます。

このセクシ ョ ンでは、 デフォルト データベースや許可されたユーザー、 および Btrieve セキュ リティ ポ リシーの

その他の側面を設定するために必要な手順について説明します。

使用可能なオプシ ョ ン

使用できるセキュ リ ティ オプシ ョ ンは 3 つあ り ます。 適なオプシ ョ ンを選択するための手助けとなるよ う、 こ

れらのオプシ ョ ンの機能を以下に示します。 暗号化はどの設定でも任意です。

デー タ ベースのセキュ リ テ ィの下では、 データベースのユーザー アカウン トは OS のユーザー アカウン ト とは

まったく無関係です。

対照的に、 ク ラシ ッ ク セキュ リティでは、 コンピューターへのログインに成功したユーザーは、データを含んで

いるファイルに対してユーザーに割り当てられているファ イル システム権限のレベルに従った、そのデータベー

ス コンテンツへのアクセス権を持ちます。

後に、 混合セキュ リティ ポ リシーは、 ほかの両方のポリシーの側面を持っています。 この方式では、 ユーザー

は OS のユーザー名とパスワードを使ってログインしますが、 データに対するユーザーのアクセス権はデータ

ベースに設定されているユーザー権限によって決定されます。

ポリ シーの選択

このセクシ ョ ンでは、複数のセキュ リティ ポ リ シーの中から 1 つを選び出す上での主な判断材料をいくつかを述

べます。

表 31 セキュ リ テ ィ 設定の機能比較

機能 ク ラ シ ッ ク 混合 データベース

管理者がユーザーごとにオペレーティング システム (OS) とデータベース

のユーザー アカウン ト を別々に設定する必要があ り ます。

○ ○

データベースのユーザー アカウン トは OS のユーザー アカウン トから直接

派生します。

○ ○

ユーザーのデータ アクセス権は、 ユーザーのファ イル システムの権利とは

関係があ り ません。 管理者はデータベースを介して各ユーザーにデータ アクセス権を割り当てる必要があ り ます。

○ ○

ユーザーのデータ アクセス権は、 OS ユーザーのファ イル システム権限か

ら直接派生されます。

Pervasive ベースの Windows アプ リ ケーシ ョ ンから、 データベースのユー

ザー名とパスワードを入力する自動ログイン ダイアログを表示できます。

○ 1 ○ 1 ○

データベースは OS のログインの成功を有効なデータベース ユーザーと し

て受け入れます。

○ ○

ユーザーは、コンピューターにログインするのとは別にデータベースにログ

インする必要があ り ます。

1 ログイン ダイアログは、 リ クエスターがオペレーティング システムを介して ID を決定できない場合に現れます。

123

Page 140: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL セキュ リ テ ィ

ク ラシ ッ ク を選択する理由

ユーザーがデータ ファ イルへのファイル システム アクセス権を持っているこ とを安心して受け入れられ

る。たとえば、データ ファ イルからレコードを削除する権限を持っているユーザーは、オペレーティング システムからそのファイル自体を削除するこ と もできます。

管理上の面倒な作業は 小限にしたい。 各ユーザーの OS ユーザー アカウン ト と、 少なく と も 1 つのデータ

ベース アカウン トの両方を設定するこ とはした くない。

各ユーザーのファイル システム権限によって異なる、 さまざまなデータ アクセス権を持つ必要がない。

ユーザーにデータベースのログインを個別に行わせたくない。

混合を選択する理由

ユーザーにデータベースのログインを個別に行わせたくない。

有効なデータベース ユーザーには、 オペレーティング システムにおけるデータ ファ イルへのいかなる権限

も持たせないよ うにしたい。 たとえば、 データベースに対するあらゆる権限を持っているユーザーに、 オペ

レーティング システムからデータ ファ イルを削除する権限を持たせないよ うにするこ とができます。

OS のユーザー アカウン ト と同じユーザー名のデータベース ユーザー アカウン ト を設定するつも りである。

また、 データベース ユーザーごとに権限を割り当てるつも りである。 選択すれば、 特殊グループの PUBLICから権限を継承するこ とによって、 すべてのユーザーが同レベルの権限を持つこ とができます。

データベースを選択する理由

ユーザーにデータベースのログインを個別に行わせたい。つま り、オペレーティング システムへのログイン

後、 ユーザーはも う一度データベースにログインする必要があ り ます。 この動作は、 権限を与えられたコン

ピューター ユーザーの一部にはデータベースヘのアクセスが許可されているが、一部には許可されていない

場合に有用です。

有効なデータベース ユーザーには、 オペレーティング システムにおけるデータ ファ イルへのいかなる権限

も持たせないよ うにしたい。 たとえば、 データベースに対するあらゆる権限を持っているユーザーに、 オペ

レーティング システムからデータ ファ イルを削除する権限を持たせないよ うにするこ とができます。 これ

は、 混合セキュ リティ ポ リシーを使っても実現できます。

データベースのユーザー アカウン トには、オペレーティング システムのアカウン ト とは異なる名前を使いた

い。 たとえば、 オペレーティング システムのユーザー "jsmith" が "john" と してデータベースにログインする

こ とを要求されるかもしれません。

ユーザーとその権限は、サーバーやマシンでなくデータベースの下にある。これによ り、データベースのユー

ザーやユーザーの権限を再作成しな くても、 データベースをあるマシンから別のマシンへ移動するこ とがで

きます。

セキュ リ テ ィ を設定するための準備

ト ランザクシ ョナル インターフェイスのセキュ リティ設定は 1 つの簡単な処理ですが、この処理には十分な柔軟

性があるため、 いくつかの準備を必要と します。 このセクシ ョ ンでは、 Btrieve セキュ リティの設定を開始する前

に知っておくべき情報について説明します。

データベースの数

混合またはデータベース セキュ リティの場合は、すべてのユーザーに同レベルの権限を割り当てるか、 も し くは

データベースごとに定義済みユーザーのセッ ト を作成する必要があ り ます。

まったく関連のないデータの本体を含んでいる Btrieve データ ファ イルが 2 つ以上ある場合は、別個のデータベー

スを 2 つ以上設定し、 それぞれに固有の許可されたユーザーのセッ ト を持ちたいと思われるかもしれません。 し

かし、 一般的に言えば、 定義済みユーザーのセッ ト を複数作成して管理する必要がないよ う、 別々にするデータ

ベースの数は 小限にしたいでし ょ う。 ほとんどの場合は、 1 つのデータベースで十分です。 データベースにお

124

Page 141: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ト ラ ンザクシ ョ ナル イ ン ターフ ェ イスのセキュ リ テ ィ 計画

けるユーザー権限では、 各ユーザーのデータベースへのアクセスを規制できるため、 ある特定のユーザーのアク

セスを制限するためだけに別のデータベースを作成する必要はあ り ません。

1 つのデータベースのみが必要である と判断した場合は、既存のデータベース DefaultDB を Btrieve ファ イルと関

連付けられているデータベース と して使用するこ とができます。 そ うではなく、 独自の名前を付けたデータベー

スを設定するこ と もできます。

データ フ ァ イルの場所

名前付きデータベースのデータ デ ィ レ ク ト リに、 データ ファ イルが格納されているディ レク ト リ を指定するこ

とによって、 Btrieve データ ファ イルをデータベース と関連付けます。そのため、データベースと関連付けるすべ

てのデータ ファ イルが格納されているディ レク ト リ を知っておく必要があ り ます。データ ファ イルがすべて特定

のディ レク ト リ内のサブディ レク ト リ ツ リーに存在する場合は、 ト ップレベルのディ レク ト リのパス名さえわ

かっていれば十分です。ハード ディ スク ド ラ イブ上のすべてのデータ ファ イルを含めたい場合は、 "C:\" を使用

するこ と もできます。

ユーザー名とは ?混合セキュ リティを使用する予定ならば、 すべてのユーザーに同一の権限を割り当てるか、 も し くは異なる権限

を持つユーザーのユーザー アカウン ト を設定する必要があ り ます。 個々のユーザーを設定するつも り ならば、

データベース ユーザー名にしたいオペレーテ ィ ング システム ユーザー名の一覧が必要です。 設定するデータ

ベース ユーザー名は、オペレーティング システム ユーザー名と完全に一致している必要があ り ます。後からユー

ザー名を追加するこ とはいつでもできますが、 一度に複数のユーザーを作成した方がよ り効率的です。

セキュ リ テ ィ ポリ シーとは ?セキュ リ テ ィ を設定する前に、 使用する予定のポ リ シーがど うい う ものであるかを知っておく必要があ り ます。

セッ ト アップ処理はポリシーによって若干異なり ます。 ポ リシーを選択する上での考慮点は、 「ポ リ シーの選択」

に記載されています。

処理の概要

このセクシ ョ ンでは、 データベースのセキュ リティの設定に使用される高レベルな手順の概要を示します。 よ り

詳細な作業手順の説明については後述のセクシ ョ ンで提供されています。

1 準備をします。 上記の 「セキュ リ ティを設定するための準備」 で示されたとおり、 必要な情報を収集し、 開

始するために必要な決定を行います。データベースの数はいくつにしますか?Btrieve ファ イルが保存されて

いる場所は?ユーザー名は何ですか?どのセキュ リティ ポ リシーを使用しますか?

2 Btrieve ファ イルと と もに使用するデータベースを選択し、そのデータベースにデータ ファ イルの場所を示す

データ ディ レク ト リ を設定します。この手順は、混合またはデータベース セキュ リティでのみ必要とな り ま

す。

この手順の詳細については、 『Pervasive PSQL User's Guide』 の 「定義済みの DefaultDB も含め、既存のデータ

ベースを Pervasive PSQL ファ イルと使用するには」 を参照して ください。

3 セキュ リティをオンにします。

この手順の詳細については、 『Pervasive PSQL User's Guide』 の 「Pervasive PSQL エクスプローラーを使って

セキュ リティをオンにするには」 を参照して ください。

4 ユーザーおよび権限を作成します。 SQL ステート メン ト または PCC を使用して、 ユーザー アカウン トおよ

び当該ユーザーの権限を作成します。 この手順は、混合またはデータベース セキュ リティでのみ必要とな り

ます。

ユーザーのアクセス権を付与する も簡単な方法については、 『Pervasive PSQL User's Guide』 の 「PervasivePSQL エクスプローラーを使用してすべてのユーザーに権限を割り当てるには」 を参照してください。

5 データベースの Btrieve セキュ リティに [混合] または [データベース] を設定します。

125

Page 142: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL セキュ リ テ ィ

この手順の詳細については、 『Pervasive PSQL User's Guide』 の 「データベースのセキュ リティ ポ リシーを設

定または変更するには」 を参照して ください。

6 オペレーティング システムでデータ ファ イルをセキュ リティ保護します。 混合またはデータベース セキュ

リティの場合、これでユーザーは、オペレーティング システムにおけるデータ ファ イルへのアクセス権を何

も持っていなくても、 データにアクセスできるよ うにな り ます。 ファ イルへのセキュ リティ保護されたアク

セスに関する情報は、 オペレーティング システムのドキュ メン ト を参照してください。

ト ラ ンザクシ ョ ナル イ ン ターフ ェ イス セキュ リ テ ィ の作業の概要 次の表は、異なるセキュ リ ティ モデルを使用するために必要となる作業の基本レベルを示しています。セキュ リ

ティ モデルを実装するために必要な作業については、 「セキュ リ ティの作業」 を参照してください。

表 32 セキュ リ テ ィ のセ ッ ト ア ッ プ作業の概要

セキュ リ テ ィ モデル

認証 / 許可 動作および高レベル セ ッ ト ア ッ プ作業の概要

ク ラシッ ク オペレーティング システム /オペレーティング システム

ユーザーにすべてのデータベース ファ イルへのファ イル アクセス権限

を付与します。

よ りアクセスを制限するために、 Btrieve ファイルにオーナー ネームを

追加します (任意)。

混合 オペレーティング システム /データベース

このセキュ リ ティ モデルは、 ワークグループ エンジンを使用している

場合はク ラシッ ク モデルと同様の動作をするこ とに注意してください。

オペレーティング システムでユーザーを設定します。 ユーザーはこの

ユーザー名およびパスワード と対照して認証されます。

個別でユーザーにセキュ リ ティ を設定したい場合は、 Pervasive PSQLControl Center を使って、 データベース セキュ リ ティで同じ名前付けを

したユーザーを設定します。 認証は OS レベルで発生しますが、 データ

ベース権限はデータベースに保存されるため、オペレーティング システ

ムのユーザー名とデータベースのユーザー名は一致していなければな

り ません。

Pervasive PSQL Control Center または SQL ステート メン ト を使って、ユー

ザーのデータベース権限を定義します。も う 1 つの方法と して、PUBLICグループに権限のセッ ト を定義します。グループ PUBLIC から権限を継

承する、 認証されたすべての OS ユーザーは、 PUBLIC と同じ権限を持

ちます。 どのユーザーも、 PUBLIC に与えられた権限よ り低い権限を持

つこ とはあ り ません。

データベース データベース /データベース オペレーティング システムのユーザー名とパスワードは、 PervasivePSQL データベース セキュ リ ティ とは関係あ り ません。

Pervasive PSQL Control Center ユーティ リ ティ または SQL ステート メン

ト を使って、 ユーザーを設定します。

Pervasive PSQL Control Center または SQL ステート メン ト を使って、デー

タベース権限を定義します。

Pervasive PSQL Control Center の設定プロパティを使って、認証資格情報

の渡し方を指定します。 この手順は、 新しい設定プロパティの 「ク ライ

アン ト資格情報の入力要求」 および 「ク ライアン ト保持の資格情報の容

認」 を参照します。

126

Page 143: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ト ラ ンザクシ ョ ナル イ ン ターフ ェ イス セキュ リ テ ィ のク イ ッ ク ス ター ト

ト ラ ンザクシ ョ ナル イ ン ターフ ェ イス セキュ リ テ ィ のクイック スタート

このセクシ ョ ンでは、 オペレーティング システムで Btrieve データ ファ イルをセキュ リティ保護する一方、 デー

タベース ユーザーには引き続きデータへのアクセスを許可するための、 も簡単な方法についての手順を説明し

ます。

この手続きが完了したら、アプリ ケーシ ョ ンを介してデータにアクセスするためのデータベース ユーザー権利に

影響を与えるこ とな く、 データ ファ イルに対するオペレーティング システム ユーザー権利を取り消すこ とがで

きます。

メ モ データベース エンジンがインス トールされているコンピューターに、 管理者権限を持つオペレーティ

ング システム ユーザーと して、または Pervasive_Admin セキュ リティ グループのメンバーであるユーザーと

してログインする必要があ り ます。

1 Pervasive PSQL Control Center (PCC) を起動します。 PCC の起動方法については、 『Pervasive PSQL User'sGuide』 の 「Windows での PCC の起動」 を参照して ください。

2 作業したいデータベース エンジンが PCC に登録されていない場合は、 直ちに登録します。 データベース エンジンの登録方法については、 『Pervasive PSQL User's Guide』 の 「 リモート サーバー エンジンを登録するに

は」 を参照してください。

3 登録されているエンジンのデータベースを展開します (ノードの左にある展開アイコンをク リ ッ ク します)。

4 PCC で、 データベース DefaultDB を右ク リ ッ ク してから [プロパテ ィ ー] をク リ ッ ク します。

5 デ ィ レ ク ト リ ノードを選択し、 [新規] ボタンをク リ ッ ク します。

6 Btrieve ファ イルのパスを入力したら [OK] をク リ ッ ク し、 その後 [適用] をク リ ッ ク します。

ファ イルが複数のディレク ト リに散在している場合は、 ファ イルすべてに共通の上位ディ レク ト リ を指定し

ます。必要であればルート レベルを指定するこ と もできますが、そ うする と、ルート レベルとその下位ディ

レク ト リにあるすべての Btrieve ファ イルが DefaultDB に含まれてしまいます。たとえば、Windows の場合の

ルート レベルは C:\ とな り ます。 『Pervasive PSQL User's Guide』 の 「定義済みの DefaultDB も含め、 既存の

データベースを Pervasive PSQL ファ イルと使用するには」 を参照して ください。

すべてのディレク ト リ を入力する必要はあ り ません。データベースに含めたい Btrieve ファ イルすべてに共通

する 下位のディレク ト リのみ入力します。

7 DefaultDB のセキュ リティを有効にします。プロパティ ダイアログ ボッ クスのツ リーで[セキュ リ ティ] ノー

ドをク リ ッ ク します。

8 [データベース セキュ リティ] タブをク リ ッ ク します。

9 [セキュ リ テ ィ を有効にする] をク リ ッ ク します (オンにします)。

10 Master ユーザーに使用するパスワードを入力します。 指示に従って、 2 回入力します。 [OK] をク リ ッ ク し

ます。

これでセキュ リティは有効になり ました。 しかし、 ユーザーは現在のと ころ以前と同様のアクセス権を持っ

ているため、 デフォルトでは OS のユーザー権利に基づいてアクセスが行われます。 次の段階では、 この状

況に対処します。

パスワードは 大 8 バイ トに制限されているので注意してください。 パスワードには、 セ ミ コロン (;) と疑

問符 (?) 以外のあらゆる表示可能な文字を使用できます。

11 [OK] をク リ ッ ク して、 [プロパティ] ダイアログを閉じます。

12 DefaultDB 下の [グループ] を展開 (ノードの左にある展開アイコンをク リ ッ ク) し、 グループ PUBLIC を右ク リ ッ ク します。

127

Page 144: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL セキュ リ テ ィ

13 [プロパテ ィ ー] をク リ ッ ク した後、 ツ リーで [権限] をク リ ッ ク します。

14 [データベース] タブをク リ ッ ク します。

15 必要な権限をク リ ッ ク します。

たとえば、すべての認証ユーザーに読み取り専用の権限を付与したい場合は、 [選択] をオンにします。 この

オプシ ョ ンによ り、 データの読み取り専用の権限がすべてのユーザーに与えられます。 すべてのユーザーに

更新権限を付与する場合は [更新] をオンにし、 その他同様に行います。

ユーザーによって異なる権限を付与する場合は、 グループ アカウン ト (必要な場合) および個々のユーザー

アカウン ト を作成する必要があ り ます。 これは、 SQL で GRANT ステート メン ト を使用するか、 または PCCを使用して行います (「セキュ リ ティの作業」 を参照して ください)。

16 [OK] をク リ ッ ク します。

17 データベース DefaultDB を右ク リ ッ ク してから [プロパテ ィ ー] をク リ ッ ク します。

18 [セキュ リ テ ィ ] をク リ ッ ク し、 [Btrieve セキュ リティ] タブをク リ ッ ク します。

19 [混合] をク リ ッ ク し、 [OK] をク リ ッ ク します。

メ モ 手順 15 を指示どおりに完了するまでは、 [Btrieve セキュ リティ] のポ リシー設定を変更してはいけま

せん。ユーザー アカウン ト を作成していなかったり、 グループ PUBLIC に権限を付与していなかったりする

と、 セキュ リ ティ ポ リシーの変更によって、 すべてのユーザーがデータにアクセスできなくな り ます。

以上の手順によ り、オペレーティング システムによって認証されているユーザーにのみログイン アクセス権

が許可され、 それらのユーザーのアクセス権は、 データベースでそのユーザーに付与した権限によって定義

されるよ うにな り ました。

20 お使いのオペレーティング システムの手順に従って、 オペレーティング システムでデータ ファ イルをセ

キュ リティ保護します。 これで、データベース エンジンを介してデータにアクセスする能力に影響を与える

こ とな く、 オペレーティング システム ユーザーがデータ ファ イルに対するあらゆる権限も持つこ とを拒否

できるよ うにな り ました。

注意 必ずオペレーティング システムでデータ ファ イルをセキュ リティ保護してください。この手順を実行

しないと、ユーザーは依然と してこの処理よ り前の段階と同じレベルの権限によって、オペレーティング システムからファ イルにアクセスできてしまいます。 ユーザーが直接ファイルを変更、 削除できないよ うにす

るには、 ユーザーのデータ ファ イルに対するオペレーティング システム権限を取り消す必要があ り ます。

128

Page 145: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

セキュ リ テ ィ の作業

セキュ リ テ ィ の作業

『Pervasive PSQL User's Guide』 の 「セキュ リ ティの作業」 を参照して ください。

129

Page 146: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL セキュ リ テ ィ

データの暗号化

Pervasive PSQL v11 SP3 には、 Pervasive PSQL 使用時に発生するデータベース関連のネッ ト ワーク ト ラフ ィ ッ ク

を暗号化する機能があ り ます。 この種の暗号化は、 多くの場合 「ワイヤ暗号化」 と呼ばれます。 これは、 データ

がネッ ト ワーク ワイヤ上、あるいはワイヤレスも含め、あらゆる介在するネッ ト ワーク インフラス ト ラ クチャ上

を通る と きに保護されるからです。 ワイヤ暗号化の使用が要求されていないと きは、 アプリ ケーシ ョ ンによって

ネッ ト ワーク上で送信されるデータへの不正アクセスに対する追加の抑止力を提供します。

この暗号化機能は、セキュ リ ティ モデルとは直接関係あ り ません。 どのセキュ リティ モデルも、 ワイヤ暗号化を

オンにして、 またはオンにしないで使用できます。

ワイヤ暗号化の設定プロパテ ィ

ワイヤ暗号化に関連する 2 つの設定があ り ます。 これらの設定は、 サーバーはもちろん、 各ク ライアン ト マシン

で設定する必要があ り ます。 これらの設定の詳細については以下を参照して ください。

「ワイヤ暗号化」

「ワイヤ暗号化レベル」

ワイヤ暗号化の設定にアクセスするには

1 PCC の Pervasive PSQL エクスプローラー で、 次のいずれかを実行します。

a. サーバーの場合は、 [エンジン] ノードの下にあるサーバー名を右ク リ ッ ク します (ノードを展開する

には、 プラス (+) 記号をク リ ッ ク します)。

b. ク ライアン トの場合は、 [ローカル ク ラ イアン ト ] ノードの下にある [MicroKernel ルーター] を右ク

リ ッ ク します (ノードを展開するには、 プラス (+) 記号をク リ ッ ク します)。

2 [プロパテ ィ ー] をク リ ッ ク します。

3 ツ リーで [アクセス] をク リ ッ ク します。

暗号化の注意

製品の本リ リースは、 ネッ ト ワークを通じてデータを渡す前に、 "Blowfish" とい う よ く知られた、 実績のあるパ

ブリ ッ ク ド メ インの暗号化アルゴ リズムを使って暗号化を実行しています。

40 ビッ ト キーを使用する暗号化では、 少量の保護がデータに提供されます。 56 ビッ ト キーを使用する暗号化

では、 解析がよ り困難になり ます。 後に、 128 ビッ ト キーを使用する暗号化は、 一般に も解析が困難である

と見なされています。

メ モ 暗号化を使用する と、 データのネッ ト ワーク スループッ トが低下します。

以前のバージ ョ ン との互換性

以前のバージ ョ ンの Pervasive PSQL はワイヤ暗号化をサポート していなかったため、 これらは、 本リ リースの暗

号化を要求するク ライアン ト またはサーバーと通信するこ とができません。 暗号化をサポート していないク ライ

アン ト またはサーバーは、 暗号化を要求するク ライアン ト またはサーバーに接続しよ う とする と、 エラーを返し

ます。

暗号化の設定

お使いの環境で暗号化の設定をオンにする前に、 まず、 暗号化の必要性について考慮して ください。 状況に応じ

て、 さまざまな方法で暗号化環境を設定するこ とができます。 次の 4 つの一般的な方式を設定できます。

暗号化なし

130

Page 147: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データの暗号化

すべての通信を暗号化

特定のクライアン ト との通信を暗号化

特定のサーバーとの通信を暗号化

暗号化な し

まず 初に、そのデータに暗号化が必要である と考えられる特性があるかど うかを検討します。データは機密か?

権限のないユーザーの管理下にあって利用価値のあるデータか?組織に危害を加えるために利用するこ とができ

るか?これらの質問やその他類似する質問の答えが 「いいえ」 である場合は、 データを暗号化する必要はまった

くなさそ うです。 このよ うな状況では、 暗号化の代償にパフォーマンスの低下を受け入れる メ リ ッ トがあ り ませ

ん。 確信が持てない場合は、 データ セキュ リティのエキスパートにご相談ください。

データを保護する必要がある と しても、 まだ暗号化する必要はない可能性があ り ます。アプリ ケーシ ョ ンを LAN上で単独に実行しており、ネッ ト ワーク インフラス ト ラ クチャの物理的なセキュ リティに満足しているのであれ

ば、 暗号化は必要あ り ません。

特定のク ラ イアン ト との通信を暗号化

次に、あなたのデータベースに接続する大口の取引先がリモート サイ トにある と します。 リモート ク ライアン ト

との通信でのみ暗号化を使用したいと思われるかもしれません。 これは、 リモート ク ライアン トの [ワイヤ暗号

化] を [常時] に設定し、 そのリモート ク ライアン トがアクセスするサーバー値を [必要な場合] に設定するこ

とによって実現できます。 内部ク ラ イアン トはすべて [し ない] に設定します。 このよ うにして、 サーバーは、

暗号化を要求する リモート ク ライアン ト と通信する場合にのみ暗号化を使用するよ うになり ます。

特定のサーバーとの通信を暗号化

立場が逆転して、お使いの環境に 1 つ以上のリモート サーバーが入っており、それらのサーバーはあなたが 100%信頼していないネッ ト ワーク インフラス ト ラ クチャによってアクセスされているものと します。 この場合は、そ

れらのサーバー値を [常時] に設定し、 ローカル ク ラ イアン ト値を [必要な場合] に設定するこ とができます。

そ うする と、 暗号化を要求する リモート サーバーとの通信のみが暗号化されます。

すべての通信を暗号化

後に、 Pervasive ベースのアプリ ケーシ ョ ンをほとんどの場合 WAN や VPN、 またはその他の 100% 信頼してい

ない外部ネッ ト ワーク上で実行している場合は、 データベース通信を 100% 暗号化したいと思われるかもしれま

せん。 この状況では、 すべてのクライアン ト とサーバーで、 ワイヤ暗号化 に [常時] を設定します。

暗号化レベルの選択

ク ラ イアン トおよびサーバーは暗号化された通信を必要とする という結論に達したら、 どの抑止レベルが要望に

沿うかを決定する必要があ り ます。

Pervasive Software Inc. は、 お客様の特定の要望に沿った暗号化レベルについてアドバイスするこ とはできません

ので、お客様が適切なデータ セキュ リティ エキスパート を交えて検討される際に情報提供できるよ う、いくつか

のガイ ド ラ インを用意しています。 これらのガイ ド ラ インは、 暗号化されたデータを第三者から読み取られたり

デコード されたり しないこ とを Pervasive が保証するものではあ り ません。 あらゆる暗号化方式と同様に、 「解読

できない」 コードの類はあ り ません。暗号化の種類によって解析する難易度が変化するだけです。Pervasive PSQLの 128 ビッ ト暗号化は、 極めて専門的な個人ハッカーが持てる技術と設備をもってしても、 デコードするこ とが

「非常に困難」 である と認められています。

低度 (40 ビ ッ ト ) 暗号化

データが渡ってはいけない人の手に渡ってしまったと しても、 そのデータによって組織や顧客が被る被害レベル

がそれほど深刻でない場合には、 この暗号化レベルの使用を検討して ください。 低度の暗号化を検討するも う 1つの判断材料は、 単純に、 データがワイヤを通っている 中に不用意なネッ ト ワーク監視者にデータを読み取ら

れたくないかど うかという こ とです。

131

Page 148: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Pervasive PSQL セキュ リ テ ィ

中度 (56 ビ ッ ト ) 暗号化

セキュ リティに無頓着な監視者に備えてもっと強力な保護が何か必要である と確信しているが、 強レベルのセ

キュ リティが必要だとは思わないよ うな状況では、 この暗号化レベルの使用を検討して ください。

高度 (128 ビ ッ ト ) 暗号化

データにクレジッ ト カード番号、社会保障番号、金融口座番号、または法律で保護されているその他の情報など、

非常に秘匿性の高い情報が含まれているよ う な状況では、 この暗号化レベルの使用を検討して ください。 特に、

お使いのデータベースが、 インターネッ ト シ ョ ッピング Web サイ トやオンライン証券会社 Web サイ ト など、 慎

重を期するデータを含んでいるこ とで知られるネッ ト ワークのエンティティ と関連付けられている場合には、 こ

の暗号化レベルを考慮してください。 また、所属する組織が以前にデータ セキュ リティを解析されそ うになった

こ とがある場合には、 この暗号化レベルを検討して ください。

暗号化の影響

暗号化を使用する と、 ク ラ イアン ト / サーバーのパフォーマンスは低下します。 暗号化をオンにした場合は、 送

信側でデータの各断片を暗号化し、 受信側でそれをデコードする必要があ り ます。 暗号化なしで同様の操作を実

行した場合と比べ、 この処理には余分な CPU サイクルが必要とな り ます。暗号化のレベルはパフォーマンスに影

響しません。 暗号化の使用によるパフォーマンスの低下は、 3 つの暗号化レベルのうちどれを選択しても、 おお

よそ同じです。

オーナー ネームの暗号化

Pervasive PSQL は、ディ スク上のデータ ファ イルの暗号化をサポート します。データ ファ イルがディ スクに書き

込まれる際に暗号化を必要とする場合、 各ファイルにオーナー ネームを設定する必要があ り ます。

詳細については、 「オーナー ネーム」 を参照してください。

132

Page 149: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

8

ログ、 バッ クア ッ プおよび復元

ログ、 バッ クアップおよびデータの復元について

Pervasive PSQL には、 データ整合性を確実にし、 オンライン バッ クアップおよびデータ被害の復旧をサポートす

るいくつかの強力な機能があ り ます。

「 ト ランザクシ ョ ン ログおよびト ランザクシ ョ ン一貫性保守」

「アーカイブ ログおよび Continuous オペレーシ ョ ンについて」

「アーカイブ ログの使用」

「Continuous オペレーシ ョ ンの使用」

「Backup Agent および VSS Writer によるデータ バッ クアップ」

133

Page 150: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ログ、 バッ クア ッ プおよび復元

ト ラ ンザクシ ョ ン ログおよび ト ラ ンザク シ ョ ン一貫性保守

Pervasive PSQL はト ランザクシ ョ ンに関わるデータベース オペレーシ ョ ンのデータ整合性を 「 ト ランザクシ ョ ン

ログ」 および 「 ト ランザクシ ョ ン一貫性保守」 の 2 つのレベルで保証します。

こ こでは、 以下の項目について説明します。

「これらの機能の使用法」

「機能の比較」

「どちらの機能を使用するか」

「ログの機能」

「関連項目」

これらの機能の使用法

これらの機能はいずれも、 Pervasive PSQL Control Center 内の設定を使用して、 または Distributed Tuning Interfaceを使用してプログラムから、データベース エンジン内で有効または無効にするこ とができます。「 ト ランザクシ ョ

ン一貫性保守」 および 「 ト ランザクシ ョ ン ログ」 を参照してください。

「 ト ランザクシ ョ ン一貫性保守」 のデフォルト値はオフで、「 ト ランザクシ ョ ン ログ」 のデフォルト値はオンです。

機能の比較

これらの機能は共に複数ファイルの ト ランザクシ ョ ン ア ト ミ シティを提供し、確実にデータ ファ イルの一貫性を

保ち、 未完了のト ランザクシ ョ ンはどのデータ ファ イルにも絶対に書き込まれないよ うにします。

ア ト ミ シテ ィ とは、 ト ランザクシ ョ ン内のあるデータ オペレーシ ョ ンが完了しなかった場合にはト ランザクシ ョ

ン内のどのオペレーシ ョ ンも完了させないこ とを意味します。 ア ト ミ ッ クな変更はデータベースに部分的または

あいまいな変更を残しません。個々のファイルに対する変更は、 ト ランザクシ ョ ン ログおよびト ランザクシ ョ ン

一貫性保守がオンでもオフでも、 常にア ト ミ ッ クです。 ただし、 ト ランザクシ ョ ンでは、 複数ファイルへの変更

をグループ化して 1 つのア ト ミ ッ ク グループにするこ とができます。これら複数ファイルの ト ランザクシ ョ ンの

ア ト ミ シティは、 アプ リ ケーシ ョ ン内で ト ランザクシ ョ ンを使用し、 ト ランザクシ ョ ン ログまたは ト ランザク

シ ョ ン一貫性保守がオンに設定されている場合にのみ、 MicroKernel が保証します。

これらの利点に加え、「 ト ランザクシ ョ ン一貫性保守」 はシステム障害時に、障害前にアプリ ケーシ ョ ンに正常終

了のステータス コードを返した ト ランザクシ ョ ンの結果がすべてデータ ファ イルに含まれているこ とを保証し

ます。

高パフォーマンスが求められる場合には、 「 ト ランザクシ ョ ン ログ」 はこの保証を提供できません。 「 ト ランザク

シ ョ ン一貫性保守」 は、エンジンが正常終了のステータス コードを返す前に完了した ト ランザクシ ョ ンを完全に

ト ランザクシ ョ ン ログに書き出すこ とを確実にするため、 ト ランザクシ ョ ン ログはロガー スレッ ドがログ バッ

ファーをディ スクにフラ ッシュするよ うに指示される とすぐに正常終了のステータス コードを返します。

[ ト ランザクシ ョ ン ログ] は [ ト ランザクシ ョ ン一貫性保守] のサブセッ トです。 つま り、 [ ト ランザクシ ョ ン一

貫性保守] の設定をオンにする と、 ロギングが行われ、 [ ト ランザクシ ョ ン ログ] の設定はデータベース エンジ

ンによって無視されます。

[ ト ランザクシ ョ ン ログ] と [ ト ランザクシ ョ ン一貫性保守] の主な違いを次の表で示します。

表 33 [ ト ラ ンザクシ ョ ン ログ] と [ ト ラ ンザクシ ョ ン一貫性保守] : 利点

機能 複数フ ァ イル間でのデータの整合性と

ト ラ ンザクシ ョ ン ア ト ミ シテ ィ の保証

正常終了のステータ ス コー ド を返し たすべての完

了済み ト ラ ンザクシ ョ ンに対する コ ミ ッ ト の保証

トランザクション ログ 可 不可

トランザクション一貫性保守 可 可

134

Page 151: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ト ラ ンザクシ ョ ン ログおよび ト ラ ンザクシ ョ ン一貫性保守

どち らの機能を使用するか

高のパフォーマンスを得るためには、 ト ランザクシ ョ ンの安全性のニーズに合った 低レベルのロギングを使

用するこ とができます。適切なロギング レベルを決定するには、アプリ ケーシ ョ ン ベンダーに確認するこ とが

良の方法です。 同じコンピューター上の Pervasive PSQL を使用する複数のアプリ ケーシ ョ ンがある場合は、 それ

らアプリ ケーシ ョ ンのなかで要求される 高レベルのロギングを使用する必要があ り ます。

データ ファ イルが 1 つのみであるか、複数データ ファ イルによる ト ランザクシ ョ ンを行うアプリ ケーシ ョ ンがな

い場合は、 一般的に 「 ト ランザクシ ョ ン一貫性保守」 または 「 ト ランザクシ ョ ン ログ」 を使用する必要はあ り ま

せん。 このよ うな状況下では、 Pervasive PSQL はログの有無に関わらず、 各データ ファ イルの内部的な整合性を

保証します。

ト ラ ンザクシ ョ ン ログ Pervasive PSQL アプ リ ケーシ ョ ンの う ち 1 つでも複数データ ファ イル間で ト ランザクシ ョ ンを行う アプ リ ケー

シ ョ ンがある場合は、 [ ト ランザクシ ョ ン ログ] をオンにします。 「 ト ランザクシ ョ ン ログ」 を使用しないと、

Pervasive PSQL ではト ランザクシ ョ ンの複数ファイルのア ト ミ シティ または複数ファイルのデータ整合性を保証

するこ とはできません。

システム障害が発生した場合、 このレベルのロギングでは、完了した各ト ランザクシ ョ ンがデータ ファ イルに書

き込まれるこ とが保証されません。

ト ラ ンザクシ ョ ン一貫性保守 Pervasive PSQL アプリ ケーシ ョ ンのうち 1 つでも、 複数データ ファ イル間の完了した ト ランザクシ ョ ンが確実に

データ ファ イルに書き込まれるよ う保証するこ とが必要な場合は、 「 ト ランザクシ ョ ン一貫性保守」 をオンに設

定します。

システム障害が発生した場合、このレベルのロギングは正常終了した各ト ランザクシ ョ ンがデータ ファ イルに書

き込まれるこ とを保証します。

ログの機能

これらの機能は、 オペレーシ ョ ンではなく ト ランザクシ ョ ンのア ト ミ シティを確実にするものであるこ とに注意

してください。SQL を使用する場合、 ト ランザクシ ョ ンは BEGIN ステート メン ト または START TRANSACTIONステー ト メ ン ト と END または COMMIT ステー ト メ ン ト の間にある一連のオペレーシ ョ ン と定義されます。

Btrieve を使用する場合、 ト ランザクシ ョ ンは Start Transaction オペレーシ ョ ンと End Transaction オペレーシ ョ ン

の間にある一連のオペレーシ ョ ンと定義されます。

すべてのデータ ファ イルの追加および更新はログ バッファーに格納されます。 ト ランザクシ ョ ンが完了するか

( ト ランザクシ ョ ン一貫性保守)、バッファーがいっぱいになるか、 「起動時間制限」 に達する ( ト ランザクシ ョ ン

一貫性保守またはト ランザクシ ョ ン ログ) と、 バッファーはト ランザクシ ョ ン ログ ファ イルに書き込まれ (フ

ラ ッシュされ) ます。

表 34 ト ラ ンザクシ ョ ン ログと ト ラ ンザクシ ョ ン一貫性保守 : 機能

機能 ログ バッ フ ァーをデ ィ スクに書き込むタ イ ミ ング

トランザクション ログ ログ バッファーがいっぱいになったと き、 または [起動時間制限] の設定値に達したと きに、

ログ バッファーはログ ファ イルに書き込まれます。 各 End Transaction オペレーシ ョ ンの正常

終了を示すステータス コードは、 ロガ- スレッ ドがバッファーをディ スクにフラ ッシュする

よ うに指示される とすぐにアプリ ケーシ ョ ンに返されます。

トランザクション一貫性保守 End Transaction オペレーシ ョ ンごとに、 ログ バッファーはト ランザクシ ョ ン ログ ファイルに

書き込まれます。 各 End Transaction オペレーシ ョ ンの正常終了を示すステータス コードは、

ログのディ スク書き込みが正常終了するまでアプ リ ケーシ ョ ンに返されません。 ト ランザク

シ ョ ンには含まれない Insert または Update オペレーシ ョ ンの場合は、 ログ バッファーがいっ

ぱいになったと き、 または [起動時間制限] の設定値に達したと きにログ バッファーがログ

ファ イルに書き込まれます。

135

Page 152: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ログ、 バッ クア ッ プおよび復元

ト ランザクシ ョ ン ログの場合、エンジンが ト ランザクシ ョ ン終了のオペレーシ ョ ンを受け取り、ロガー スレッ ド

にログ バッファーをディ スクにフラ ッシュする指示を出すこ とに成功した場合、エンジンはアプリ ケーシ ョ ンに

正常終了のステータス コードを返し ト ランザクシ ョ ンが開始します。 ト ランザクシ ョ ン一貫性保守の場合、エン

ジンはロガー スレ ッ ドがバッファーをディ スクに書き込むこ とに成功したこ とを示すまで正常終了のステータ

スを返しません。

ト ランザクシ ョ ン ログ ファ イル セグメン トは 「 ト ラ ンザクシ ョ ン ログのデ ィ レ ク ト リ」 に設定したロケーシ ョ

ンに保存されます。 ログ セグメン トは *.LOG という名前で、 00000001 から FFFFFFFF までのプレフ ィ ッ クスが

付きます。

メ モ ト ランザクシ ョ ン ログまたはト ランザクシ ョ ン一貫性保守が有効な場合、すべてのオペレーシ ョ ンは、

ト ランザクシ ョ ン内で行われたかど うかに関わらず、 ログ ファ イルに書き込まれます。 ただし、 ト ランザク

シ ョ ン内で実行されたオペレーシ ョ ンのみがア ト ミ ッ クであるこ とが保証されます。システム障害が発生し、

ト ランザクシ ョ ン ログがロール フォワード される場合、 完了した ト ランザクシ ョ ンのみがデータ ファ イル

にコ ミ ッ ト されます。 対応する End Transaction オペレーシ ョ ンを持たないオペレーシ ョ ンは拒否され、 デー

タ ファ イルにコ ミ ッ ト されません。

ヒ ン ト データベースの使用率が高い場合には、 データ ファ イルが存在するのとは物理的に異なるボ リ ュー

ムに ト ランザクシ ョ ン ログが保持されるよ うにシステムを構成する必要があ り ます。一般的に高負荷の下で

は、単一ド ライブで I/O 帯域幅を競う代わりに、 ログ ファ イルへの書き込みとデータ ファ イルへの書き込み

を別々のド ラ イブに分ける方がパフォーマンスがよ くな り ます。 全体的なディ スク I/O は減少しませんが、

ロードはディ スク コン ト ローラー間で効率よ く分散されます。

設定プロパティの [ト ラ ンザク シ ョ ン ログのデ ィ レ ク ト リ] 設定を使用して、 ト ランザクシ ョ ン ログのロ

ケーシ ョ ンを指定するこ とができます。

システム障害の発生時期が、ログ ファ イルが書き込まれた後で、コ ミ ッ ト されたオペレーシ ョ ンがシステム ト ラ

ンザクシ ョ ン内でデータ ファ イルにフラ ッシュされる前であれば、コ ミ ッ ト されたオペレーシ ョ ンが失われるこ

とはあ り ません。 コ ミ ッ ト されたオペレーシ ョ ンをフラ ッシュするには、 影響を受けるファイルをシステム障害

後に開き、 オペレーシ ョ ンを実行する必要があ り ます。 ファ イルを開いてオペレーシ ョ ンの実行を試みる と、 シ

ステム障害の発生時点で影響を受けていたファイルにデータがロール フォワード されます。単にデータベース エンジンを再起動する と、 ロール フォワードは呼び出されず、 データの一貫性が保たれません。

メ モ ロール フォワード されたファイルに関連付けられているログ ファ イルは自動的に削除されません。 こ

れは、 ログ ファ イルが 2 つ以上のデータ ファ イルに関連付けられている可能性があるからです。

この機能によ り、個々のク ライアン ト ト ランザクシ ョ ンは、成功を示すステータス コードをすばやく受け取るこ

とが可能になる と同時に、複数のク ライアン ト ト ランザクシ ョ ンをグループにまとめてデータ ファ イルに順次書

き出すこ とでパフォーマンスが向上する という利点が得られます。

データベース サーバーのデータ ファ イルが格納されているボ リ ュームのディ スクに障害が発生し、 アーカイブ

ログからデータを復元する必要がある場合、 エンジンはト ランザクシ ョ ン ログ ファ イルをロール フォワード し

ません。アーカイブ ログにはト ランザクシ ョ ン ログのすべてのオペレーシ ョ ンが含まれているため、 ト ランザク

シ ョ ン ログをロール フォワードする必要があ り ません。

ヒ ン ト システム障害後、 すべてのデータ ファ イルを開き、 それらのファイルに対して Stat オペレーシ ョ ン

または読み取りオペレーシ ョ ンを実行して ください。すべてのデータが復元されているこ とを確認できたら、

古いログ ファ イルは安全な場所に保管してもかまいません。

136

Page 153: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ト ラ ンザクシ ョ ン ログおよび ト ラ ンザクシ ョ ン一貫性保守

関連項目

詳細については、 以下を参照して ください。

「 ト ラ ンザクシ ョ ン一貫性保守」

「 ト ラ ンザクシ ョ ン ログ」

「 ト ラ ンザクシ ョ ン ログのデ ィ レ ク ト リ」

137

Page 154: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ログ、 バッ クア ッ プおよび復元

アーカ イブ ログおよび Continuous オペレーシ ョ ンについて

この製品は、オンライン バッ クアップおよびデータ被害復旧をサポートするための相互に排他的な 2 つの機能を

提供します。

アーカ イ ブ ログを使用する と、 後のバッ クアップ以降のデータベース オペレーシ ョ ンのログを保存するこ と

ができます。システム障害が発生した場合、バッ クアップからデータ ファ イルを復元し、 ログ ファ イルから変更

をロールフォワード して、 システムをシステム障害発生前の状態に戻すこ とができます。

注意 アーカイブ ロギングは、 アーカイブ ログからの復元後、 すべてのデータ ファ イルが一貫性のある状

態になるこ とを保証しません。速度向上のために、データベース エンジンはログ関数から成功を示すステー

タス コードが返されるのを待たずに、 ログ バッファーを空にします。 そのため、 ディ スク フルやオペレー

ティング システムの書き込みエラーなどのめったに起こらない状況において、データ ファ イルで正常に行わ

れた更新がアーカイブ ログに記録されないこ とがあ り ます。また、アーカイブ ログではすべてのファイルの

ログをと る必要がないため、複数のファイルの更新を行う ト ランザクシ ョ ンがある と き、そのうち一部のファ

イルのログしかアーカイブしていない場合は、 ト ランザクシ ョ ンがアーカイブ ログに完全に記録されないこ

とがあ り ます。 結果と して、 あるファ イルがほかのファイルと矛盾する可能性があ り ます。 ト ランザクシ ョ

ンを使用しており、 複数ファイルの ト ランザクシ ョ ン ア ト ミ シティが必要な場合は、 「 ト ランザクシ ョ ン ログおよびト ランザクシ ョ ン一貫性保守」 を参照して ください。

Continuous オペレーシ ョ ンを使用する と、 データベース エンジンが実行中でユーザーが接続中でもデータベー

ス ファ イルのバッ クアップを行う こ とができます。Continuous オペレーシ ョ ンの開始後、データベース エンジン

はアクティブなデータ ファ イルを閉じ、 すべての変更をテンポラ リ データ ファ イル (デルタ ファ イルと呼びま

す) に格納します。 Continuous オペレーシ ョ ンが機能している間に、 データ ファ イルのバッ クアップを実行しま

す。 バッ クアップ中にデータ ファ イルに対して行われた変更はすべてデルタ ファ イルに記録されます。

バッ クアップが完了したら、Continuous オペレーシ ョ ンを解除します。データベース エンジンはデルタ ファ イル

を読み込み、 元のデータ ファ イルにすべての変更を適用します。 このデルタ ファ イルは、 Continuous オペレー

シ ョ ン中に多くの変更が行われた場合、 元のデータ ファ イルのサイズを超えるこ とがあ り ます。

Continuous オペレーシ ョ ンが設定されているデータ ファ イルは、リ レーシ ョナル インターフェイスから ト ランザ

クシ ョナルインターフェイスに至るまで削除が行えません。 さ らに、 このファ イルはキーの変更などファイル構

造の変更も受け付けません。

メ モ アーカイブ ログおよび Continuous オペレーシ ョ ンは相互に排他的な機能で、 同時に使用するこ とはで

きません。

アーカ イブ ログと ト ラ ンザクシ ョ ン ログの違い

ト ランザクシ ョ ン ログは、 システム障害時のデータの完全性を守るためにデザインされたも う 1 つの機能です

が、 アーカイブ ログとは直接関連を持ちません。 ト ランザクシ ョ ン ログは、 アーカイブ ログまたは Continuousオペレーシ ョ ンのいずれかと同時に機能させるこ とができます。 ト ランザクシ ョ ン ログは、短期間のログ ファ イ

ルを使用して、 ト ランザクシ ョ ンが確実にディ スクに書き込まれるよ うにします。 ト ランザクシ ョ ン ログは、 シ

ステム ト ランザクシ ョ ンのために、 完了したク ライアン ト ト ランザクシ ョ ンが物理データ ファ イルへ移行する

と きに、頻繁にリセッ ト されます。 システム障害が発生する と、 データベース エンジンが再起動されたと きに ト

状況 ... 使用する機能

バッ クアップ実行中もデータベース アプリ ケーシ ョ ンを実行し続ける必要がある。 Continuous オペレーシ ョ ン

バッ クアップを実行するのにエンジンをシャ ッ ト ダウンするこ とができる。 アーカイブ ログ

138

Page 155: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

アーカ イブ ログおよび Continuous オペレーシ ョ ンについて

ランザクシ ョ ン ログを読み込み、システム障害よ り前に完了していた ト ランザクシ ョ ンをデータ ファ イルにいっ

きに移します。

アーカイブ ログは、 各システム ト ランザクシ ョ ンの完了時に書き込まれるので、 システム ト ランザクシ ョ ン中

にシステム障害が起こらない限り、 アーカイブ ログおよびト ランザクシ ョ ン ログは適切に同期しています。

ト ランザクシ ョ ン ログの詳細については、 「 ト ランザクシ ョ ン ログおよびト ランザクシ ョ ン一貫性保守」 を参照

してください。

フ ァ イルの復元が必要になったら

バッ クアップからデータ ファ イルを復元する必要のあるシステム障害が発生した場合、アーカイブ ログを使って

バッ クアップから復元してデータベースの動作状態をシステム障害の時点に回復するこ とができます。

アーカイブ ログを使用せずに同様の障害が起きた場合 (たとえば、 バッ クアップの実行に Continuous オペレー

シ ョ ンを使用していた場合)、 後のバッ クアップからシステム障害の間のデータベースの動作を回復するこ とは

できません。

この章では、 これ以降、アーカイブ ログおよび Continuous オペレーシ ョ ンに関連するオプシ ョ ンと手順について

説明します。

表 35 システム障害後のデータ回復の限界

アーカ イ ブ ログ ... 障害後に回復できないデータ

オン 障害時に未完了のト ランザクシ ョ ン

オフ データ ファ イルの 後のバッ クアップ以降に起きたすべてのデータベース

オペレーシ ョ ン

139

Page 156: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ログ、 バッ クア ッ プおよび復元

アーカ イブ ログの使用

このセクシ ョ ンでは、アーカイブ ログの設定、データ ファ イルのバッ クアップおよび復元を行う方法について説

明します。 この章は、 以下のト ピッ クに分かれています。

「全般的な手順」

「アーカイブ ログの設定」

「ロール フォワード コマンド」

全般的な手順

アーカイブ ログが適切に動作するためには、明確に定義された手順に従って設定する必要があ り、バッ クアップ

からの復元が必要になった場合には別の手順が必要です。

注意 この手順のいずれかの段階が省かれたり、 十分でない場合、 障害発生前の状態にデータを復元するこ

とができません。

アーカ イブ ログを適切に使用するには

1 まだ動作していない場合は、アーカイブ ログをオンにします。設定の詳細については 「アーカイブ ログの設

定」 を参照してください。

2 データベース エンジンをシャ ッ ト ダウンします。

3 データ ファ イルをバッ クアップします。

4 バッ クアップに成功したら、 既存のアーカイブ ログをすべて削除します。

注意 データ ファ イルでの作業再開前にそれぞれのログ ファ イルを削除します。 バッ クアップ データ ファ

イルとそのログ ファ イルが同期しているこ とは、 回復作業を成功させるための重要事項です。

5 データベース エンジンを再起動します。

バッ クア ッ プからデータ フ ァ イルを復元し、 アーカ イブ ログの変更を適用するには

メ モ ハード ディ スクがク ラ ッシュし、 アーカイブ ログおよびデータ ファ イルの両方がそのディ スク上に

あった場合は、 この手順でアーカイブ ログをロール フォワードするこ とはできません。

1 システム障害後コンピューターを再起動したら、データベース エンジンが実行中でないこ とを確認し、復元

しよ う と しているデータ ファ イルにほかのデータベース エンジンがアクセスしていないこ とを確認して く

ださい。

2 バッ クアップからデータ ファ イルを復元します。

3 データベース エンジンを起動し、どのよ うなアプリ ケーシ ョ ンもエンジンに接続していないこ とを確認しま

す。

注意 アーカイブ ログがデータ ファ イルに適用される前にデータベース アクセスが行われないよ うにする

こ とは重要です。 ほかのデータベース エンジンがファ イルにアクセスしていないこ とを確認して ください。

システム障害にあったのと同じエンジンを使用してアーカイブ ログをロール フォワードする必要があ り ま

す。

140

Page 157: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

アーカ イブ ログの使用

4 「ロール フォワード コマンド」 に説明されているロール フォワード コマンドを発行します。

5 ロール フォワードが正常に完了したら、 データベース エンジンを停止し、 データ ファ イルの新しいバッ ク

アップを作成します。

6 データ ファ イルが正常にバッ クアップできたら、 アーカイブ ログ ファ イルを削除します。 これで、 データ

ベース エンジンを再起動し、 アプ リ ケーシ ョ ンがデータ ファ イルにアクセスできます。

アーカ イブ ログの設定

アーカイブ ログの設定には 2 つの段階があ り ます。

アーカイブ ログ機能を有効にする

アーカイブするファイルとそれぞれのログ ファ イルを指定する

メ モ これらの処理を行うには、 データベース エンジンが起動しているコンピューターに対し管理者権限を

持っているか、 データベース エンジンが起動しているコンピューター上の Pervasive_Admin グループのメン

バーである必要があ り ます。

アーカ イブ ログを有効にするには

1 オペレーティング システムの[ス ター ト ] メニューまたはアプ リ画面から Control Center にアクセスします。

2 Pervasive PSQL エクスプローラーで、 ツ リーのエンジン ノードを展開します (ノードの左の展開アイコンを

ク リ ッ ク します)。

3 アーカイブ ログを指定するデータベース エンジンを右ク リ ッ ク します。

4 [プロパティー] をク リ ッ ク します。

5 ツ リー内で [データ整合性] をク リ ッ ク し、 そのカテゴ リに含まれるオプシ ョ ンの設定内容を表示します。

6 [選択フ ァ イルのアーカ イブ ロギング] チェ ッ クボッ クスをク リ ッ ク します。

7 [OK] をク リ ッ ク します。

設定を有効にするにはエンジンの再起動が必要であるこ とを知らせる メ ッセージが表示されます。

8 [はい] をク リ ッ ク して、 エンジンを再起動します。

アーカ イブする フ ァ イルを指定するには

アーカイブ ログを実行するファイルは、そのファイルを含むボ リ ュームに作成したアーカイブ ログ設定ファイル

に、 エン ト リ を追加するこ とによって指定します。 設定ファイルは、 以下の方法で設定します。

1 ログを行う対象のデータ ファ イルが存在する物理ド ライブのルート ディ レク ト リに、 \BLOG ディ レク ト リ

を作成します。 (マップされたルート ディレク ト リは使用しないでください)。 ファ イルが複数のボリ ューム

に分かれている場合は、 その各ボリ ュームに \BLOG ディ レク ト リ を作成します。

たとえば、 C:\ および D:\ にデータ ファ イルが存在し、 どちらのド ライブもデータベースと同じコンピュー

ター上に存在する物理ド ライブである場合、 次のよ うに 2 つの BLOG ディ レク ト リ を作成します。

C:\BLOG\

D:\BLOG\

メ モ Linux では、 ログ ディ レク ト リの名前は blog で、PVSW_ROOT 環境変数で指定したディ レク ト リ (デ

フォルトでは /usr/local/psql) に作成する必要があ り ます。

141

Page 158: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ログ、 バッ クア ッ プおよび復元

2 各 \BLOG ディ レク ト リに、 空の BLOG.CFG ファ イルを作成します。 BLOG.CFG の作成には、 メモ帳のよ う

な任意のテキス ト エディ ターを使用して ください。 Linux では、 ファ イルは blog.cfg (小文字) である必

要があ り ます。

3 各 BLOG.CFG ファ イルに、 そのド ライブ上にあるアーカイブ ログを実行するデータ ファ イルのエン ト リ を

入力します。 エン ト リの入力には、 以下の形式を使用します。

\ パス 1\ データ フ ァ イル 1[=\ パス 2\ ログ フ ァ イル 1]

エン ト リにはスペースを使用せず、 1 行以内に収める必要があ り ます。 (各行 大で半角 256 文字) 余裕があ

れば同一行に複数のエン ト リ を置く こ とができます。 エン ト リはスペースで区切り ます。

注意 ログをと るデータ ファ イルすべてに異なるログ ファ イルを使用する必要があ り ます。 2 つ以上のデー

タ ファ イルに同一のログ ファ イルを使用する と、 MicroKernel はロールフォワードが必要になったと きにそ

のログ ファ イルを使用できません。

ログ ファ イルの名前を入力しない場合は、ログ ファ イルを 初に開いた際に、元のファイル名に拡張子 .LOGを付けたファイル名が割り当てられます。 たとえば、 ファ イル B.BTR では、 ログ ファ イルに B.LOG が割り

当てられます。

注意 データベースのすべてのファイルのログをと る必要はあ り ません。 ただし、 データベースに参照整合

性 (RI) 規則が指定されている場合は、各 RI の関係に含まれるすべてのファイルのログを指定するかまたは

1 つも指定しないでください。 RI の関係に含まれるファイルのサブセッ トのみのログを指定する と、 システ

ム障害後にアーカイブ ログをロール フォワードする と き、 RI 規則違反となり ます。

以下は、 ド ラ イブ C 上にある BLOG.CFG のエン ト リ の例です。 すべてのエン ト リ は、 同じ結果にな り ます。

C:\DATA\B.BTI の処理は、 C:\DATA\B.LOG に記録されます。

\data\b.bti

\data\b.bti=\data\b.log

\data\b.bti=c:\data\b.log

次の例では、 C:\DATA\B.BTI の処理が、 ログ ファ イル D:\DATA\B.LGF に記録されます。 これは、 アーカイブ

ログ ファ イルが、 データ ファ イルと同じ ド ライブ上に存在する必要がなく、 拡張子が 「.LOG」 である必要もな

いこ とを表します (拡張子 「.LOG」 はデフォルト )。

\data\b.bti=d:\data\b.lgf

パス 1 ログを行う対象のデータ ファ イルのパス。 パスには、 ド ライブ名は含めません。

データ フ ァ イル 1 ログを行う対象のデータ ファ イルの名前。

パス 2 ログ ファ イルのパス。 ログ ファイルとデータ ファイルは、 異なる ド ラ イブ上に存在する場合があ

るため、 必要に応じてパスにド ライブ名を追加します。

ログ フ ァ イル 1 ログ ファイルの名前。 名前を指定しない場合、 デフォルト値はデータ ファ イルと同じディ レク ト

リ と ファ イル名ですが、拡張子は ".log" に置き換えられます。ログとデータ ファイルを同じ ド ラ イ

ブに置かないよ うに、 異なる物理ド ライブを指定するこ とができます。 ログを と るデータ ファ イ

ルごとに別々のログ ファイルが必要です。

142

Page 159: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

アーカ イブ ログの使用

ヒ ン ト 同じコンピューターの異なる物理ド ライブにログを書き込むこ とをお勧めします。 ログ ファ イルを

異なる物理ド ラ イブに置けば、 ハード ディ スクがク ラ ッシュした場合にデータ ファ イルといっし ょにログ

ファ イルも失う こ とを防げます。

次に、 MicroKernel が複数のファイルのログを異なる ド ライブ (ド ラ イブ D:) に作成するよ うにする BLOG.CFGの例を示します。 BLOG.CFG ファ イルはド ライブ C: にあるものと します。

\data\file1.mkd=d:\backup\

\data\file2.mkd=d:\backup\file2.log

\data\file3.mkd=d:\backup\file3.log

ロール フ ォワー ド コ マン ド

Btrieve Maintenance ユーティ リ ティ (GUI またはコマンド ラインの BUTIL) は、 アーカイブ ログ ファ イルをデー

タ ファ イルにロール フォワードするコマンドを提供します。 「アーカイブ ログの使用」 を参照してください。

143

Page 160: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ログ、 バッ クア ッ プおよび復元

Continuous オペレーシ ョ ンの使用

Continuous オペレーシ ョ ンは、データベース アプリ ケーシ ョ ンが実行中でユーザーが接続されている間にデータ

ファ イルのバッ クアップを行う機能を提供します。 ただし、 ハード ド ラ イブ障害の場合、 Continuous オペレー

シ ョ ンを使用してバッ クアップを作成していた場合には、 後のバッ クアップ移行のデータの変更はすべて失わ

れます。アーカイブ ログおよび Maintenance ユーティ リ ティのロール フォワード コマンドを使用して 終バッ ク

アップ後に起こったデータ ファ イルへの変更を復元するこ とはできません。

Pervasive PSQL には Continuous オペレーシ ョ ンのためのバッ ク ア ップ コマン ド BUTIL があ り ます (また、

Pervasive PSQL は製品と して Pervasive Backup Agent を提供し、 Continuous オペレーシ ョ ンを設定および管理しま

す。 詳細については、 その製品で提供されるマニュアル 『Pervasive Backup Agent Guide』 を参照してください)。

メ モ Continuous オペレーシ ョ ンが設定されているデータ ファ イルは、 リ レーシ ョナル インターフェイスか

ら ト ランザクシ ョナルインターフェイスに至るまで削除が行えません。 さ らに、 このファ イルはキーの変更

などファイル構造の変更も受け付けません。

このセクシ ョ ンは、 以下の ト ピッ クに分かれています。

「Continuous オペレーシ ョ ンの開始と停止」

「BUTIL を使用してデータベースのバッ クアップを行う 」

「Continuous オペレーシ ョ ン使用時のデータ ファ イルの復元」

Continuous オペレーシ ョ ンの開始と停止

このセクシ ョ ンでは、 「STARTBU」 および 「ENDBU」 コマンドの詳細について説明します。

注意 Continuous オペレーシ ョ ン モードによって作成されたテンポラ リ デルタ ファ イルは対応するデータ

ファイルと同じ名前ですが、 拡張子 ".^^^" を使用します。 同じディ レク ト リに、 ファ イル名が同一で拡張子

のみが異なるよ う なファ イルを置かないでください。 たとえば、 データ ファ イルに INVOICE.HDR および

INVOICE.DET という よ う な名前の付け方をしないでください。 も しそ う した場合、 MicroKernel はステータ

スを返し、 ファ イルは Continuous オペレーシ ョ ンに入れられません。

Continuous オペレーシ ョ ン モードは、 MicroKernel のパフォーマンスにほとんど影響を与えませんが、 ファ イル

のバッ クアップにサーバーを使用した場合は、 影響が出るこ とがあ り ます。

Continuous オペレーシ ョ ンを使用し てデータの消失を防止するには

1 STARTBU コマンドを使用し、 ファ イルに Continuous オペレーシ ョ ンを適用します。 butil のコマンド構文の

説明については、 「STARTBU」 を参照してください。

2 データ ファ イルをバッ クアップします。

表 36 Continuous オペレーシ ョ ンの開始と停止を行 う コマン ド

コマン ド 説明

「STARTBU」 バッ クアップを対象と して定義されたファ イルの Continuous オペレーシ ョ ン

を開始します。 (BUTIL)

「ENDBU」 バッ クアップを対象と して定義されたファ イルの Continuous オペレーシ ョ ン

を停止します。 (BUTIL)

144

Page 161: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Continuous オペレーシ ョ ンの使用

3 ENDBU コマンドを使用し、 ファ イルに対する Continuous オペレーシ ョ ンを解除します。 butil のコマンド構

文の説明については、 「ENDBU」 を参照してください。

BUTIL を使用し てデータベースのバッ クア ッ プを行う

このセクシ ョ ンでは、 butil コマンドの 「STARTBU」 および 「ENDBU」 を使用したデータベースのバッ クアップ

に関する詳細について説明します。

STARTBU

butil STARTBU コマンドは、バッ クアップの目的でファイル(複数可)の Continuous オペレーシ ョ ンを開始します。

形式

butil -startbu <sourceFile | @listFile> [/UID<name> </PWD<word>> [/DB<name>]]

メ モ この startbu コマン ドは、 指定したフ ァ イルのみに対して Continuous オペレーシ ョ ンを開始します。

startbu コマンドでは、 ワイルドカードは使用できません。

Linux ディ ス ト リ ビューシ ョ ンの場合、 すべての "/" パラ メーターはスラ ッシュの代わりにハイフン ("-") を使用します。 たとえば、 /DB パラ メーターは -DB です。

フ ァ イルに関する考慮点

バッ クアップ対象のファイルを選択する場合、 Continuous オペレーシ ョ ン モードによって作成されるテンポラ リ

デルタ ファ イルは除外するこ とをお勧めします。 これらのファイルは、バッ クアップ時に開かれ使用中だからで

す。デルタ ファ イルがバッ クアップに含まれる場合、データの復元後、 これらのファイルはデータベース エンジ

ンが起動する前に削除しておく必要があ り ます。

sourceFile バッ クアップのために Continuous オペレーシ ョ ンを開始するデータ ファ イルのフル パス名 (Windowsプラ ッ ト フォームのド ライブ指定を含む)。

この完全に修飾された名前は、butil を実行しているのと同じマシン上に存在している必要があ り ます。

STARTBU コマンドではマップ ド ラ イブは使用できません。

listFile Continuous オペレーシ ョ ンを開始するファ イルの、 フル パス名を含むテキス ト ファ イルの名前。 これ

らのファイル名は、 キャ リ ッジ リ ターン / ラ イン フ ィードで区切り ます。 ファ イル名は、 スペースで

区切るこ と もできますが、 Pervasive PSQL の新しいバージ ョ ンでは、 ファ イル名にスペース文字が使

用できるよ うになる可能性もあるため、 Pervasive PSQL の将来のバージ ョ ンとの互換性を保つために、

区切り文字にはキャ リ ッジ リ ターン / ラ イン フ ィードを使用して ください。

指定したすべてのファ イルを対象に Continuous オペレーシ ョ ンを行えない場合、 ユーティ リ ティによ

るファ イルへの Continuous オペレーシ ョ ンは一切行われません。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定しま

す。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指定

する必要があ り ます。

/DB<name>/DBdbname

セキュ リ テ ィが設定されたデータベース名を指定します。 省略した場合はデフォルトのデータベース

と解釈されます。

145

Page 162: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ログ、 バッ クア ッ プおよび復元

Windows サーバーの例

例 A 初の例は、 COURSE.MKD の Continuous オペレーシ ョ ンを開始します。

Windows サーバー の場合

butil -startbu file_path\PSQL\Demodata\course.mkd

Pervasive PSQL ファ イルのデフォルトの保存場所については、 『Getting Started with Pervasive PSQL』 の 「PervasivePSQL ファ イルはどこにインス トールされますか?」 を参照してください。

例 B 以下の例は、STARTLST.FIL にリ ス ト されているすべてのファイルに対して Continuous オペレーシ ョ ンを開

始します。

butil -startbu @startlst.fil

STARTLST.FIL は、 以下のよ うなエン ト リで構成されます。

file_path\PSQL\Demodata\course.mkdfile_path\PSQL\Demodata\tuition.mkdfile_path\PSQL\Demodata\dept.mkd

ENDBU

ENDBU コマンドは、 バッ クアップのために事前に定義したデータ ファ イル (複数可) に対する Continuous オペ

レーシ ョ ンを終了します。 このコマンドは、 startbu コマンドを使用して Continuous オペレーシ ョ ンを開始し、

バッ クアップを実行した後に使用します。

形式

butil -endbu </A | sourceFile | @listFile> [/UID<name> </PWD<word>> [/DB<name>]]

/A /A を指定した場合は、 startbu で初期化され、 現在 Continuous オペレーシ ョ ン モードにあるすべての

データ ファ イルに対する Continuous オペレーシ ョ ンが停止します。

sourceFile Continuous オペレーシ ョ ンを終了するデータ ファ イルのフル パス名 (Windows プラ ッ ト フォームのド

ライブ指定を含む)。

この完全に修飾された名前は、 butil を実行しているのと同じマシン上に存在している必要があ り ます。

endbu コマンドではマップ ド ラ イブは使用できません。

@listFile Continuous オペレーシ ョ ンを終了するデータ ファ イル名のリ ス ト を含むテキス ト ファイルの名前。 こ

のテキス ト ファイルには、各データ ファ イルのフル パス名が、キャ リ ッジ リ ターン / ライン フ ィード

で区切られて入力されている必要があ り ます。 ファ イル名は、 スペースで区切る こ と もできますが、

Pervasive PSQL の新しいバージ ョ ンでは、ファ イル名にスペース文字が使用できるよ うになる可能性も

あるため、Pervasive PSQL の将来のバージ ョ ンとの互換性を保つために、区切り文字にはキャ リ ッジ リターン / ラ イン フ ィードを使用して ください。

通常、このデータ ファイルのリ ス トは、「STARTBU」 コマンドで使用する リ ス ト と同じ ものにな り ます。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定しま

す。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指定

する必要があ り ます。

/DB<name>/DBdbname

セキュ リ ティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベース と

解釈されます。

146

Page 163: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Continuous オペレーシ ョ ンの使用

メ モ Linux ディ ス ト リ ビューシ ョ ンの場合、 すべての "/" パラメーターはスラッシュの代わりにハイフン ("-")を使用します。 たとえば、 /A パラ メーターは -A で、 butil -endbu -A のよ うになり ます。

Windows サーバーの例

以下の例では、 COURSE.MKD の Continuous オペレーシ ョ ンを終了します。

butil -endbu file_path\PSQL\Demodata\course.mkd

こ こでは、現在のディレク ト リが f:\demodata の場合、フル パスを省略して butil -endbu course.mkd とするこ と もできます。

Continuous オペレーシ ョ ン使用時のデータ フ ァ イルの復元

バッ クアップの方法と して Continuous オペレーシ ョ ンを使用している場合、 後のバッ クアップ以降の変更を回

復するための リ カバリ ログはあ り ません。 後のバッ クアップ以後のデータベースの変更はすべて失われます

が、残っている可能性があるのは、 ト ランザクシ ョ ン ログに残された ト ランザクシ ョ ンだけです。 このよ うな ト

ランザクシ ョ ンは、 データベース エンジンの再起動時に自動的にロール フォワード されます。

データ とデータベース オペレーシ ョ ンを復元するには

1 エラーを解決します。

障害が起きたコンピューターを再起動するのに必要な保守を行います。

2 バッ クアップからデータ ファ イルを復元するか、 バッ クアップからハード ド ラ イブ イ メージを復元するか

適切な方法をと り ます。

3 ディ スク イ メージの一部と して Pervasive PSQL が復元されなかった場合は、 再インス トールします。

注意 デルタ ファ イルがバッ クアップ ファ イルに含まれる場合、 これらのファ イルは、 次の手順でデータ

ベース エンジンが起動する前に削除しておく必要があ り ます。

4 データベース エンジンを再起動します。

後のバッ クアップ以後に実行されたデータベース オペレーシ ョ ンを再度実行する必要があ り ます。

147

Page 164: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ログ、 バッ クア ッ プおよび復元

Backup Agent および VSS Writer によるデータ バッ クア ッ プ

この章で今まで説明されてきた ト ピッ クに加え、 Pervasive PSQL Server SP2 および Pervasive PSQL Vx Server では

データのバッ クアップに対して以下のソ リ ューシ ョ ンも適用します。

「Pervasive Backup Agent」

「Pervasive PSQL VSS Writer」

ご自分のバッ クアップ ソフ ト ウェアが Microsoft のボリ ューム シャ ド ウ コピー サービス (VSS) を認識しない場

合は、Pervasive Backup Agent をご自分のバッ クアップ ソフ ト ウェアと連携して使用するこ とができます。VSS フレームワークは Windows Server 2003 以上のオペレーティング システムに含まれています。

バッ クアップ ソフ ト ウェアが VSS を認識する場合は、 VSS によるバッ クアップ時に Pervasive PSQL VSS Writerが自動的に起動します。 バッ クアップ ソフ ト ウェアが既に VSS を認識している場合は、 Pervasive Backup Agentを使用する必要はあ り ません。

Pervasive Backup Agent および Pervasive PSQL VSS Writer は併用できますが、 それに伴う利点は特にあ り ません。

どちらか一方の方法を選択すれば、 バッ クアップ処理はよ り簡潔になり ます。

Pervasive Backup AgentPervasive Backup Agent は Pervasive PSQL v11 SP3 Server に含まれるオプシ ョ ン製品です。 Pervasive Backup Agent はPervasive PSQL Workgroup には含まれていません。 Backup Agent は単独製品と して購入できるよ う提供していま

すので、 Pervasive PSQL Workgroup でも使用するこ とができます。

Pervasive Backup Agent はデフォルトではインス トールされません。 Pervasive PSQL Server のインス トール後に、

Pervasive PSQL v11 SP3 の メディ アから インス ト ールする必要があ り ます。 イ ンス ト ール選択ダイアログで

Pervasive Backup Agent を選択してください。

Pervasive PSQL v11 SP3 Server がインス トールされている同じマシンに Pervasive Backup Agent v3.1 をインス トー

ルする場合、 別個のライセンスは必要あ り ません。 これは、 Pervasive PSQL v11 Server または v11 SP1 Server をPervasive PSQL v11 SP3 Server にアップグレードする場合にも適用されます。

Pervasive Backup Agent を使用すれば、Pervasive PSQL データベース ファ イルに対する Continuous オペレーシ ョ ン

の設定と管理を簡単かつ迅速に行う こ とができます。 Continuous オペレーシ ョ ンの設定と管理は、Pervasive PSQLデータベースのバッ クアップを行う際の重要な部分です。 これには Microsoft のボリ ューム シャ ド ウ コピー サー

ビス (VSS) を使用しません。 Backup Agent は開いているファイルに対する Continuous オペレーシ ョ ンの設定と

管理を処理し、 バッ クアップ中でもアプリ ケーシ ョ ンからデータを利用できるよ うにします。 バッ クアップ作業

が完了する と、 Backup Agent は自動的に Continuous オペレーシ ョ ンからファ イルを取り出し、 バッ クアップ中に

キャプチャされたすべての変更をロール インします。

Pervasive Backup Agent は、市販されている多くのバッ クアップ アプリ ケーシ ョ ンと互換性があ り ます。そのバッ

クアップ アプリ ケーシ ョ ンでは、ほかのアプリ ケーシ ョ ンを開始および停止できるコマンドを発行できる必要が

あ り ます (そのコマンドで Pervasive Backup Agent を開始および停止できます)。

Pervasive Backup Agent の詳細については、 『Pervasive Backup Agent Guide』 を参照してください。 これは弊社 Webサイ ト (http://www.agtech.co.jp/download/manual/) から入手可能です。

Pervasive PSQL VSS WriterMicrosoft のボリ ューム シャ ド ウ コピー サービス (VSS) は、 ラ イター、 プロバイダーおよびリ クエスター コン

ポーネン トで構成されています。 Pervasive PSQL v11 SP3 はライター コンポーネン トである Pervasive PSQL VSSWriter のみで VSS をサポート します。

Pervasive PSQL VSS Writer はデータベース エンジンの機能であ り、 Pervasive PSQL v11 SP3 Server で使用可能で

す。 Pervasive PSQL VSS Writer は、 この製品のインス トール後に使用できるよ うになり ます。 Pervasive PSQL VSSWriter は現時点で Pervasive PSQL Workgroup では使用できません。

Pervasive PSQL VSS Writer は Windows オペレーティング システムでのみ使用可能です。 ボ リ ューム シャ ド ウ コピー サービスの詳細については、 Microsoft Web サイ トのテクニカル ドキュ メン ト 「SQL Server バッ クアップ アプリ ケーシ ョ ン ベンダ向けガイ ド」 を参照してください。

148

Page 165: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Backup Agent および VSS Writer によるデータ バッ クア ッ プ

概要

VSS によるスナップシ ョ ッ ト時、 Pervasive PSQL VSS Writer は Pervasive PSQL データおよびト ランザクシ ョ ン ログ ファ イルすべてに対し、 それらが存在するボ リ ュームに関係なく、 すべてのディ スク I/O 書き込み動作を停止

します。 スナップシ ョ ッ トの作成後、 Pervasive PSQL VSS Writer はすべてのディ スク I/O を再開させます。 これ

には停止中に遅延された書き込みも含まれます。

Pervasive PSQL VSS Writer はディ スク I/O 読み取り動作を停止するこ とはあ り ません。 書き込みが不要である限

り停止中に通常のデータベース処理を継続させるこ とができます。 Pervasive PSQL VSS Writer は、 VSS サービス

および VSS リ クエスターのバッ クアップ動作によ りパフォーマンスが低下するかもしれませんが、バッ クアップ

フェーズ時は正常に動作します。

Microsoft ボ リ ューム シャ ド ウ コピー機能を使用すれば、 バッ クアップおよび復元製品はバッ クアップ用にシャ

ド ウ コピーを作成するこ とができます。 それに含まれるファイルは次のいずれかの状態になり ます。

1 定義済みで、 かつ整合状態にある

2 "crash-consistent state" (ク リーン リ ス ト アに適さない可能性があ り ます)

以下の条件をすべて満たせば、 VSS スナップシ ョ ッ トのファ イルは定義済み、 かつ整合性のとれた状態になり ま

す。

1 ファ イルのライターが VSS 対応である

2 バッ クアップおよび復元製品が VSS 対応ライターを認識し、そのライターにスナップシ ョ ッ トの準備を通知

する

3 VSS 対応ライターはスナップシ ョ ッ トの準備に成功する

条件を満たさない場合、 ライターのファイルは "crash-consistent state" でバッ クアップされます。

VSS Writer の詳細

こ こでは、 Pervasive PSQL VSS Writer の仕様について説明します。

サポート されるオペレーティング システム

Pervasive PSQL Server 製品がサポー ト される Windows オペレーテ ィ ング システムは Pervasive PSQL VSSWriter もサポート します。 VSS フレームワークは Windows Server 2003 以上のオペレーティング システムに

含まれています。

Pervasive PSQL VSS Writer は、 マシンのオペレーティング システムおよびインス トールされている PervasivePSQL Server 製品と同じビッ ト数に対応して機能します。Pervasive PSQL VSS Writer の 32 ビッ ト版は 32 ビッ

ト マシンのみでサポート され、 64 ビッ ト版は 64 ビッ ト マシンのみでサポート されます。 ビッ ト数が一致し

ない場合、 Pervasive PSQL は正し く機能しますが VSS Writer は利用できません。

サポート されるバッ クアップの種類

Pervasive PSQL VSS Writer はデータ ボ リ ュームの手動バッ クアップまたは自動バッ クアップをサポート しま

す。Pervasive PSQL VSS Writer は完全ボ リ ューム バッ クアップおよびコピー ボ リ ューム バッ クアップに対応

し、 増分、 差分およびログ バッ クアップはサポート されません。 VSS は Pervasive PSQL VSS Writer をコン

ポーネン ト と して認識します。ただし、Pervasive PSQL VSS Writer はコンポーネン トのバッ クアップをサポー

ト しません。VSS リ クエスターがコンポーネン トのバッ クアップで Pervasive PSQL VSS Writer を呼び出すと、

VSS Writer は完全ボリ ューム バッ クアップまたはコピー ボ リ ューム バッ クアップでの同じアクシ ョ ンを実

行します。

仮想化環境のサポート

Pervasive PSQL VSS Writer は仮想化環境で VSS バッ クアップを ト リガーする VSS リ クエスターをサポート し

ます。 仮想マシンのスナップシ ョ ッ ト を実行しても VSS バッ クアップは起動しません。

マルチ ボ リ ューム Pervasive PSQL データ ファ イル

149

Page 166: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ログ、 バッ クア ッ プおよび復元

Pervasive PSQL ファ イルおよび ト ランザクシ ョ ン ログが複数のボ リ ューム上に存在する こ と もあ り ます。

Pervasive PSQL ファ イルをバッ クアップする場合、 ほかのボ リ ューム上にある ト ランザクシ ョ ン ログと関連

ファイルは同時にバッ クアップするこ とを覚えておいてください。 互いに独立しているファ イルは、 関連す

る Pervasive PSQL ファ イルと同時にバッ クアップする必要はあ り ません。

バッ クアップ ソ リ ューシ ョ ンの互換性

特定のバッ クアップ製品が Pervasive PSQL VSS Writer を認識するかど うか、 スナップシ ョ ッ トの準備をライ

ターに通知するかど うかを判断するためには、 その製品でバッ クアップを開始します。 バッ クアップ処理の

進行中に、PVSW.LOG で PSQL VSS Writer が Frozen または Thawed 状態を記録するかど うかを調べます。バッ

クアップおよび復元製品が、 バッ クアップの準備を PSQL VSS Writer へ通知しなかった場合は別のソ リ ュー

シ ョ ンを使用する必要があ り ます。 たとえば、 Pervasive PSQL Backup Agent を使用すれば PSQL データ ファ

イルを定義済み、 かつ整合性のとれた状態でバッ クアップできます。

Pervasive PSQL VSS Writer と復元操作

バッ クアップ ソフ ト ウェアで復元操作を実行する前に Pervasive PSQL サービスを停止してください。これを

行わないと、 VSS Writer が VSS リ クエスターに対し、 復元に参加できないこ とを通知します。 データの整合

性を保証するためには、 ト ラ ンザクシ ョ ン ログがデータ フ ァ イルと共に復元される必要があ り ます。

Pervasive PSQL が実行している間に Pervasive PSQL データ と ト ランザクシ ョ ン ログ ファ イルが復元された場

合、 その復元結果は予測不能でデータの破損を招く恐れがあ り ます。

Pervasive PSQL VSS Writer および Pervasive Continuous オペレーシ ョ ン

も う既に Pervasive Continuous オペレーシ ョ ンまたは Pervasive Backup Agent を使用する既存のバッ クアップ

処理を利用されている場合もあるでし ょ う。 そのバッ クアップ処理を Pervasive PSQL および Pervasive PSQLVSS Writer でも引き続き使用するこ とができます。 Pervasive PSQL VSS Writer は Continuous オペレーシ ョ ン

や Backup Agent の機能を妨げる こ とはあ り ません。 ただし、 Pervasive PSQL VSS Writer と Continuous オペ

レーシ ョ ン (または Backup Agent) を併用しても利点はあ り ません。どちらか一方の方法を選択すれば、バッ

クアップ処理はよ り簡潔になり ます。

Pervasive PSQL VSS Writer が呼び出されたと きにファイルが Continuous オペレーシ ョ ン モードに置かれてい

る場合、 VSS Writer はすべての Continuous オペレーシ ョ ンから独立して動作します。 VSS バッ クアップが進

行中にフ ァ イルが Continuous オペレーシ ョ ン モードに置かれた場合は、 バッ ク ア ップが完了した後に

PVSW.LOG を見てください。 Frozen および Thawed 状態が問題なく完了しているこ と、 またデータが定義済

みかつ整合状態にあるこ とを確認して ください。

Pervasive PSQL VSS Writer は Microsoft VSS フレームワーク も必要と します。Backup Agent では Microsoft VSSフレームワークを使用しません。 したがって、 Microsoft VSS フレームワークが Pervasive PSQL VSS Writer を呼び出し、 I/O 操作が停止された場合でも、 Backup Agent はバッ クアップに参加しません。 Backup Agent はバッ クアップ処理に個別に追加する必要があ り ます。そのバッ クアップ処理は Backup Agent の開始と停止を

行う必要もあ り ます。

Pervasive PSQL VSS Writer および Xtreme I/O ド ラ イバー

32 ビッ ト版の Pervasive PSQL VSS Writer は、 Pervasive PSQL Server 32 ビッ トおよび データベース アクセラ

レータ Xtreme I/O (XIO) と併用できます。 『Advanced Operations Guide』 の 「Xtreme I/O ド ラ イバー」 を参照

してください。

150

Page 167: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

9

高可用性のサポー ト

可用性の高い環境での Pervasive PSQL の使用

この章では、 以下の項目について説明します。

「技術の概要」

「フェールオーバー ク ラスタ リ ング」

「マイグレーシ ョ ン」

「フォールト ト レランス」

「障害回復」

151

Page 168: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

高可用性のサポー ト

技術の概要

Pervasive PSQL は、 物理環境および仮想環境において稼働時間を 大化する数々のソ リ ューシ ョ ンと互換性があ

り ます。 そのよ うなソ リ ューシ ョ ンは絶えず進化し続けていますが、 通常、 そのタイプは高可用性、 フォールト

ト レランスおよび障害回復に分類されます。

高可用性

「高可用性」 の定義は、 高可用性ソ リ ューシ ョ ンを提供するソフ ト ウェア ベンダーによって異なる可能性があ り

ます。 一般的には、 ハード ウェア障害やソフ ト ウェア障害、 または必要なメンテナンスの発生にかかわらず、 稼

働し続ける時間の基準レベルに対するシステム設計手法を指します。

物理環境において高可用性を保証するための一般的な手法はフェールオーバー ク ラスタ リ ングです。仮想マシン

環境において高可用性を保証するための一般的な手法はマイグレーシ ョ ン (移行) です。

フ ェールオーバー ク ラス タ リ ング

Pervasive PSQL はフェールオーバー ク ラスター環境のリ ソース と して機能するよ う設計されています。 この環境

では一度に 1 つのサーバー ノードのみが共有記憶域サブシステムにアクセスします。プライマ リ ノードがエラー

になった場合は、セカンダ リ ノードへのフェールオーバー (切り替え) が発生します。 フェールオーバー ク ラス

タ リ ングを使用する と、 ソフ ト ウェアのアップグレードやハード ウェアのメンテナンスの実行時にもシステムを

利用可能な状態にしておく こ とができます。

Pervasive PSQL は Microsoft フェールオーバー ク ラスター サービスおよび Linux Heartbeat と互換性があ り ます。

フェールオーバー ク ラスタ リ ングの定義および実装については、 各ベンダーのドキュ メ ン ト を参照して くださ

い。Pervasive PSQL Server は、フェールオーバー ク ラスターが物理ノードを使用する場合に推奨される製品です。

Pervasive PSQL Vx Server は、 仮想マシン ノードを使用するク ラスター用に推奨される製品です。

「フェールオーバー ク ラスタ リ ング」 を参照してください。

マイグレーシ ョ ン

一般論と して、 マイグレーシ ョ ンとは、 実行している仮想マシンまたはアプリ ケーシ ョ ンを、 ク ライアン トやア

プ リ ケーシ ョ ンを切断するこ とな く異なる物理マシン間で移動させるこ とです。 通常は、 仮想マシンのメモ リ、

記憶域およびネッ ト ワーク接続が移行先に移行されます。

Pervasive PSQL Vx Server は Microsoft Hyper-V、 VMware vSphere および Citrix XenServer で提供されるマイグレー

シ ョ ン機能と互換性があ り ます仮想 MAC アドレス とホス ト名が仮想マシンの移動後も同じままであれば、PSQLVx Server は正常に動作し続けます。マイグレーシ ョ ンの定義および実装については、各ベンダーのドキュ メン ト

を参照してください。

「マイグレーシ ョ ン」 を参照して ください。

フ ォール ト ト レ ラ ンス

高可用性が稼働時間の予測可能な基準レベルを目指すのに対し、フォールト ト レランスはコンポーネン トに障害

が発生してもシステムを中断するこ とな く稼働させるこ とを目的と しています。フォールト ト レランスでは同期

された共有記憶域が必要です。 仮想化環境では、 障害が発生した仮想マシンと、 置き換わる仮想マシンは異なる

物理ホス ト上に存在している必要があ り ます。

フォールト ト レランスは物理マシンのみを使用して実現します。 ただし、仮想環境は、互いに足並みを揃えた仮

想サーバーを保持するこ とが容易であるため、 物理環境のみという状況は次第に少なくなっています。 PervasivePSQL Server は物理環境のみでのフォールト ト レランス機能と互換性があ り ます。

仮想環境の場合、Pervasive PSQL Vx Server は VMware vSphere や Citrix XenServer で提供されるフォールト ト レラ

ンス機能と互換性があ り ます。 フォールト ト レランスの定義および実装については、各ベンダーのドキュ メン ト

を参照してください。

「フォールト ト レランス」 を参照してください。

152

Page 169: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

技術の概要

障害回復

障害回復では、 大きな障害の発生後にコンピューター操作の復元が必要とな り ます。 通常、 これには日常的なオ

フサイ トのデータ バッ クアップや新しい場所で主要な情報システムをアクティブ化する手続きが含まれます。

Pervasive PSQL Vx Server は、バッ クアップ物理マシンまたは仮想マシンを初期化する障害回復技術をサポートす

る主要なハイパーバイザーと互換性があ り ます。 すべての仮想 MAC アドレス とホス ト名が仮想マシンの移動後

も同じままであれば、 PSQL Vx Server は正常に動作し続けます。 これによ り、 短時間でのサーバー置換および回

復が可能です。Pervasive PSQL Server は、物理マシン上での障害回復技術をサポートする主要なハイパーバイザー

と互換性があ り ます。

障害回復の定義および実装については、 各ハイパーバイザー ベンダーのドキュ メン ト を参照してください。

障害回復のために Pervasive PSQL が提供するも う 1 つの機能は Pervasive PSQL Insurance です。 Pervasive PSQLInsurance を使用すれば、 直ちにオンラインに戻し業務を続行するこ とができます。 その間に元の Pervasive PSQLラ イセンスを復元できます。 Pervasive PSQL Insurance は、 3 回の認証が可能で、 Windows および Linux の 32 ビッ

ト または 64 ビ ッ ト 環境で利用可能な 14 日間限定の一時ラ イセンスを提供し ます。 詳細については、 http://www.agtech.co.jp/products/pervasive/ をご覧ください。

「障害回復」 を参照してください。

ハー ド ウ ェ ア要件

このセクシ ョ ンで述べているすべての技術を利用する場合、 Pervasive Software では、 ベンダーが提供するハード

ウェア互換性リ ス トで挙げられているサーバー、ディ スク サブシステムおよびネッ ト ワーク コンポーネン ト を選

択するこ とをお勧めします。 Pervasive Software でも、 ベンダーの製品との互換性テス ト を行う際にはベンダー提

供のハードウェア要件に従っています。

153

Page 170: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

高可用性のサポー ト

フ ェールオーバー ク ラス タ リ ング

フェールオーバー ク ラスタ リ ングは、複数の物理サーバー (ノード) が、1 つ以上のファイル共有またはボ リ ュー

ムを持つ、共通の共有記憶域サブシステムにアクセスする機能を提供します。 このフェールオーバー サービスで

は、 一度に 1 つのサーバーだけがファイル共有またはボ リ ュームを制御します。 共有記憶域サブシステムの制御

は、 障害によ り停止したサーバーから ク ラスター内の次のスタンバイ サーバーへ自動的に渡されます。

Pervasive PSQL はデータベース エンジンをインス トールしたク ラスター ノード単位で個別にライセンスされて

いる必要があ り ます。 これはそのノードが物理マシンまたは仮想マシンのどちらでも同じです。 『Pervasive PSQLUser's Guide』 の 「ラ イセンス モデル」 も参照してください。 (こ こで説明しているフェールオーバー ク ラスタ リ

ングは、 Microsoft フェールオーバー ク ラスタ リ ングまたはク ラスター サービス、 および Linux Heartbeat を対象

と しています。仮想マシン ベースのク ラスターを取り入れるよ うなその他の高可用性ソ リ ューシ ョ ンとは異なり

ます)。

こ こでは、 以下の項目について説明します。

「Windows Server 2008 以上を対象と した Microsoft フェールオーバー ク ラスタ リ ング」

「Windows Server 2003 用の Microsoft Cluster Service」

「Linux Heartbeat」

「ク ラスター環境における Pervasive PSQL の管理」

Windows Server 2008 以上を対象と し た Microsoft フェールオーバー ク ラス タ リ ング

こ こではフェールオーバー ク ラスタ リ ングへの Pervasive PSQL サービスの追加について説明します。これは次の

こ とを前提と します。

フェールオーバー ク ラスタ リ ングのインス トールおよび構成方法を知っているこ と。 また、 Pervasive PSQLサービスを追加および管理するための情報が必要であるこ と。

Pervasive PSQL および Pervasive PSQL Control Center (PCC) などの主要ユーティ リ ティの使用法をよ く理解

しているこ と。

ODBC アド ミニス ト レーターを使用して DSN を設定できるこ と。

Windows サーバーのバージ ョ ン間の違い

基本的に、 フェールオーバー ク ラスタ リ ングは Windows Server 2008、 Windows Server 2008 R2 および WindowsServer 2012 で同じです。

Windows Server 2012 では次の点が異なるこ とに留意して ください。

フェールオーバー ク ラスター マネージャーで、" サービスとアプリ ケーシ ョ ン " は " ロール " と呼ばれます。

レジス ト リ レプ リ ケーシ ョ ンは、 汎用サービスにはサポート されません。 「PCC を使ってデータベース エン

ジンのプロパティを設定する」 で説明されている とおり、すべてのノードで Pervasive PSQL データベース エンジンが手動設定されている必要があ り ます。

事前要件

Pervasive PSQL サービスを追加する前に、 フェールオーバー ク ラスタ リ ングが正常に機能しているこ とが必須で

す。たとえば、 フェールオーバーを実行し、すべてのリ ソースが利用可能になっているこ とを確認して ください。

この操作を、 フェールオーバーを開始した 初のノードに戻るまで繰り返し行います。 フェールオーバー ク ラス

タ リ ングのセッ ト アップ方法については、 Microsoft のドキュ メン ト を参照してください。

ほかのサービスの場合と同様に、 Pervasive PSQL サービスを追加する前には必須のクラスタ リ ング コンポーネン

ト を設定します。 コンポーネン ト を設定する際に、 以下の点を確認して ください。

154

Page 171: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ェールオーバー ク ラス タ リ ング

Pervasive PSQL データを置く共有ディ スクに対し、 必要であれば NTFS ユーザー権限を編集します。 通常、

Pervasive PSQL ト ランザクシ ョナルおよびリ レーシ ョナル サービスは、 ローカル システム アカウン ト下で

実行されます。ローカル システム アカウン トには必ず共有ディ スクへの読み取り / 書き込み権限を持たせる

必要があ り ます。

共有プロ ト コルに "SMB" 選択し、 必要であれば SMB 権限を編集します。

[DFS 名前空間への発行] を省略します。 Pervasive PSQL サービスに DFS は必要あ り ません。

コンポーネン ト を設定したら、 Pervasive PSQL ク ライアン ト をインス トールしているマシンがク ライアン ト アク

セス ポイン ト と通信できるこ とを検証するのが得策です。 また、マシンが共有名を参照できるこ とを確認して く

ださい。

推奨される イ ンス ト ール手順

次の表では、 Windows Server 2008 のク ラスター サービスに Pervasive PSQL を追加する際の推奨手順を説明して

います。 Windows Server 2012 向けの手順は基本的には同じですが、 先に述べた相違点があ り ます。

表 37 Windows Server 2008 以上のク ラス ター サービスへの Pervasive PSQL の追加

操作 説明

ク ラ ス ター ノ ー ドへ

Pervasive PSQL を イ ン

ス トールする

各ク ラスター ノードに Pervasive PSQL Server をインス トールし、 それらすべてに同一のオプシ ョ

ンを選択します。

Pervasive PSQL データが存在するク ラスター共有記憶域には Pervasive PSQL をインス トールし

ないでください。

XIO (Xtreme I/O) とい う Pervasive PSQL コンポーネン トはインス トールしないでください。マ

シンがフェールオーバーによってオンラインにな り、 共有記憶域をアクセスできないままにし

ておく と、 ノードに XIO がインス トールされている場合、そのノードがハングするこ とがあ り

ます。

インス トール後、 Pervasive PSQL ト ランザクシ ョナル サービス と リ レーシ ョナル サービスは共に

オペレーティング システムの起動時に自動的に開始されるよ う設定されます。 スタート アップの

種類を手動に変更します。

通常、 Pervasive PSQL ト ランザクシ ョナルおよびリ レーシ ョナル サービスは、 ローカル システム

アカウン ト下で実行されます。 Pervasive PSQL のインス トールで問題が起きた場合は、 ク ラスター

ノード アカウン トのド メ インの権限を調べてください。

155

Page 172: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

高可用性のサポー ト

Pervasive PSQL 用のク

ラスター リ ソースを追

加し、 プロパテ ィ を設

定する

ク ラスター リ ソース と して、Pervasive PSQL ト ランザクシ ョナル サービスは必ず必要です。リ レー

シ ョナル サービスはオプシ ョ ンで、 アプ リ ケーシ ョ ンが リ レーシ ョナル インターフェイスを使用

する場合のみ必要です。

ク ラスター リ ソース用のプロパティを指定する際は以下のこ とを実施して ください。

[ネッ ト ワーク名をコンピューター名と して使う] オプシ ョ ンを選択します。

ト ランザクシ ョナル サービスの場合、 ルート レジス ト リ キーの Software\Pervasive Software を使用します。

リ レーシ ョナル サービスを含める場合は、 レジス ト リ キー用のデータ ソース名 (DSN) の操作方

法を決定します。 以下の手順のいずれかを実行します。

そのク ラスター ノードにインス トールされているすべての ODBC データ ソースおよび ODBC プロバイダーに影響を与える場合は、 SOFTWARE\ODBC キーを指定します。 オペレーティン

グ システムのアーキテクチャに応じて、 以下のキーを追加します。

Software\ODBC\ODBC.INI (Windows 32 ビッ ト用) または Software\Wow6432Node\ODBC\ODBC.INI (Windows 64 ビッ ト用)

個別の DSN を指定する場合、 レジス ト リでキーは追加しないでください。その代わり、 初に

PCC でデータベース エンジンを設定する必要があ り ます (「PCC を使ってデータベース エンジ

ンのプロパティを設定する」 を参照)。 その後、 アクティブなク ラスター ノードに DSN を作成

し、障害を発生させて、同じ DSN をスタンバイ ノードに作成するこ とが必要です。 これを、す

べてのク ラスター ノードに DSN が含まれるまで繰り返します。

メモ: 依存関係があるため、Pervasive PSQL リ ソースは 初に Pervasive PSQL ト ランザクシ ョナル

エンジン、 次に Pervasive PSQL リ レーシ ョナル エンジンという順序でオンラインにし、 停止する

場合はこの逆の順序で停止するよ うにして ください。

必要なファ イルとディ

レ ク ト リ を共有記憶域

に置く

通常、 Pervasive PSQL ト ランザクシ ョナルおよびリ レーシ ョナル サービスは、 ローカル システム

アカウン ト下で実行されます。 ローカル システム アカウン トには必ず共有ディ スクへの読み取り

/ 書き込み権限を持たせる必要があ り ます。

Pervasive PSQL をインス ト ールしたア クテ ィブ ノードのアプ リ ケーシ ョ ン データ領域にある

DBNAMES.CFG ファイルを、 共有記憶域上の任意のディ レク ト リにコピーします。

同じ ノード上のアプリ ケーシ ョ ン データ領域にある以下のディ レク ト リ を、 共有記憶域上の同じ

ディ レク ト リにコピーします。 便宜上、 DBNAMES.CFG と同じディ レク ト リにこれらをコピーで

きますが、 別の場所でもかまいません。

defaultdb

Demodata

tempdb

Transaction Logs

Pervasive System Analyzer を使用して ト ランザクシ ョナル テス ト またはリ レーシ ョナル テス ト を行

う場合は、 Pervasive Software\PSQL\Samples ディ レク ト リ も コピーする必要があ り ます。

表 37 Windows Server 2008 以上のク ラス ター サービスへの Pervasive PSQL の追加

操作 説明

156

Page 173: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ェールオーバー ク ラス タ リ ング

Windows Server 2003 用の Microsoft Cluster Serviceこ こではフェールオーバー ク ラスタ リ ングへの Pervasive PSQL サービスの追加について説明します。これは次の

こ とを前提と します。

ク ラスター サービスのインス トールおよび構成方法を知っているこ と。 また、 Pervasive PSQL をク ラスター

サービス グループに追加するための情報が必要であるこ と。

Pervasive PSQL および Pervasive PSQL Control Center (PCC) などの主要ユーティ リ ティの使用法をよ く理解

しているこ と。

ODBC アド ミニス ト レーターを使用して DSN を設定できるこ と。

事前要件

Pervasive PSQL を追加する前に、 ク ラスター サービスが正常に機能しているこ とが必須です。 たとえば、 フェー

ルオーバーを実行し、 すべてのリ ソースが利用可能になっているこ とを確認して ください。 この操作を、 フェー

ルオーバーを開始した 初のノードに戻るまで繰り返し行います。 ク ラスター サービスの設定、 動作確認、 タス

クの実行方法の詳細については、 Microsoft のドキュ メン ト を参照してください。

ほかのアプリ ケーシ ョ ンの場合と同様に、 Pervasive PSQL を追加する前には必須のクラスター コンポーネン ト を

設定します。 コンポーネン ト を設定する と きは、 Pervasive PSQL データを置く共有ディ スクに対し、 必要であれ

ばユーザー権限を編集します。通常、Pervasive PSQL ト ランザクシ ョナルおよびリ レーシ ョナル サービスは、ロー

カル システム アカウン ト下で実行されます。 ローカル システム アカウン トには必ず共有ディ スクへの読み取り

/ 書き込み権限を持たせる必要があ り ます。

PCC を使ってデータ

ベース エンジンのプロ

パティを設定する

Pervasive PSQL Control Center (PCC) でデータベース エンジンを設定して、特定の構成設定をレジ

ス ト リに追加します。 ク ラスター内のアクティブ ノードのエンジンを設定した後、 障害を発生さ

せてク ラスター内の次のノードにその設定を移行します。

PCC で、 ディ レク ト リに関する以下のエンジン プロパティを設定します。 PCC でサービスの再開

始を促された場合は、 [いいえ] を選択します。

[ ト ランザクシ ョ ン ログのディ レク ト リ ] には、 Transaction Logs ディレク ト リ をコピーする共

有ディ スク上の場所を指定します。

[DBNames 設定ファイルのディ レク ト リ ] には、 DBNAMES.CFG ファイルをコピーする共有

ディ スク上の場所を指定します。

フェールオーバー ク ラスター管理コンソールで、 Pervasive PSQL リ ソースを一旦オフラインにし、

オンラインに戻します。

PCC で、 データベースに関する以下のエンジン プロパティを設定します。

DEFAULTDB では、 [辞書のロケーシ ョ ン] に、 DEFAULTDB ディレク ト リ をコピーする共有

ディ スク上の場所を設定します。 [データ ディ レク ト リ ] では、 DEFAULTDB ディレク ト リ を

コピーする共有ディ スク上の場所を追加し、 デフォルトのデータ ディ レク ト リ を削除します。

DEMODATA および TEMPDB データベース用の [辞書のロケーシ ョ ン] と [データ ディレク

ト リ ] には、 それら のデ ィ レ ク ト リ を コ ピーする共有デ ィ ス ク上の場所を設定し ます。

DEMODATA の場合、 [辞書のロケーシ ョ ン] および [データ ディ レク ト リ ] には "Demodata"を指定します。 TEMPDB の場合、 [辞書のロケーシ ョ ン] および [データ ディレク ト リ ] には

"tempdb" を指定します。

データベース エンジン

の設定を移行する

データベース エンジンの設定をク ラスター内のほかのノードへ移行します。 フェールオーバー クラ ス ター管理コ ン ソールで、 サービス またはアプ リ ケーシ ョ ンの移動ア ク シ ョ ンを実行し、

Pervasive PSQL サービスをク ラスター内の別のノードへ移動させます。

たとえば、フェールオーバーを実行し、すべてのリ ソースが利用可能になっているこ とを確認して

ください。サービスをさ らに別のノードへ移動させ、すべてのリ ソースが利用可能であるこ とを確

認します。 この操作をフェールオーバーが 初のノードに戻るまで行います。

これで、 Pervasive PSQL はフェールオーバー ク ラスター用に構成されます。

表 37 Windows Server 2008 以上のク ラス ター サービスへの Pervasive PSQL の追加

操作 説明

157

Page 174: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

高可用性のサポー ト

コンポーネン ト を設定したら、 Pervasive PSQL ク ラ イアン トにアクセスし、 ク ラスター共有記憶域と通信できる

こ とを確認します。 Pervasive PSQL ク ラ イアン トは、 ク ラスター ノードのフェールオーバーの前および後に、 ク

ラスター共有記憶域と通信できる必要があ り ます。 フェールオーバーの前後で、 Pervasive PSQL ク ライアン ト コンピューターから共有記憶域サブシステム上でコマンドが実行できれば、 ク ラスターは正常に機能しています。

推奨される イ ンス ト ール手順

次の表では、 Windows Server 2003 のク ラスター サービスに Pervasive PSQL を追加する際の推奨手順を説明して

います。

表 38 Windows Server 2003 のク ラス ター サービスへの Pervasive PSQL の追加

操作 説明

Pervasive PSQL 用のク ラ

ス ター グループを追加

する

Microsoft ク ラスター アド ミ ニス ト レーターで、 Pervasive PSQL リ ソースを追加するク ラスター

グループを作成します。 ク ラスター グループ内のリ ソースはすべて同時に失敗する (機能しな

くなる) ので、Pervasive PSQL 用に単独のク ラスター グループを作成するこ とをお勧めします。

これは必須ではあ り ませんが、 適切な管理手法です。

Pervasive PSQL のク ラスター グループには、 少な く と も以下のリ ソースが含まれるよ うにして

ください。

共有記憶域サブシステムの IP アドレス

ネッ ト ワーク名 (共有記憶域サブシステムの名前)

物理ディ スク (Pervasive PSQL データベースを含むディ スク サブシステム) 共有記憶域は

マップされたド ライブではなく、 マウン ト されたド ライブにして ください。 Pervasive PSQLサービスはデフォルトで 「ローカル システム アカウン ト 」 に設定されます。 このアカウン

トの場合、別のユーザー アカウン トでマップしたマップ ド ラ イブにはアクセスできません。

データー ファ イル用のファ イル共有

さ らに、 グループに対してフェールバッ クを可能にした り、 優先する実稼働ノードを指定した

りするこ とができます。 「Pervasive PSQL のエラー時の動作」 も参照してください。

ク ラスター ノードへ Pervasive PSQL をインス

トールする

各ク ラスター ノードに Pervasive PSQL Server をインス トールし、 それらすべてに同一のオプ

シ ョ ンを選択します。

Pervasive PSQL データが存在するク ラスター共有記憶域には Pervasive PSQL をインス トール

しないでください。

XIO (Xtreme I/O) とい う Pervasive PSQL コンポーネン トはインス トールしないでください。

マシンがフェールオーバーによってオンラインになり、共有記憶域をアクセスできないまま

にしておく と、 ノードに XIO がインス トールされている場合、 そのノードがハングするこ

とがあ り ます。

通常、 Pervasive PSQL ト ランザクシ ョナルおよびリ レーシ ョナル サービスは、 ローカル システ

ム アカウン ト下で実行されます。 Pervasive PSQL のインス トールで問題が起きた場合は、 ク ラ

スター ノード アカウン トのド メ インの権限を調べてください。

158

Page 175: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ェールオーバー ク ラス タ リ ング

Pervasive PSQL ト ランザ

ク シ ョ ナル サービ ス を

ク ラ ス ター グループに

追加する

ク ラスター リ ソース と して、 Pervasive PSQL ト ランザクシ ョナル サービスは必ず必要です。

Microsoft ク ラスター アド ミ ニス ト レーターで、 新しいリ ソースを追加し、 [ リ ソースの種類]

に " 汎用サービス " を指定します。対象とするグループを選択します。[別のリ ソース モニター

でこのリ ソースを実行する] オプシ ョ ンはチェッ ク しないでください。

リ ソースの実行可能な所有者と して機能する ノードを指定します。

依存関係用に、 リ ソースの依存関係リ ス トには以下の項目を追加して ください。

IP アドレス

ネッ ト ワーク名

ファイル共有

[汎用サービス パラ メ ーター] にはサービス名に "Pervasive.SQL (transactional)" を指定します。

[起動パラ メーター] は空白のままにしておきます。 [ネッ ト ワーク名をコンピューター名と し

て使う] オプシ ョ ンを選択します。 これによ り、 Pervasive PSQL は共有記憶域上でファ イルを

直接開く こ とができます。

レジス ト リ キーには、 "SOFTWARE\Pervasive Software" を追加します。

リ ソースを追加したら、 そのプロパティを選択します。 [再開する] オプシ ョ ンおよび [グルー

プに適用する] オプシ ョ ンが選択して ください。 オプシ ョ ンで、 し きい値と期間を設定するこ

とができます。

任意で、 Pervasive PSQLリ レーシ ョ ナル サービ

ス を ク ラ ス ター グルー

プに追加する

リ レーシ ョナル サービスはオプシ ョ ンで、アプリ ケーシ ョ ンが リ レーシ ョナル インターフェイ

スを使用する場合のみ必要です。

次の例以外は、 「Pervasive PSQL ト ランザクシ ョナル サービスをク ラスター グループに追加す

る」 と同じ手順に従って ください。

依存関係用に、 [利用できる リ ソース] リ ス トで "Pervasive PSQL ト ランザクシ ョナル リ ソース

" を選択します。 リ ソースの IP アドレスおよびファ イル共有はト ランザクシ ョナル リ ソースの

依存関係なので、 これらを追加する必要はあ り ません。

[汎用サービス パラ メ ーター] にはサービス名に "Pervasive.SQL (relational)" を指定します。

レジス ト リのレプ リ ケーシ ョ ンは、 レジス ト リ キー用のデータ ソース名 (DSN) の操作方法を

決定します。 以下の手順のいずれかを実行します。

そのク ラスター ノードにインス トールされているすべての ODBC データ ソースおよび ODBC プロバイダーに影響を与える場合は、 SOFTWARE\ODBC キーを指定します。 オペ

レーティング システムのアーキテクチャに応じて、 以下のキーを追加します。

Software\ODBC\ODBC.INI (Windows 32 ビッ ト用) または Software\Wow6432Node\ODBC\ODBC.INI (Windows 64 ビッ ト用)

個別の DSN を指定する場合、 レジス ト リでキーは追加しないでください。 その代わり、

初に PCC でデータベース エンジンを設定する必要があ り ます (「PCC を使ったエンジンの

設定」 を参照) 。 その後、 アクティブなク ラスター ノードに DSN を作成し、 障害を発生さ

せて、 同じ DSN をスタンバイ ノードに作成するこ とが必要です。 これを、 すべてのク ラス

ター ノードに DSN が含まれるまで繰り返します。

ク ラ ス ター ア ド ミ ニス

ト レ ー タ ー を 使 っ て

PSQL サービスをオンラ

インにする

インス トール後、 ト ランザクシ ョナルおよびリ レーシ ョナル サービスは共にオペレーティング

システムの起動時に自動的に開始されるよ う設定されます。 オペレーティ ング システムから、

両方のサービスを停止し、 そのスタート アップの種類を手動に変更します。

オペレーティング システムでサービスを停止した後、ク ラスター アド ミニス ト レーターを使用

してそのサービスをオンラインにします。

表 38 Windows Server 2003 のク ラス ター サービスへの Pervasive PSQL の追加

操作 説明

159

Page 176: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

高可用性のサポー ト

Linux HeartbeatHeartbeat プログラムは Linux-HA (High-Availability Linux Linux) プロジェク トの中心的なコンポーネン トの 1 つです。 Heartbeat はあらゆる Linux プラ ッ ト フォームで動作し、 1 つのプロセスで停止ノードの検出、 通信および

クラスター管理を行います。 Pervasive PSQL Server は、 Heartbeat ク ラスターが物理ノードを使用する場合に推奨

される製品です。Pervasive PSQL Vx Server は、仮想マシン ノードを使用するク ラスター用に推奨される製品です。

こ こでは Linux Heartbeat への Pervasive PSQL サービスの追加について説明します。 これは次のこ とを前提と しま

す。

Heartbeat プログラムのインス トールおよび構成方法を知っているこ と。 また、 Pervasive PSQL をク ラスター

サービス グループに追加するための情報が必要であるこ と。

必要なファ イルとディ レ

ク ト リ を共有記憶域に置

通常、 Pervasive PSQL ト ランザクシ ョナルおよびリ レーシ ョナル サービスは、 ローカル システ

ム アカウン ト下で実行されます。 ローカル システム アカウン トには必ず共有ディ スクへの読

み取り / 書き込み権限を持たせる必要があ り ます。

Pervasive PSQL をインス トールしたアクテ ィブ ノードのアプ リ ケーシ ョ ン データ領域にある

DBNAMES.CFG ファイルを、 共有記憶域上の任意のディ レク ト リにコピーします。

同じ ノード上のアプリ ケーシ ョ ン データ領域にある以下のディ レク ト リ を、共有記憶域上の同

じディ レ ク ト リ にコピーします。 便宜上、 DBNAMES.CFG と同じディ レ ク ト リ にこれらをコ

ピーできますが、 別の場所でもかまいません。

defaultdb

Demodata

tempdb

Transaction Logs

Pervasive System Analyzer を使用して ト ランザクシ ョナル テス ト またはリ レーシ ョナル テス ト

を行う場合は、 Pervasive Software\PSQL\Samples ディレク ト リ も コピーする必要があ り ます。

PCC を使ったエンジンの

設定

Pervasive PSQL Control Center (PCC) でデータベース エンジンを設定して、 特定の構成設定を

レジス ト リに追加する必要があ り ます。 ク ラスター内のアクティブ ノードのエンジンを設定し

た後、 障害を発生させてク ラスター内の次のノードにその設定を移行します。

PCC の Pervasive PSQL エクスプローラーで新しいサーバーを作成し、 そのサーバー名に対しク

ラスター共有記憶域のネッ ト ワーク名を指定します。

追加したサーバーのプロパティにアクセスし、 [ディ レク ト リ ] を選択します。

[DBNames 設定ファ イルのディ レク ト リ ] に、 ク ラスター共有ド ライブ上の場所を指定しま

す。 これは手順 「必要なファ イルとディ レク ト リ を共有記憶域に置く」 で リ ス ト されたファ

イルをコピーした場所です。共有記憶域はマップされたド ライブではなく、マウン ト された

ド ラ イブにして ください。 Pervasive PSQL サービスはデフォルトで 「ローカル システム アカウン ト 」 に設定されます。 このアカウン トの場合、 別のユーザー アカウン ト でマップし

たマップ ド ラ イブにはアクセスできません。

[ ト ランザクシ ョ ン ログのディ レク ト リ ] に、 ク ラスター共有ド ライブ上の、 ログを置きた

い場所を入力します。

[通信プロ ト コル] では、 [TCP/IP マルチホーム] がオンになっているこ とを確認して くだ

さい。

ク ラスター アド ミ ニス ト レーターで、Pervasive PSQL ト ランザクシ ョナル サービスをオフライ

ンにする と、 Pervasive PSQL リ レーシ ョナル サービスもオフラインになり ます。 両方のサービ

スをオンラインにします。

ク ラスター アド ミ ニス ト レーターで、障害を発生させて次のスタンバイ ノードがク ラスターの

新しい実稼動ノードになるよ うにします。 この動作を繰り返して、 すべてのク ラスター ノード

で障害を発生させます。

これで、 Pervasive PSQL はフェールオーバー ク ラスター用に構成されます。

表 38 Windows Server 2003 のク ラス ター サービスへの Pervasive PSQL の追加

操作 説明

160

Page 177: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ェールオーバー ク ラス タ リ ング

Pervasive PSQL および Pervasive PSQL Control Center (PCC) などの主要ユーティ リ ティの使用法をよ く理解

しているこ と。

事前要件

Pervasive PSQL をク ラスターに追加する前に、 Linux Heartbeat が正常に機能しているこ とが必須です。 Heartbeatのインス トール、 動作確認、 タス クの実行方法については、 「The High Availability Linux プロジェ ク ト 」 (http://www.linux-ha.org/ja/HomePage_ja) ドキュ メン ト を参照して ください。

ほかのアプリ ケーシ ョ ンの場合と同様に、 Pervasive PSQL を追加する前には必須のクラスター コンポーネン ト を

設定します。

推奨される イ ンス ト ール手順

次の表では、 Linux Heartbeat に Pervasive PSQL を追加する際の推奨手順を説明しています。

表 39 Linux Heartbeat への Pervasive PSQL の追加

操作 説明

ク ラスター ノードへ Pervasive PSQL をインス

トールする

各ク ラスター ノードに Pervasive PSQL Server をインス トールし、 それらすべてに同一のオプ

シ ョ ンを選択し ます。 Pervasive PSQL データベースが存在する ク ラ ス ター共有記憶域には

Pervasive PSQL をインス トールしないでください。

インス トールが完了する と、オペレーティング システムの起動時にデータベース エンジンが自

動的に起動するよ う設定されます。ただし、 ク ラスタ リ ングでは、Linux Heartbeat がデータベー

ス エンジンの起動と停止を制御します。 ク ラスターの実稼動ノードがエンジンを起動し、 それ

以外のノードはエンジンを起動しません。

Pervasive PSQL Server をインス トールしたら、 "pvsw" および "pvsw-adm" 用のグループ ID と "psql" 用のユーザー ID がすべてのノードにおいて一致しているこ とを確認して ください。 ID が一致していなければ、 同一になるよ う変更します。

共有記憶域を構成する 共有記憶域は、 Pervasive PSQL データベースが存在する場所です。 Heartbeat の共有記憶域はさ

まざまな方法で実装できます。 このマニュアルではその数多くの実装方法のすべてを説明する

こ とはできません。 このセクシ ョ ンでは、 NFS マウン トが使用されている と仮定します。

共有記憶域上で、データベースを配置する場所を作成します。 この場所は自由に選択できます。

ユーザー psql がその場所に対して読み取り、 書き込みおよび実行権限を持っているこ とを確認

して ください。

共有記憶域に 2 つのグループと 1 人のユーザーを作成し、各ク ラスター ノードがデータベース

ファイルにアクセスできるよ うにします。

pvsw グループおよび pvsw-adm グループはそれぞれ、 ク ラスター ノード上の pvsw グループ

ID および pvsw-adm グループ ID と一致している必要があ り ます。

ユーザー psql は、 ク ラスター ノード上の psql ユーザー ID と一致している必要があ り ます。

共有記憶域マウン ト用の

ディ レク ト リ を作成する

ク ラスター ノードごとに、ユーザー psql と してログインし、共有記憶域へマウン ト されるディ

レク ト リ を作成します (ユーザー psql にはパスワードがあ り ません。 su コマンドを使用した "root" アカウン トによるアクセスのみを行う こ とができます) 。 ディ レク ト リ名は自由に選択で

きます。

Heartbeat サーバーを構成

する

Pervasive PSQL データベース エンジンを制御する ノードごとに Heartbeat サーバーを構成しま

す。 次のよ うな構成を行います。

ノード。 ク ラスターに参加させるすべてのノードを追加します。

認証。 ノード間のネッ ト ワーク通信に使用する認証のタイプを指定します。

媒体。 Heartbeat がノード間の内部的な通信に使用する方法を指定します。

スタート アップ。Heartbeat サーバーの起動のタイ ミ ングについての設定を指定します。これ

をオンに設定する と、 Heartbeat サーバーはブート時に起動するよ うになり ます。

161

Page 178: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

高可用性のサポー ト

Heartbeat ユーザーのパス

ワードを割り当てる

Linux Heartbeat では Heartbeat Management Client へログインする際のデフォルトのユーザー名と

して hacluster を提供します。 Heartbeat Management Client を実行する ノードご とに、 ユーザー

hacluster のパスワードを割り当てます。

Pervasive PSQL 用の リ

ソース グループを追加す

root と してログインし、 ク ラスター ノードの 1 つで Heartbeat Management Client を開始します。

ユーザー hacluster と してログインし、新しいグループを追加します。[ID] には、Pervasive PSQLグループの名前を指定します。 [Ordered] と [Collocated] には "true" を設定します。

リ ソースをグループに追

加する

次の 3 つのリ ソースを Pervasive PSQL グループに追加します。

IPaddr (IP アドレス)

Filesystem (ファ イルシステム)

Psql (OCF リ ソース エージェン ト )

IPaddr (IP アドレス)

Heartbeat Management Client で、 新しい "native" 項目を追加し ます。 [Belong to group] には、

Pervasive PSQL 用に追加したグループを選択します。 [Type] には "IPaddr" を選択します。

追加した リ ソースで、 IP の値に対してク ラスターの IP アドレスを指定します。 Linux Heartbeatがインス トールされ構成されたと きには、 (ノードではな く) ク ラスターに割り当てられた IPアドレスを使用します。

Filesystem (ファ イルシステム)

新しい "native" 項目をも う 1 つ追加します。[Belong to group] には、 Pervasive PSQL 用に追加し

たグループを選択します。

[Type] には、 "Filesystem" を選択し、 "fstype" とい うパラ メーターを削除します。 このパラ メー

ターは必要あ り ません。 新しいパラ メーターを追加し、 [Name] には "device" を選択します。

[Value] には、共有記憶域のデバイス名、 コロン、共有マウン トのロケーシ ョ ンを指定します。

新しいパラ メーターをも う 1 つ追加し、 [Name] には "directory" を選択します。 [Value] には、

NFS マウン トで使用するディ レク ト リ を指定します。

Psql (OCF リ ソース エージェン ト )

新しい "native" 項目をも う 1 つ追加します。[Belong to group] には、 Pervasive PSQL 用に追加し

たグループを選択します。[Type] では、[Description] フ ィールドに "PSQL OCF Resource Agent"の記載がある "psql" エン ト リ をク リ ッ ク します。 このほかにパラ メーターは必要あ り ません。

マウン ト された共有記憶

域上にサブディ レ ク ト リ

を作成する

Filesystem リ ソースを追加できた場合は、 ク ラスター サーバーと共有記憶域間にマウン トが存

在するよ うにな り ます。 ク ラスター ノードの 1 つに、 ユーザー psql と してログインします。共

有記憶域マウン トで、 "log" と "etc" とい う名前のディ レク ト リ を作成します。

たとえば、 マウン ト ディ レク ト リが "/usr/local/psql/shared" の場合、 /usr/local/psql/shared/log と /usr/local/psql/shared/etc とい うディ レク ト リ を追加します。

PCC で ク ラ ス ター サー

バーを構成する

それぞれのク ラスター ノードで、Pervasive PSQL Control Center (PCC) を使ったク ラスター サー

バーを構成する必要があ り ます。

PCC を実行する ノード以外のすべてのク ラスター ノードを代替モードにします。 psql ユーザー

と して、 1 つのアクティブ ノードで、 あるいはアクティブ ノードにアクセスできるク ラ イアン

トから PCC を実行します。

Pervasive PSQL エクスプローラーで、 新しいサーバーを追加し、 ク ラスターの名前 (または IPアドレス) を指定します。

追加したサーバーのプロパティにアクセスします。 ログインを指示された場合は、 "admin" ユー

ザーと してログインします。パスワードは空のままにします。 [ディ レク ト リ ] プロパティにア

クセスします。 [ ト ランザクシ ョ ン ログのディ レク ト リ ] には、 "log" ロケーシ ョ ン用に作成し

たディ レク ト リ を指定します。[DBNames 設定ファ イルのディ レク ト リ ]には、"etc" ロケーシ ョ

ン用に作成したディ レク ト リ を指定します。「マウン ト された共有記憶域上にサブディ レク ト リ

を作成する」 を参照して ください。

PCC で新しいサーバーを追加し、 そのプロパティ をほかの各ク ラスター ノードから設定しま

す。 PCC を実行する ノード以外のすべてのノードを代替モードにします

表 39 Linux Heartbeat への Pervasive PSQL の追加

操作 説明

162

Page 179: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ェールオーバー ク ラス タ リ ング

ク ラス ター環境における Pervasive PSQL の管理

フェールオーバー ク ラスター環境に Pervasive PSQL をインス トールする と、 Pervasive PSQL はリ ソースと して管

理できます。 こ こでは、 一般的な管理の内容について説明します。

「Pervasive PSQL ライセンスおよびノードのメンテナンス」

「Pervasive PSQL のエラー時の動作」

「エラーが発生したノードにおける Pervasive PSQL の復元」

「Pervasive PSQL ト ランザクシ ョナル サービスの停止と再開始」

「Pervasive PSQL 設定の変更」

「プロキシ サーバーを持つク ラスター環境」

「ソフ ト ウェアのアップグレード」

Pervasive PSQL ラ イセンスおよび ノ ー ドのメ ンテナンス Pervasive PSQL ライセンスやマシンのメンテナンスに関する一般的な手順は、 フェールオーバー ク ラスター環境

のノードにも同様に適用されます。データベース エンジンがインス トールされた物理マシンまたは仮想マシンの

構成を変更する前には Pervasive PSQL 製品キーを認証解除して ください。 構成の変更が完了したら再度認証して

ください。

『Pervasive PSQL User's Guide』 の 「キーを認証解除するには」 および 「キーを認証するには」 を参照してください。

Pervasive PSQL のエラー時の動作

ク ラ スター ノードでエラーが発生した場合、 Pervasive PSQL ク ラ イアン ト はスタンバイ ノード上の PervasivePSQL エンジンに自動的に再接続しません。 アプリ ケーシ ョ ンでク ライアン ト を Pervasive PSQL データベースに

再接続するか、アプリ ケーシ ョ ンを再起動する必要があ り ます。データベース エンジンで [自動再接続の有効化]

がオンに設定されていたと しても同様の対処が必要です。

ト ランザクシ ョ ン一貫性保守がオフで、 ト ランザクシ ョ ンが完了する前にエラーが発生した場合には、 自動的に

ト ランザクシ ョ ンを開始する前の状態にロール バッ ク されます。つま り、すぐ前の完了済みチェッ ク ポイン トへ

戻る という こ とです。 ロール バッ クは、 アクティブ サーバーがデータ ファ イルへのアクセスを要求した時点で

発生します。

共有記憶域上にデー タ

ベースを作成する

ク ラスター ノードの うち 1 つのノードのオペレーティング システムから、 ユーザー psql と し

てログオンし、 データベースを置く フ ァ イル システム共有下にディ レ ク ト リ を作成し ます

(ユーザー root と してディ レク ト リ を作成する場合、 ユーザー psql はそのディ レク ト リに対し

て読み取り、 書き込みおよび実行権限を持っているこ とを確認してください)。

PCC を実行する ノード以外のすべてのク ラスター ノードを代替モードにします。

psql ユーザーと して、 1 つのアクティブ ノードで、 あるいはアクティブ ノードにアクセスでき

る ク ライアン トから PCC を実行します。 「PCC でク ラスター サーバーを構成する」 で追加した

サーバーに新しいデータベースを作成します。 [場所] には、データベースを置くディ レク ト リ

を指定します。 必要に応じてその他のデータベース オプシ ョ ンを指定します。

新しいデータベースの場合、 必要であればテーブルを作成します。

各 ノ ー ド か ら のデー タ

ベースへのアクセスを確

認する

各ク ラスター ノードは共有記憶域上の Pervasive PSQL データベースにアクセスできる必要があ

り ます。 データベースを作成したク ラスター ノード を代替モードにします。 これは "psql" リソース (データベース エンジン) を実行している ノードです。

ク ラスターの次のノードへフェール オーバーします。 次のノードが、 "psql" リ ソースの実行の

制御を受け取るこ とを確認して ください。 ク ラスター内の各ノードに対して、 上記の手順 (代

替、 フェールオーバー、 確認) を繰り返し、 開始したノードまで戻ったら終了します。

表 39 Linux Heartbeat への Pervasive PSQL の追加

操作 説明

163

Page 180: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

高可用性のサポー ト

ト ランザクシ ョ ン一貫性保守を設定している場合、ク ラスター ノードに障害が発生した時点と 後のチェッ ク ポイン トの時点との間に発生した完了済みの変更は回復させるこ とができます。 ト ランザクシ ョ ン一貫性保守はす

べてのノードで同じよ うに構成される必要があ り ます。また、ト ランザクシ ョ ン ログは共有記憶域に置かれます。

ただし、 ト ランザクシ ョ ン一貫性保守が有効だった場合でも、 ク ラスターの障害が発生した時点で完了していな

い ト ランザクシ ョ ンは失われます。

エ ラーが発生し た ノ ー ド における Pervasive PSQL の復元

フェールオーバー ク ラ スターには優先的に実行させるプラ イマ リ ノードがあるかも しれません。 プラ イマ リ

ノードでエラーが発生した場合、セカンダ リ ノードを使用するよ り も早急にプライマ リ ノードの方を復元しよ う

と思われるでし ょ う。 そのよ うな状況の場合は、 Pervasive PSQL の一時ライセンスによってプライマ リ ノードの

確立を支援できる Pervasive PSQL Insurance の利用をご検討ください。

Pervasive PSQL Insurance を使用すれば、 直ちにオンラインに戻し業務を続行するこ とができます。 その間に元の

Pervasive PSQL ラ イセンスの復元を行 う こ とが可能です。 Pervasive PSQL Insurance は、 3 回の認証が可能で、

Windows および Linux の 32 ビッ ト または 64 ビッ ト環境で利用可能な 14 日間の一時ライセンスを提供します。詳

細については、 http://www.agtech.co.jp/products/pervasive/ をご覧ください。

Pervasive PSQL ト ラ ンザクシ ョ ナル サービスの停止と再開始

オペレーティング システムから Pervasive PSQL ト ランザクシ ョナル サービスを手動で停止する と、 アクティブ

ノードから ク ラスターのフェールオーバーが発生します。サービス ノードのメンテナンスを実行しており、 その

よ う なフェールオーバーを回避したい場合は、 Pervasive PSQL ト ランザクシ ョナル サービスをク ラスター ユー

ティ リ ティから停止します。

Pervasive PSQL 設定の変更

データベース エンジンの再起動を必要とする設定の変更

変更する設定によってはデータベース エンジンを再起動する必要があ り ます。 そのよ うな変更の場合は、非アク

ティブ モードで変更を行う よ うにしてください。 そ う しないと、 その再起動が原因でフェールオーバーが起こ り

ます。 「設定リ ファレンス」 を参照して ください。

ユーザー数追加キーの追加

追加キーはアクティブ ノードまたは非アクティブ ノード上の Pervasive PSQL へいつでも追加するこ とができま

す。 ユーザー数追加キーを追加する場合、 データベース エンジンの再起動は不要で、直ちにその追加が適用され

ます。『Pervasive PSQL User's Guide』の「ユーザー数、セッシ ョ ン数または使用データの追加」 も参照して ください。

プロキシ サーバーを持つク ラス ター環境

ご利用のクラスター環境にプロキシ サーバーを組み込んでいる場合は、 『Pervasive PSQL User's Guide』 の 「プロ

キシ サーバー経由の認証アクセス」 を参照してください。

ソ フ ト ウ ェ アのア ッ プグレー ド

ある時点で、Pervasive PSQL またはフェールオーバー ク ラスター ソフ ト ウェアをアップグレードする必要がある

かもしれません。 Pervasive PSQL の場合、必ず非アクティブ ノード上のデータベース エンジンをアップグレード

するよ うにしてください。アップグレード バージ ョ ンのリ リース ノート も参照してください。フェールオーバー

クラスター ソフ ト ウェアの場合は、 ソフ ト ウェア ベンダーが推奨する手順を参照して ください。

164

Page 181: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

マイグレーシ ョ ン

マイグレーシ ョ ン

マイグレーシ ョ ンでは、 Pervasive PSQL を実行している仮想マシンを、 ある物理ホス トから別のホス トへ移動し

ます。通常は、仮想マシンのメモ リ、記憶域およびネッ ト ワーク接続が移行先に移行されます。ハイパーバイザー

によって、 マイグレーシ ョ ンは " ライブ " マイグレーシ ョ ンまたは " ホッ ト " マイグレーシ ョ ンと呼ばれます。

" ライブ " マイグレーシ ョ ンまたは " ホッ ト " マイグレーシ ョ ンでは、ク ライアン トから Pervasive PSQL への接続

がそのまま維持されます。 これによ り、 ハード ウ ェア バランスまたは リ ソース バランスの変更が可能です。

" コールド " マイグレーシ ョ ンでは、 仮想マシンを一時停止する必要があるため、 ネッ ト ワーク接続が中断され

ます。 ク ラ イアン トから Pervasive PSQL への接続を再確立する必要があ り ます。

マイグレーシ ョ ン環境には、 実行中の Pervasive PSQL のインスタンスが 1 つだけあ り ます。 これによ り、 ホス ト

マシンがク ラ ッシュした、 またはホス ト マシンを直ちにオフラインにする必要がある場合、その環境はやや脆弱

になり ます。 また、 共有記憶域にエラーが生じた場合、 データベース エンジンは物理記憶域に対する読み込みま

たは書き込みを処理するこ とができません。 ハイパーバイザーによっては、 共有記憶域を使用しないマイグレー

シ ョ ン ソ リ ューシ ョ ンを提供しています。

Pervasive PSQL Vx Server はマイグレーシ ョ ン環境に適した製品です。 仮想 MAC アドレス とホス ト名が仮想マシ

ン移行後も同じままであれば、 PSQL Vx Server は正常に動作し続けます。 製品キーの状態は " アクティブ " のま

まです。

Pervasive PSQL Server を使用するこ と も可能ですが、 その場合は別のホス トへの移行が発生したと きに製品キー

の状態が " 検証失敗 " に変わり ます。 データベース エンジンは、 一定期間 (検証失敗期間) は検証失敗状態の

キーで実行するこ とができます。 検証失敗期間が終わる前に元のホス トへ移行し直すという こ とであれば、 デー

タベース エンジンは正常に動作します。

マイグレーシ ョ ン環境で Pervasive PSQL をインス トールまたは構成する際、 特別な手順は必要あ り ません。 ハイ

パーバイザーのドキュ メン ト を参照して ください。

165

Page 182: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

高可用性のサポー ト

フ ォール ト ト レ ラ ンス

フォールト ト レラン ト環境はマイグレーシ ョ ン環境と似ていますが、さ らにコンポーネン トがエラーになっても

動作が中断されないよ うする機能も備えています。 フォールト ト レラン ト環境では、 ネッ ト ワーク接続、継続的

なサービスおよび同期された共有記憶域を介したデータ アクセスが確保されます。コンポーネン トの切り替えが

起こっても、ク ライアン ト マシンおよびアプリ ケーシ ョ ンは正常に機能し続け、データベース エンジンは中断さ

れません。

Pervasive PSQL Vx Server は 「マイグレーシ ョ ン」 での説明と同様の理由でフォールト ト レラン ト環境に適した製

品です。

フォールト ト レラン ト環境で Pervasive PSQL をインス トールまたは構成する際、 特別な手順は必要あ り ません。

ハイパーバイザーのドキュ メン ト を参照して ください。

166

Page 183: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

障害回復

障害回復

障害回復にはデータの回復やサイ トの回復が含まれています。 データの回復はデータを保護および復元する方法

です。 サイ トの回復は、 データを含むサイ ト全体を保護および復元する方法です。

データの回復は、 ハイパーバイザーの共有記憶域および Pervasive PSQL の ト ランザクシ ョ ン ログと ト ランザク

シ ョ ン一貫性保守によって容易に行う こ とができます。 「 ト ランザクシ ョ ン ログおよびト ランザクシ ョ ン一貫性

保守」 を参照して ください。Pervasive PSQL Server および Server Vx ではト ランザクシ ョ ン ログと ト ランザクシ ョ

ン一貫性保守を使用できます。

サイ トの回復は Pervasive PSQL Server と Server Vx のどちらでも実行できます。 Pervasive PSQL Server の場合は、

物理マシン用に単独の製品キーが必要です。 この回復に元のサイ トの仮想マシンが含まれる場合、 その仮想マシ

ンの起動時には Pervasive PSQL 製品キーの状態が 「検証失敗」 に変わり ます。 データベース エンジンは、 一定期

間 (検証失敗期間) は検証失敗状態のキーで実行するこ とができます。 検証失敗期間が終わる前に元のホス トへ

移行し直すという こ とであれば、データベース エンジンは正常に動作します。 ただし、 サイ トの回復で元のホス

トが失われる可能性があ り ます。

仮想 MAC アドレス とホス ト名が、回復されたサイ ト仮想マシンと元の仮想マシンとで同じままであれば、 PSQLVx Server は正常に動作します。 製品キーの状態は " アクティブ " のままです。

障害回復環境で Pervasive PSQL をインス トールまたは構成する際、 特別な手順は必要あ り ません。 ハイパーバイ

ザーのドキュ メン ト を参照して ください。

167

Page 184: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

高可用性のサポー ト

168

Page 185: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

10

ワークグループ エンジンの詳細

ワークグループ エンジンの技術的な詳細および高度な処理

この章では、 ワークグループ エンジンの も特徴的な機能を利用する方法について説明します。

「ネッ ト ワーク」

「サーバーとワークグループの技術的な相違」

「ワークグループ の問題のト ラブルシューティング」

「ロケーター ファ イルのリダイレク ト 」

169

Page 186: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ワークグループ エンジンの詳細

ネ ッ ト ワーク

サーバーおよびワークグループ製品には同一のネッ ト ワーク コンポーネン ト が含まれています。 したがって、

ワークグループ エンジンをサーバー エンジンにアップグレードするこ とが可能です。ク ライアン ト側のリ クエス

ターはいずれのタイプのエンジンにも接続するこ とができます。

NetBIOSPervasive ネッ ト ワーク サービス レイヤーは、以前サポート されていた名前付きパイプ、DNS および NDS などの

プロ ト コルと同様に、NetBIOS を使用してネッ ト ワーク上でエンジンを検索します。NetBIOS および DNS プロ ト

コルは、 ワークグループ エンジンと交信するのに使用するこ とができます。 Windows 上のサーバー エンジンは

名前付きパイプを使用して自身をアドバタイズするため、 NetBIOS は必要あ り ません。

ク ラ イアン トの リ クエスターが IP、 SPX、 または NetBEUI アドレスを見つける と、 その転送プロ ト コルを使用し

て MicroKernel エンジンに接続を確立しよ う と します。

MicroKernel のルーター決定アルゴ リズム

ク ラ イアン ト側の MicroKernel ルーターは、 完全に確立されたアルゴ リ ズムに従ってファ イルのゲー ト ウェ イ

オーナーシップを見つけます。

ク ラ イアン ト側のルーターが常に 初に試みるこ とは、 データ と同じコンピューター上のエンジンに接続するこ

とです。 このため、 データが存在する場所でエンジンが実行されているこ とは常に非常に効果的です。

Pervasive ネッ ト ワーク サービス レイヤーは、 リモート データベース エンジンに接続するのに非常に多数のさま

ざまな方法を用いるため、データベース エンジンが実行されていないファイル サーバー上のファイルを 初に開

こ う とする と きに時間がかかるこ とがあ り ます。 「ゲー ト ウ ェ イ一貫性保守」 をオンにする と、ルーターがエンジ

ンの位置を特定するのに失敗した各マシンを記憶するので、 その後その接続は試行されません。

リ モー ト ファ イル サーバー上のエンジンに接続できなかった場合、 ルーターはローカル エンジンが リモート

ファ イルを開く こ とを許可します。ローカル エンジンはまず新しいロケーター ファ イルを作成し、リモート ディ

レク ト リのオーナーシップをと るこ とを試みます。 既にほかの MicroKernel がそのディ レク ト リ を所有している

場合、 ローカル エンジンはルーターにステータス コード 116 を返します。

後に、ルーターはゲート ウェイ コンピューターを探そう と します。 ロケーター ファ イルを開き、ゲート ウェイ

エンジンの名前を読み込みます。それからエンジンにリ クエス ト を送り ます。ルーターは MicroKernel からステー

タス コード 116 を受け取らなければロケーター ファ イルを読み込まないこ とに注意して ください。 この動作は、

ゲート ウェイ機能を使用するためにはローカル ワークグループ エンジンがインス トールされている必要がある

こ とを示しています。 ローカル エンジンがないためにローカル エンジンを使用して リモート ファ イルを開く こ

とに失敗した場合、ルーターはロケーター ファ イルを読み込まず、ゲート ウェイ エンジンを見つけるこ とができ

ません。

表 40 ゲー ト ウ ェ イ検索の優先順位

優先順位 手順

1 データ ファイルと同一のコンピューター上でデータベース エンジンに接続を

試みます。

2 ローカル エンジン (ク ラ イアン ト マシン上の) を使用してデータ ファイルの

オープンを試みます。

3 ファ イルを所有するゲート ウェイ エンジンを見つけて接続を試みます。

170

Page 187: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

サーバーとワークグループの技術的な相違

サーバーとワークグループの技術的な相違

サーバー エンジンと ワークグループ エンジンにはいくつかの重要な相違点があ り ます。このセクシ ョ ンではその

違いについて説明します。

プ ラ ッ ト フ ォーム

サーバー エンジンには 32 ビッ ト版および 64 ビッ ト版があ り、Linux および Windows で使用するこ とができます。

ワークグループ エンジンの場合は 32 ビッ ト Windows 版のみです。ワークグループ エンジンを 64 ビッ ト Windowsオペレーティング システムで実行するこ とはできますが、 使用できる メモ リは 大でも 2 GB であるため、 一般

的に 64 ビッ ト システムでインス トールされる (2 GB を超える) 大量のメモ リ を活用するこ とはできません。

ユーザー イ ン ターフ ェ イス

Windows のサーバー エンジンは、インス トールされる と Windows のサービスと して実行されます。ワークグルー

プ エンジンは、インス トールされる とアプリ ケーシ ョ ンまたはサービスと して実行されます。『Getting Started withPervasive PSQL』 の 「ワークグループ エンジンの構成」 を参照して ください。 アプ リ ケーシ ョ ンと して実行する

よ うにインス トールした場合、 ワークグループ エンジンは ト レイ アイコンをインターフェイス と して使用しま

す。

認証と Btrieve セキュ リ テ ィ ポリ シー

サーバー エンジンでは、オペレーティング システムにおけるファイルのアクセス許可の設定を適用します。ワー

クグループ エンジンは自身でユーザーの認証を行いません。 ワークグループ エンジンがネッ ト ワーク上のコン

ピューターにアクセスするこ とができれば、そのデータに到達できます。この緩和されたセキュ リティは、セキュ

リ ティ よ り も使いやすさを優先する小規模のオフ ィ スを対象と しています。

ワークグループ エンジンでオペレーティング システム認証がないという こ とは、Btrieve の " 混合 " セキュ リティ

ポ リ シーと " ク ラシッ ク " セキュ リティ ポ リシーが同じであるこ とを意味します。 『Advanced Operations Guide』の 「セキュ リ ティ モデルと概念」 を参照してください。 セキュ リ ティ ポ リシーの違いは、 サーバー エンジンと

ワークグループ エンジン間の動作の違いです。

ゲー ト ウ ェ イのサポー ト

ワークグループ エンジンは、ローカル、 リモート共にファイルを開いたすべての場所にロケーター ファ イルを作

成し、 ワークグループ エンジンがゲート ウェイ オーナーシップを動的に適合できるよ うにします。 デフォル ト

で、 ワークグループ エンジンはほかのコンピューターやネッ ト ワーク デバイスで認証されるユーザー ID でも実

行されます。 このため、 ワークグループ エンジンはゲート ウェイ環境での使用に 適です。 『Getting Started withPervasive PSQL』 の 「ゲート ウェイ構成のセッ ト アップ」 を参照して ください。

サーバー エンジンは必ずしもゲート ウェイ ロケーター ファ イルを作成する、 または引き受けるわけではあ り ま

せん。 したがって、 サーバー エンジンをゲート ウェイ環境で使用するよ う な設計やテス ト を行なっていません。

そのため、ワークグループ環境では、ワークグループ エンジンに代わってサーバー エンジンをゲート ウェイ とす

るこ とはサポート されていません。

非同期 I/OWindows 版のサーバー エンジンは非同期 I/O を使用します。 また、データベース ページの書き込みの結合はサー

バー エンジンでのみ行われます。 これらの機能によって、 I/O の負荷が高いと きは、 ワークグループ エンジンに

比べサーバー エンジンが大きなパフォーマンスの利点を得るこ とができます。

デフ ォル ト の設定

いくつかのデータベース設定 (キャ ッシュ サイズやシステム キャ ッシュなど) のデフォルト値は、 サーバー エンジンと ワークグループ エンジンでそれぞれ異なり ます。ワークグループ エンジン設定用のデフォルト値は、シ

171

Page 188: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ワークグループ エンジンの詳細

ステム リ ソースの消費をよ り抑えるよ う設定されます。 『Advanced Operations Guide』 の 「設定リ ファレンス」 を

参照してください。

Xtreme I/O (XIO) のサポー ト

XIO は Windows 32 ビッ ト サーバー エンジンでのみサポート されます。 『Advanced Operations Guide』 の 「XtremeI/O ド ラ イバー」 を参照して ください。

ラ イセンス モデル

Pervasive PSQL Server および Pervasive PSQL Workgroup ではユーザー カウン ト ライセンス モデルを使用します。

Pervasive PSQL Vx Server では容量ベース ラ イセンス モデルを使用します。 『Pervasive PSQL User's Guide』 の 「ラ

イセンス モデル」 を参照してください。 Pervasive PSQL Vx Server に関する詳細については、 『Pervasive PSQL VxProduct Guide』 を参照してください。

172

Page 189: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ワークグループ の問題の ト ラ ブルシューテ ィ ング

ワークグループ の問題の ト ラ ブルシューテ ィ ング

このセクシ ョ ンでは、 ワークグループ環境での問題の解決に役立つヒン ト を提供します。

初の接続での待ち時間

初のファイル オープン リ クエス トが発行される と きに何度も遅延が起きるのであれば、次の方法が役に立つか

ど うか調べてください。

可能であれば、 データが存在する場所でエンジンが実行されるよ う にし て く だ さい。

ファ イル オープンのリ クエス ト をどこに送るかを決定する と き、 ク ライアン トが 優先で行う方法は、データが

あるのと同じマシン上のエンジンに接続するこ とです。ワークグループ エンジンがアプリ ケーシ ョ ンと して実行

されるのを確実にするため、次のコマンドを使用してエンジンのアイコンをスタート アップ フォルダーに入れま

す。

W3dbsmgr.exe

も う 1 つの方法と しては、 ワークグループ エンジンをサービス と してインス トールします。 『Getting Started withPervasive PSQL』 を参照してください。 また、 Pervasive PSQL ファ イルのデフォルトの場所については、 『GettingStarted with Pervasive PSQL』 の 「Pervasive PSQL ファ イルはどこにインス トールされますか?」 を参照して くだ

さい。

ゲー ト ウ ェ イ ト ポロジを実行し ている場合

データが存在する場所でエンジンを実行できない場合、 初の接続の待ち時間はよ り重要な問題になり ます。 試

してみるこ とがいくつかあ り ます。

1 ク ラ イアン トの設定で [サポート プロ ト コル] を減らし、 ネッ ト ワークで使用されていないプロ ト コルの使

用が試みられないよ うにします。

2 ゲート ウェイ一貫性保守を使用します。 ゲート ウェイ一貫性保守はク ライアン トの設定で、 ゲート ウェイ環

境で 初の接続を確立する と きの待ち時間をほとんどな くすこ とができます。[ゲート ウェイ一貫性保守] が

オンに設定されている と、ク ライアン ト ルーターがエンジンの実行されていないコンピューター名をレジス

ト リに書き込むよ うにします。 接続に失敗する と、 ルーターはこのサーバー名を実行中のみ保存するのでは

なく、 レジス ト リに保存します。 次回アプリ ケーシ ョ ンが起動したと き、 データのある場所のエンジンへの

接続は試行されません。 直ちに現在のゲート ウェイを決定する次の段階に進みます。

この設定は PCC で切り替えるこ とができます。 PCC の Pervasive PSQL エクスプローラーで [ローカル ク ラ

イアン ト ] ノードを展開し、 [MicroKernel ルーター] を右ク リ ッ ク します。 [プロパテ ィ ー] をク リ ッ ク し、

[アクセス] を選択します。 [ゲー ト ウ ェ イ一貫性保守] オプシ ョ ンをク リ ッ ク してオンに設定し (チェッ ク

マークは、 その設定が 「オン」 であるこ とを表します)、 [OK] をク リ ッ ク します。

メ モ この機能はト ポロジを固定するため、 デフォル トではオフになっています。 データが存在する場所に

サーバー エンジンまたはワークグループ エンジンを追加した場合、この設定をオンにした各ク ライアン トで

オフに戻す必要があ り ます。 この設定をオフに戻すと、 エンジンが実行されていないコンピューターのレジ

ス ト リ を消去するので、その後すぐにオンにする と新しい トポロジに基づいた新しいリ ス トが生成されます。

ステータ ス コー ド 116 ステータス 116 は MicroKernel のステータス コードで、 ゲート ウェイ と して動作する別の MicroKernel エンジン

によってファイルが使用されているこ とを示します。アプリ ケーシ ョ ンがステータス コード 116 を受け取った場

合、 MicroKernel ルーターはロケーター ファ イルを読むこ とができたけれどもゲート ウェイ コンピューター上で

実行されているエンジンと交信できなかったこ とを示します。

173

Page 190: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ワークグループ エンジンの詳細

初にしなければならないこ とは、ゲート ウェイがどれかを見極めるこ とです。 この作業は Gateway Locator ユー

ティ リ ティ を使用して行う こ とができます。

次に PSA ネッ ト ワーク テス ト を使用してそのコンピューターに接続してみます。 PSA は問題を分離するための

役に立つ情報を提供します。

これが起こる 1 つの状況は、 2 つのコンピューターがルーターで分けられていて、 両方と もファ イル サーバーを

見るこ とができるが、 互いを見るこ とができない場合です。

174

Page 191: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ロケーター フ ァ イルのリ ダイ レ ク ト

ロケーター フ ァ イルのリ ダイ レ ク ト

ゲート ウェイ エンジン操作のこの機能は、複数ディ レク ト リのデータベースの ト ランザクシ ョ ン ア ト ミ シティを

保証し、 また複数のデータ ディ レク ト リにわたるゲート ウェイ エンジンの名前の変更を容易にします。

Pervasive PSQL ク ラ イアン トが リモート データ ファ イルにアクセスする際に次の方法を使用するこ とを思い出

してください。

データ ファ イルと同一のコンピューター上でデータベース エンジンに接続を試みます。

次に、 そのリモート マシンでデータベース エンジンが使用可能でない場合、 ローカル エンジンを使用して

リモート ディ レク ト リのオーナーシップをと り、 ロケーター ファ イルを作成します。 ゲート ウェイ ロケー

ター ファ イルが既に存在する場合、 ローカル エンジンは使用されません。

3 番目に、 指定されたゲート ウェイ エンジンを使用するこ とを試みます。

ゲート ウェイ設定は、データ ファ イルが存在するコンピューター上に使用可能なデータベース エンジンがない場

合にのみ有効になるこ とを覚えておいてください。

この機能によ り、 同一ボ リ ューム上の複数ディ レク ト リのデータベースの ト ランザクシ ョ ン一貫性保守を保ちな

がら動的 (変動) ゲート ウェイ エンジンを使用するこ とができます。 この利点は、別のゲート ウェイ ロケーター

ファイルを指示する新しいゲート ウェイ ロケーター ファ イルによってもたら されました。新しいタイプはリ ダイ

レ ク ト ロケーター フ ァ イルと呼びます。ディ レク ト リ D のロケーター ファ イルを指示する リダイレク ト ロケー

ター ファ イルをディ レク ト リ A、 B、 C に持つこ とによ り、 ディ レク ト リ D のロケーター ファ イルが指定する

ゲート ウェイ エンジンが、ほかのディ レク ト リにあるデータ ファ イルのサービスも確実に提供するこ とができる

よ うにな り ます。

ディレク ト リ D のロケーター ファ イルが固定ゲート ウェイを指定しているか、これらのファイルを 初に開いた

エンジンによって動的に作成されるかにかかわらず、 このアーキテクチャは指定されたすべてのディ レク ト リが

必ず同一のゲート ウェイ エンジンを使用します。同様に、いくつかのディ レク ト リの固定ゲート ウェイを変更し

よ う とする場合、 リダイレク ト ロケーター ファ イルを使用する と、すべてのロケーター ファ イルではなく、たっ

た 1 つのロケーター ファ イルを変更するだけで済みます。したがって、一定のハード ド ラ イブ上のすべてのデー

タ ファ イルが固定ゲート ウェイを指定している といないにかかわらず、同一ゲート ウェイ エンジンを使用するよ

うに指定するこ とができます。

リ ダイ レ ク ト ロケーター フ ァ イルの要件

リ ダイレク ト ロケーター ファ イルの 初の行は "=>" で始め、 その後に必ず同一ド ラ イブ上にある別のロケー

ター ファ イルのパスを指定する必要があ り ます。パス名にはスラ ッシュおよび円記号の任意の組み合わせを使用

するこ とができます。スラ ッシュはすべてローカル オペレーティング システムの使用するタイプの区切り文字に

変換されます。

スラ ッシュで終わるパスを指定した場合、データベース エンジンはパスの 後にデフォルトのロケーター ファ イ

ル名 (~PVSW~.LOC) を追加します。指定したパスがスラ ッシュで終わっていない場合、データベース エンジン

はパスにファイル名が含まれているものと見なします。

次の表は、 リ ダイレク ト ロケーター ファ イルのパスの指定方法の一覧です。

これらのロケーター ファ イルに複数レベルの リ ダイレク ト を割り当てる こ とができます。 たとえば、 初のロ

ケーター ファ イルが 2 番目のロケーター ファ イルを指示し、2 番目のロケーター ファ イルが 3 番目のロケーター

表 41 リ ダイ レ ク ト ロケーター フ ァ イル パスの記述方法

パス 説明

=>\path_name 現在のロケーター ファ イルが格納されているルート ド ライブからパスを指定します。

=>.\path_name 現在のディ レク ト リからの相対パスを指定します。

=>..\path_name 現在のディ レク ト リの親ディ レク ト リからの相対パスを指定します。

175

Page 192: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ワークグループ エンジンの詳細

ファ イルを指示する という具合です。 各ワークグループ エンジンはそれぞれのロケーター ファ イルを順に開き、

実際のゲート ウェイ名を探します。 いったん "=>" で始まらないロケーター ファ イルを見つける と検索は中止さ

れ、 エンジンはこのロケーター ファ イルがゲート ウェイ エンジンを指定しているものと見なします。

リ ダイ レ ク ト ロケーター フ ァ イルの作成

ほかのロケーター ファ イルと同様、 リダイレク ト ロケーター ファ イルは普通のテキス ト ファ イルです。 リ ダイ

レ ク ト ロケーター ファ イルは手作業でもプログラムからでも作成する こ とができます。 リ ダイレ ク ト ロケー

ター ファ イルには読み取り専用フラグを設定しておかないと、そのディ レク ト リにあるデータ ファ イルに 初に

アクセスを試みたエンジンによって上書きされてしまいます。

リ ダイ レ ク ト ロケーター フ ァ イルを作成するには

1 メモ帳またはテキス ト エディ ターを開き、 新規テキス ト ファ イルを開きます。

2 完了時にファイルをどこに保存するかを決定します。別のロケーター ファ イルにリダイレク ト しよ う とする

データ ファ イルと同じディ レク ト リにファ イルを保存します。

たとえば、 C:\data にあるデータ ファ イルが、 確実にほかのデータ ファ イルと同じゲート ウェイ エンジンに

よってアクセスされるよ うにするには、 C:\data を忘れないよ うにしておきます。

3 => と次のロケーター ファ イルのパス名を入力します。 前の手順の例で続ける と、 C:\data にある現在のデー

タ ファ イルが、C:\moredata にあるロケーター ファ イルで指定されたゲート ウェイ エンジンに属するよ うに

したい場合、 次のよ うに入力します。

=>..\moredata\ (推奨) または

=>\moredata\ (推奨しません)

初のケースでは現在のディ レク ト リからの相対パスを指定しています。 2 番目のケースは現在のド ライブ

からの絶対パスを指定しています。 この例の場合では、 両方と も同じ目的のディ レク ト リ を解決するこ とが

できます。

メ モ Pervasive はリダイレク ト ロケーター ファ イルでは相対パス ( .\ または ..\ で始まる) を使用し、 同じ

データにアクセスするすべてのワークステーシ ョ ンで同じ共有名を使用するこ とを強くお勧めします。 この

2 つの忠告に従えば、 マップ ド ラ イブでのネッ ト ワーク パス名の解決で起こるエラーを防ぐこ とができま

す。

4 ゲート ウェイ エンジンを指定したいデータ ファ イルが存在するディ レク ト リに ~PVSW~.LOC という名前で

ファイルを保存します。

5 メモ帳またはテキス ト エディ ターを閉じます。

6 このテキス ト ファ イルに読み取り専用フラグを設定します。

Windows でファイルを読み取り専用にするには、Windows エクスプローラーで ファ イル アイコンを右ク リ ッ

ク して [プロパティ] ダイアログ ボッ クスを使用するか、 [プログラム] の DOS セッシ ョ ンかプログラムで

ATTRIB コマンドを使用します。

ATTRIB +R ~PVSW~.LOC

固定ゲー ト ウ ェ イで多数のデータ デ ィ レ ク ト リの同期を と るには

1 手作業または Gateway Locator プログラムを使用して、 リ ダイレク ト しない読み込み専用の (固定) ロケー

ター ファ イルを作成します。ゲート ウェイ と して使用するワークグループ エンジンを指定する必要があ り ま

す。

たとえば、 ロケーター ファ イルに "workgroup1" とい う コンピューター名をゲート ウェイ エンジンと して指

定し、 ファ イルが C:\DATA\DB1 にある と します。

176

Page 193: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ロケーター フ ァ イルのリ ダイ レ ク ト

2 前の手順で指定したゲート ウェイ エンジンを使用しよ う とする、その他のデータ ディ レク ト リ ごとに、 リ ダ

イレク ト ロケーター ファ イルを作成する必要があ り ます。 各リダイレク ト ロケーター ファ イルは前の手順

で作成したファイルを示す必要があ り ます。

前の例でいう と、 C:\DATA\DB2 および C:\DATA\DB3 にある リダイレク ト ロケーター ファ イルは次のテキ

ス ト を含みます。

=>..\DB1\

これによ り、 このファ イルを読み込んだエンジンはすべて相対パスに従って、 指定された C:\DATA\DB1 で別のロケーター ファ イルを検索します。 この場合、指定したディレク ト リには "workgroup1" をゲート ウェイ

コンピューターと して挙げているロケーター ファ イルがあ り ます。

動的ゲー ト ウ ェ イで多数のデータ デ ィ レ ク ト リの同期を と るには

1 上記の手順に従いますが、手順 1 でロケーター ファ イルが固定的に割り当てられないよ うに書き込み可能に

するだけです。

この場合、 リ ダイレク ト階層内にあるデータ ファ イルにどのエンジンもアクセスしていなければ、 目的の

ディレク ト リにはロケーター ファ イルがないという こ とを覚えておいてください。 この状態は正常です。動

的ロケーター ファ イルはエンジンの 初のデータ アクセスによって各セッシ ョ ンに作成され、 後のユー

ザー セッシ ョ ンが終了したと きに削除されます。 ロケーター ファ イルが存在しないデータ ディ レク ト リ を

示すリダイレク ト ロケーター ファ イルを持つこ とは問題あ り ません。 この場合、 データ ファ イルを 初に

開いたエンジンがロケーター ファ イルを作成します。

図 4 に示したロケーター ファ イルの例を使用する と、 左側のリダイレク ト ロケーター ファ イルはデータベース

エンジンに 1 つ上のディレク ト リに行き、 そのサブディ レク ト リの newdir でデフォルト名 (~PVSW~.LOC) を

持つ別のロケーター ファ イルを探すよ うに指示しています。今度は、 このロケーター ファ イルが ntserver1 とい う名前のコンピューター上にあるワークグループ エンジンがゲート ウェイ エンジンであるこ とを指定します。

その結果、 mydir ディ レク ト リにあるデータ ファ イルにアクセスするために、 ntserver1 にあるデータベース

エンジンが使用されます。

図 4 リ ダイ レ ク ト ロケーター フ ァ イルの例

mydir/~pvsw~.loc

=>../newdir/ ntserver1

newdir/~pvsw~.loc

177

Page 194: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

ワークグループ エンジンの詳細

178

Page 195: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

11

データベース リ ソースの監視

Monitor を使用してデータベース リ ソースを調べる

この章では、 以下の項目について説明します。

「Monitor の概要」

「Monitor のグラフ ィカル ユーザー インターフェイス」

「Monitor のコマンド ライン インターフェイス」

179

Page 196: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース リ ソースの監視

Monitor の概要

Monitor はデータベース エンジンの特定の動作と属性を監視する こ とができるユーティ リ テ ィです。 このユー

ティ リ ティでは、 データベース管理およびアプリ ケーシ ョ ンのプログラムの診断に役立つ情報を提供します。 こ

のユーティ リ テ ィは ト ランザクシ ョナル インターフェイスおよびリ レーシ ョナル インターフェイスの状況も監

視できます。

イ ン ターフ ェ イスの各種バージ ョ ン

Monitor には 3 つのインターフェイスがあ り、これらはすべて同じ機能を提供します。グラフ ィカル インターフェ

イスでは、 一連のダイアログ ボッ クスで情報を表します。 コマンド ライン インターフェイスでは、 設定可能な

場所への情報を指示する実行可能プログラムを使用し ます。 も う 1 つのインターフェ イ スは Pervasive PSQLControl Center に組み込まれており、 データベース エンジンのコンテキス ト メニューからアクセスします。

グラフ ィカル ユーザー インターフェイスの説明については、 「Monitor のグラフ ィカル ユーザー インター

フェイス」 を参照してください。

コマンド ライン インターフェイスの説明については、 「Monitor のコマンド ライン インターフェイス」 を参

照してください。

PCC に組み込まれた Monitor の詳細については、 『Pervasive PSQL User's Guide』 の 「Monitor」 を参照して く

ださい。

180

Page 197: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Monitor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

Monitor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

グラフ ィカル ユーザー インターフェイス (GUI) バージ ョ ンの Monitor は、 Windows 32 ビッ トおよび 64 ビッ ト

プラ ッ ト フォームで実行される 32 ビッ ト Windows アプリ ケーシ ョ ンです。

Monitor では、 ある時点のサーバー稼動状況のスナップシ ョ ッ ト を作成するこ とができます。 スナップシ ョ ッ ト

がどのく らい 近のものであるかは、 リ フレッシュ レートの間隔によって決ま り ます。デフォルトの間隔は 4 秒です。 リ フレッシュ レートの設定方法については、 「Monitor のオプシ ョ ン設定」 を参照して ください。

Monitor の起動 オペレーティング システムの[ス ター ト ] メニューまたはアプ リ画面から、あるいは Pervasive PSQL Control Centerの [ツール] メニューから Monitor にアクセスします。

Monitor はデフォルトでローカル データベース エンジンに接続します。 しかし、 リモート サーバーへ接続すれ

ば、 リモート データベース エンジンのリ ソースも監視するこ とができます。

リ モー ト サーバーに接続するには

1 Monitor で現在開かれているダイアログがないこ とを確認してください。

ダイアログが開いていた場合はリモート サーバーに接続するこ とができません。

2 [オプシ ョ ン] メニューの[接続] をク リ ッ ク します。[リ モー ト サーバーに接続]ダイアログが表示されます。

3 [サーバー名] フ ィールドに、 監視対象のサーバーの名前または IP アドレスを入力します。

4 [ユーザー名] および [パスワー ド] フ ィールドにそれぞれサーバーに対するユーザー名とパスワードを入力

します。

認証されるためには、指定されたユーザーが、データベース エンジンが起動しているコンピューターに対し

管理者レベルの権限を持っているか、 そのコンピューター上の Pervasive_Admin グループのメンバーでなけ

ればなり ません。

5 [OK] をク リ ッ ク します。

サーバーから切断するには

1 Monitor で現在開かれているダイアログがないこ とを確認してください。

ダイアログが開いていた場合はサーバーから切断するこ とはできません。

2 [オプシ ョ ン] メニューの [切断] をク リ ッ ク します。

3 [はい] をク リ ッ ク します。

Monitor のオプシ ョ ン設定

Monitor オプシ ョ ンを設定するには

1 [オプシ ョ ン] メニューから [設定] をク リ ッ ク します。 [Monitor 設定] ダイアログには現在の設定が表示

されます。

181

Page 198: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース リ ソースの監視

2 以下のオプシ ョ ンを指定します。

3 [OK] をク リ ッ ク して設定を保存します。

ト ラ ンザクシ ョ ナル イ ン ターフ ェ イス リ ソースの監視

このセクシ ョ ンでは、 ト ランザクシ ョナル インターフェイス (MicroKernel) を監視する以下のオプシ ョ ンについ

て説明します。

「ダイアログ リ フレッシュ オプシ ョ ンの設定」

「アクティブ ファ イルの表示」

「セッシ ョ ン情報の表示」

「 リ ソース使用状況の表示」

「通信統計情報の表示」

ダイアログ リ フ レ ッ シュ オプシ ョ ンの設定

Monitor の各種ダイアログにある情報は、 以下のよ うに自動または手動でリ フレッシュできます。

自動に設定するには、 [自動リ フ レ ッ シ ュ] オプシ ョ ンを選択します。 [Monitor] のオプシ ョ ンで指定した

[リ フ レ ッ シュ レー ト ] に従ってダイアログが更新されます (「Monitor のオプシ ョ ン設定」 を参照して くだ

さい)。

手動で行うには、 [リ フ レ ッ シュ] をク リ ッ ク します。

アク テ ィ ブ フ ァ イルの表示

[MicroKernel] メニューの [アク テ ィ ブ フ ァ イル] をク リ ッ ク します。 [MicroKernel アク テ ィ ブ フ ァ イル] ダイ

アログが表示され、 現在 MicroKernel によって開かれているファイルをすべて示します。

終了時に設定を保存 Monitor を閉じる際、全設定を保存するにはこのオプシ ョ ンを選択します。 Monitor によ り、 こ

のダイアログにある設定および各ダイアログにある自動リ フレ ッシュ オプシ ョ ンが保存され

ます。

終了時にウ ィンド ウ レイアウ ト を保存

開かれたすべてのダイアログの状態 (開いているか閉じているか) および画面表示位置を保存

するには、 このオプシ ョ ンを選択します。 Monitor を再起動する と、 そのダイアログが自動的

に開かれ、選択した位置に配置されます。 この機能によ り、好みのレイアウ ト を簡単に再現す

るこ とができます。

リ フ レ ッ シ ュ レー ト

(秒単位)

Monitor がその表示を リ フレッシュする間隔を指定します。 リ フレッシュ レートは秒単位で表

します。 デフォルトの設定は 4 秒です。 指定できるのは整数のみです。

この数値の設定が小さ過ぎる と、 Monitor は頻繁にリ フレッシュするため、 データベース エン

ジンのパフォーマンスに影響を与える こ とがあ り ます。 この現象は特にローカル データベー

ス エンジンを監視する場合に現れます。

182

Page 199: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Monitor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

図 5 [MicroKernel アク テ ィ ブ フ ァ イル] ダイアログ

フ ァ イルのリ ス ト

ダイアログの左上に [アクテ ィ ブな MicroKernel フ ァ イル] の リ ス トが表示されます。 このスクロール可能な リ

ス トには、 開いているすべてのファイルの絶対 パスがアルファベッ ト順に表示されます。

フ ァ イルについての詳細情報を表示するには

1 リ ス ト内の目的のファイルをク リ ッ ク します。

2 ダイアログの左下にある [フ ァ イル情報] セクシ ョ ンに、 そのファイルに関する情報が表示されます。

フ ァ イル ハン ドルのリ ス ト

[MicroKernel アク テ ィ ブ フ ァ イル] ダイアログの右上には [選択されたフ ァ イルのハン ドル] の リ ス トが表示さ

れます。 このスク ロール可能な リ ス トには、 選択したファ イルに関連するアクティブ ハンドルが表示されます。

ページ サイズ ファ イルの各ページ サイズ (バイ ト単位) を表します。

リードオン リー

フラグ

このファ イルに、 オペレーティング システムから リードオン リーのフラグが付けられているかを示しま

す。

レコード ロ ッ ク 選択したファイルのアクティブ ハンドルのいずれかが、レコード ロ ッ クを行っているかど うかを示しま

す。 どのアプリ ケーシ ョ ンもロ ッ ク されたレコードを読み込むこ とが可能ですが、 レコードの変更や削

除ができるのは、 ロ ッ クを行ったアプリ ケーシ ョ ンのみです。 レコード ロ ッ クはファ イルを開いたアプ

リ ケーシ ョ ンがレコードを更新している期間中にのみかかり ます。 " はい " はファ イルに対し 1 つ以上の

レコード ロ ッ クが適用されているこ とを示し、 " いいえ " はロッ ク されたレコードがないこ とを示して

います。

トランザクション

ロ ッ ク

選択したファイルのアクティブ ハンドルのいずれかが、 ト ランザクシ ョ ン ロ ッ クを行っているかど うか

を示します。 ト ランザクシ ョ ン ロ ッ クはファ イルを開いたアプリ ケーシ ョ ンが ト ランザクシ ョ ンの作業

をしている期間中にのみかかり ます。

物理ファ イル サイズ KB

ファ イルのサイズをキロバイ ト (KB) で示します。 この情報は特に、容量ベースのライセンス モデルで

ファ イルご との使用データ量を再調査する場合に役立ちます。 『Pervasive PSQL User's Guide』 の 「容量

ベース ラ イセンス モデル」 も参照してください。

Monitor では、 個々のファイルのサイズにはキロバイ ト (KB)、 また リ ソースの使用状況 (「 リ ソース使

用状況の表示」) にはメガバイ ト (MB) の単位を使用するこ とに注意してください。License Administratorではサイズの単位にギガバイ ト (GB) を使用しています。 これは、 使用データがその単位でキーに関連

付けられているからです。 コンテキス ト ごとに適切な単位を必要と します。

大量レコードの挿入直後にファ イルを閉じた場合、Monitor ではそのファ イルのサイズの変更が直ちに反

映されないので注意して ください。 たとえば、 そのファ イルに関する [物理ファ イル サイズ KB] の統

計情報は、 次回そのファ イルが読み取り または書き込みのために開かれるまで更新されません。

183

Page 200: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース リ ソースの監視

各ハンドルは、名前 (通常はユーザーのログイン ID)、 またはデータベース エンジンのク ライアン ト リ ス トへの

インデッ クスで表されます。

フ ァ イル ハン ドルについての詳細情報を表示するには

1 リ ス ト内の目的のハンドルをク リ ッ ク します。

2 ダイアログの下部中央にある [ハン ドル情報] セクシ ョ ンに、 そのハンドルに関する情報が表示されます。

セ ッ シ ョ ン情報の表示

現在のセッシ ョ ンおよびフ ァ イルの リ ス ト や各セッシ ョ ンのフ ァ イル ハン ドルを表示する こ とができます。

「セッシ ョ ン」 とは、 ト ランザクシ ョナル エンジン インターフェイスによって使用されるク ライアン ト ID、 また

はリ レーシ ョナル エンジン インターフェイスへの接続と定義されます。 「ク ラ イアン ト ID」 とは、データベース

ト ランザクシ ョ ン コンテキス ト を一意に識別するために、アプリ ケーシ ョ ン、ク ライアン ト プラ ッ ト フォームお

よびデータベース エンジンによって提供される要素を組み合わせた 16 バイ トの構造体と定義されます。

接続番号 ク ライアン トのネッ ト ワーク接続番号を表示します。 ク ライアン トがネッ ト ワーク接続を持たない場

合、 このフ ィールドには "NA" (適用外) と表示されます。

タスク番号 サーバーまたは Windows ク ラ イアン トで発生するプロセスのタスク番号を表示します。

サイ ト ユーザー プロセス (ローカルまたはリモート ) のロケーシ ョ ンを示します。

ネッ ト ワーク ア ド

レス

ネッ ト ワーク上の呼び出し元プロセスのロケーシ ョ ンを表示します。

呼び出し元プロセスが SPX の場合、 ネッ ト ワークのノード / ネッ ト ワーク アドレスの先頭に S: と表

示されます。 たとえば S: 65666768 00000000001 のよ うに表示されます。

呼び出し元プロセスが TCP/IP の場合、 アドレスの先頭には次のよ うに T が付きます。

T: 180.150.1.24、 T: 1234:5678:0000:0000:0000:0000:9abc:def0、 あるいはT: <mymachine.mydomain.mycompany>.com

オープン モード アプリ ケーシ ョ ンでファイルの特定のハンドルを開くのに使用する方法を表示します。有効なオープ

ン モードは以下のとおりです。

ノーマル - ファ イルを開いたアプリ ケーシ ョ ンでノーマル共有読み込み / 書き込みアクセスが可能

アクセラレイティ ド - ファ イルを開いたアプリ ケーシ ョ ンで共有読み込み /書き込みアクセスが可能

リードオン リー - ファ イルを開いたアプ リ ケーシ ョ ンで読み込み専用モードでアクセスできるが、

ファ イルの変更は不可

エクスクルーシブ - ファ イルを開いたアプリ ケーシ ョ ンでエクスクルーシブなアクセス モードが使

用可能。 呼び出し元アプリ ケーシ ョ ンが閉じるまで、 ほかのアプリ ケーシ ョ ンからファ イルを開く こ

とはできません。

Monitor では、 すべてのオープン モードについて、 非 ト ラ ンザクシ ョ ンまたは共有ロ ッ クが適用可能

な場合は、 その状態も示します。

レコード ロック タイプ 現在ハンドルで扱われているレコード ロ ッ クの種類を表示します。 レコード ロ ッ クには、 [シング

ル]、 [マルチ]、 [なし] の 3 種類があ り ます。

シングル レコード ロ ッ クの場合、ユーザーは一度に 1 つのレコードをロ ッ クするこ とができます。マ

ルチ レコード ロ ッ クの場合、 ユーザーは一度に複数のレコードをロ ッ クするこ とができます。

ウェイ ト状態 このハンドルで、なんらかのロ ッ クによってユーザーが待機しているかど うかを次のよ うに表示しま

す。 [レコード ロ ッ ク ウェイ ト ]、 [ファ イル ロ ッ ク ウェイ ト ]、 または [なし]。

ト ラ ンザク シ ョ ン

タイプ

現在ハンドルで扱われている ト ランザクシ ョ ン ロ ッ クの状態を表示します。 ト ランザクシ ョ ンには、

[排他]、 [並行]、 および [なし] の 3 種類があ り ます。

184

Page 201: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Monitor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

セッシ ョ ン情報は、ト ランザクシ ョナル インターフェイスおよびリ レーシ ョナル インターフェイスを介して確立

されたセッシ ョ ンを示します。 ( リ レーシ ョナル インターフェイスによってのみ確立されたセッシ ョ ンを表示さ

せる場合は、 「SQL アクティブ セッシ ョ ンの表示」 を参照してください)。

セ ッ シ ョ ンを表示するには

[MicroKernel] メニューの [アクテ ィ ブ セ ッ シ ョ ン] をク リ ッ ク します。 [MicroKernel アク テ ィ ブ セ ッ シ ョ ン]

ダイアログが表示されます。

図 6 [MicroKernel アク テ ィ ブ セ ッ シ ョ ン] ダイアログ

セ ッ シ ョ ンのリ ス ト

ダイアログの左上に [アクテ ィ ブな MicroKernel セ ッ シ ョ ン] の リ ス トが表示されます。 このスクロール可能な

リ ス トには、 アルファベッ ト順にアクティブ セッシ ョ ンの名前が表示されます。 各セッシ ョ ンは、 名前 (通常は

ユーザーのログイン ID)、 またはデータベース エンジンのク ライアン ト リ ス トへのインデッ クスで表されます。

セ ッ シ ョ ンについての詳細情報を表示するには

1 目的のセッシ ョ ンをク リ ッ ク します。

2 ダイアログの左下にある [セ ッ シ ョ ン情報] セクシ ョ ンに、 そのセッシ ョ ンに関する情報が表示されます。

接続番号 セッシ ョ ンのネッ ト ワーク接続番号を表示します。そのセッシ ョ ンがネッ ト ワーク接続を持たない

場合、 このフ ィールドには "NA" (適用外) と表示されます。

タスク番号 サーバーで、 または Windows ク ライアン トから発生するプロセスのタスク番号を表示します。

サイ ト セッシ ョ ン プロセス (ローカルまたはリモート ) のロケーシ ョ ンを示します。

ネットワーク アドレス ネッ ト ワーク上の呼び出し元プロセスのロケーシ ョ ンを表示します。 呼び出し元プロセスが SPXの場合、 ネッ ト ワークのノード / ネッ ト ワーク アドレスの先頭に S: と表示されます。 たとえば S:65666768 00000000001 のよ うに表示されます。

呼び出し元プロセスが TCP/IP の場合、 アドレスの先頭には次のよ うに T が付きます。

T: 180.150.1.24、 T: 1234:5678:0000:0000:0000:0000:9abc:def0、 あるいはT: <mymachine.mydomain.mycompany>.com

単独マシンの複数のク ライアン ト を異なる TCP/IP アドレスで接続する場合、 各アドレスはそのク

ラ イアン トに対して有効です。 ただし、 データベース エンジン内部的には、 ク ラ イアン ト と関連

付けられるアドレスは、そのク ライアン トによって使用される実際のアドレスではないかもしれま

せん。 これは、 データベース エンジンが同じマシンからの複数のク ライアン ト を特定および管理

するからです。 その結果、 Monitor はエンジン情報を報告しているので、 このユーティ リ ティでは

実際のアドレスではなく、 関連付けられたアドレスが表示される可能性があ り ます。

使用中ロッ ク数 セッシ ョ ンが現在使用中のロ ッ ク数。

185

Page 202: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース リ ソースの監視

セ ッ シ ョ ンのフ ァ イル ハン ドル

ダイアログの右上に [選択されたセ ッ シ ョ ンのハン ドル] の リ ス トが表示されます。 このスクロール可能な リ ス

トには、選択したセッシ ョ ンに関連するアクティブ ファ イル ハンドルが表示されます。MicroKernel は、セッシ ョ

ンでファ イルを開くたびにハンドルを作成します。 1 つのセッシ ョ ンが同じファ イルに対していくつかのハンド

ルを持つこ とができます。

セ ッ シ ョ ンのフ ァ イル ハン ドルについての詳細情報を表示するには

1 目的のセッシ ョ ン ファ イル ハンドルをク リ ッ ク します。

2 ダイアログの中段右側にある [ハン ドル情報] セクシ ョ ンに、 そのハンドルに関する情報が表示されます。

現在のセ ッ シ ョ ンの削除

現在のセッシ ョ ンを削除する と、 そのセッシ ョ ンはアクテ ィブ セシ ョ ンの リ ス ト から削除され、 セッシ ョ ンの

データベース エンジンへの接続が切断されます。セッシ ョ ンが開いていたすべてのファイルが閉じられ、割り当

てられていたすべてのリ ソースが解放されます。

注意 現在のセッシ ョ ンを削除する と、 その時点で発生している処理によっては、 データが不正になる、 レ

コードが不完全になる、 またはト ランザクシ ョ ンが中止される可能性があ り ます。

セ ッ シ ョ ンを削除するには

1 目的のセッシ ョ ン名をク リ ッ ク します。

2 以下の操作のいずれかを実行します。

[現セ ッ シ ョ ンの削除] をク リ ッ クする と、 選択したセッシ ョ ンは削除されます。 [全セ ッ シ ョ ンの削除] をク リ ッ クする と、 現在のセッシ ョ ンはすべて削除されます。

トランザクション タイプ セッシ ョ ンが現在扱っている ト ランザクシ ョ ン ロ ッ クの種類。 ト ランザクシ ョ ンには、 [排他] 、

[並行]、 および [なし] の 3 種類があ り ます。

読み込みレコード数 セッシ ョ ンがファイルを 初に開いてから現在までに読み込んだレコードの数。

挿入レコード数 セッシ ョ ンが挿入したレコードの数。

削除レコード数 セッシ ョ ンが削除したレコードの数。

更新レコード数 セッシ ョ ンが更新したレコードの数。

ディ スク アクセス数 セッシ ョ ンがディ スク アクセスを要した回数。 開いたばかりのファイルでは、 ディ スク アクセス

についての情報は表示できません。

キャッシュ アクセス数 このク ライアン トが L1 キャ ッシュに失敗し、 要求を満たすために L2 キャ ッシュまたはディ スク

から L1 キャ ッシュへページを移動した回数を示します。

オープン モード 「オープン モード」 を参照してください。

レコード ロ ッ ク タイプ 「レコード ロ ッ ク タイプ」 を参照して ください。

ウェイ ト状態 「ウェイ ト状態」 を参照して ください。

ト ランザクシ ョ ン タイプ 「 ト ランザクシ ョ ン タイプ」 を参照して ください。

186

Page 203: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Monitor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

リ ソース使用状況の表示

[MicroKernel] メニューの [リ ソース使用状況] をク リ ッ ク します。 [MicroKernel リ ソース使用状況] ダイアロ

グ ボッ クスが表示されます。

図 7 [MicroKernel リ ソース使用状況] ダイアログ

このダイアログでは、 MicroKernel が 後に起動してから現在まで使用されている リ ソースを表示し ます。

[MicroKernel 稼働時間]セクシ ョ ンには、MicroKernel が起動されている時間が、週、日、時、分、秒で示されます。

このダイアログでは各リ ソースに対して以下の統計情報が表示されます。

現在値 - そのリ ソースの現在の値を表示。

ピーク値 - MicroKernel が起動してから現在までにそのリ ソースが記録した 高値を表示。

大値 - そのリ ソースで使用できる 大値を表示。

データベース エンジンは、 これらの リ ソースの う ちいくつかの 大値を動的に制御します。 ユーザー数、 セッ

シ ョ ン数および使用中データの 大値は製品ライセンスによって決ま り ます。 『Pervasive PSQL User's Guide』 の

「ラ イセンス モデル」 を参照してください。

リ ソースが監視対象の Pervasive PSQL 製品のタイプに適用されない場合、 そのリ ソースの各統計情報には "N/A"(適用外) が表示されます。 たとえば、 " ユーザー数 " は Pervasive PSQL Vx Server には適用されません。 このた

め、 Pervasive PSQL Vx Server が監視される場合は、 [ユーザー数] の [現在値]、 [ピーク値] および [ 大値] に

は "N/A" が表示されます。 同様に、 Pervasive PSQL Server が監視される場合は、 [セッシ ョ ン数] と [使用中デー

タ MB] の [ 大値] には "N/A" が表示されます。

ただし、 Pervasive PSQL Vx Server の使用を検討されている場合、 [セッシ ョ ン数] および [使用中データ MB] の

現在値やピーク値の予測が必要です。 そのため、 それらの統計情報は PSQL Server でも表示されますが、 実施は

されません。 これらの統計情報については、 その値に関わらず通知は送信されません。

以下のリ ソースに関する使用状況の情報が表示されます。

ファ イル数 MicroKernel によって現在開かれているファイル数。

ハンドル数 アクティブ ハンドルの数。 MicroKernel は、 ユーザーがファイルを開くたびにハンドルを作成します。

1 つのセッシ ョ ンが同じファ イルに対していくつかのハンドルを持つこ とができます。

ク ラ イアン ト数 MicroKernel にアクセス中のク ライアン トの数。 1 台のマシンで複数のク ライアン トがデータベース エンジンに同時にアクセスできます。 データベース エンジンはク ラ イアン ト一覧を動的に管理します。

ク ラ イアン ト数はコンピューターのメモ リによってのみ制限されます。

「ク ラ イアン ト 」 とは、 ク ラ イアン ト ID ( ト ランザクシ ョナル エンジン インターフェイス) によって、

またはリ レーシ ョナル エンジン インターフェイスへの接続によって確立されたセッシ ョ ンをいいま

す。 データベース エンジンは、 Pervasive PSQL システム ファ イル、 メ タデータ ファ イル、 dbnames.cfgおよびデフォルトのシステム データベースへのアクセスなど、 独自の内部処理用にさまざまなク ライ

アン ト セッシ ョ ンを使用します。 ク ラ イアン ト数は、内部的なク ライアン ト セッシ ョ ンと非内部的な

ク ライアン ト セッシ ョ ンの両方を示します (「セッシ ョ ン数」 を参照)。

ワーカ スレッド数 MicroKernel の並行プロセスの数。

187

Page 204: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース リ ソースの監視

通信統計情報の表示

[MicroKernel] メニューから [通信] をク リ ッ ク します。[MicroKernel 通信統計情報]ダイアログが表示されます。

図 8 [MicroKernel 通信統計情報] ダイアログ

ユーザー数 同時に接続しているユーザー数。 この 大値は、 使用許諾契約書に従って許可される、 大ユーザー

数です。

セッシ ョ ン数 データベース エンジンによって使用されているセッシ ョ ン数。「使用されているセッシ ョ ン数」 は端的

に 「セッシ ョ ン数」 と もいいます。 この 大値は、 使用許諾契約書に従って許可される 大セッシ ョ

ン数を示します。 この 大値は、 「セッシ ョ数の制限値」 と もいいます。

セッシ ョ ン数は、 ト ランザクシ ョナル インターフェイスまたはリ レーシ ョナル インターフェイスを介

して確立されたすべてのセッシ ョ ンを示します。

セッシ ョ ン数に関する メ ッセージは、 Pervasive PSQL のさまざまなログ リ ポジ ト リに記録されます。

『Pervasive PSQL User's Guide』 の 「Pervasive PSQL メ ッセージ ログ」 を参照して ください。

データベース エンジンは、 Pervasive PSQL システム ファ イル、 メ タデータ ファ イル、 dbnames.cfg およびデフォルトのシステム データベースへのアクセスなど、 独自の内部処理用にさまざまなセッシ ョ

ンを使用します。 これらの内部セッシ ョ ンについてはセッシ ョ ン数を消費しません。

使用中データ MB 同時に開く全データ ファ イルのサイズ (MB 単位)。 この 大値は、 使用許諾契約書に従って許可され

る、 同時に開く全データ ファ イルの総量です。 この 大値は、 「使用データの制限値」 と もいいます。

使用データの値は、データ ファ イルが初めて開かれたと きに増加します。データ ファ イルが既に開か

れていれば、 それ以降に開く際には総量に加算されません。 使用データは、 開く ファ イルのサイズが

増加した場合にも増えます。 既に開かれているファ イルのサイズが大き くなって使用データの制限を

超えても、 そのファ イルに対する操作は引き続き許可されます。

使用データの値は、データ ファイルを開いた 後のユーザーがそのデータ ファ イルを閉じたと き減少

します。複数のユーザーが同じデータ ファイルにアクセスできるので、 そのデータ ファイルを開いた

すべてのユーザーがそのファイルを閉じないと使用データは減少しません。

データに関する メ ッセージは、Pervasive PSQL のさまざまなログ リ ポジ ト リに記録されます。『PervasivePSQL User's Guide』 の 「Pervasive PSQL メ ッセージ ログ」 を参照して ください。

データベース エンジンは、 Pervasive PSQL システム ファ イル、 メ タデータ ファ イル、 dbnames.cfg およびデフォルトのシステム データベースなど、独自の内部処理用にさまざまなファ イルを使用します。

内部処理に使用するファ イルによって使用データの値が増えるこ とはあ り ません。

大量レコードの挿入直後にファ イルを閉じた場合、Monitor ではそのファ イルのサイズの変更が直ちに

反映されないので注意して ください。 たとえば、 そのファ イルに関する [使用中データ MB] の統計

情報は、 次回そのファイルが読み取り または書き込みのために開かれるまで更新されません。

トランザクション数 ト ランザクシ ョ ンの数。 この リ ソースの 大値に制限はあ り ません。

ロ ッ ク数 レコード ロ ッ クの数。 この リ ソースの 大値に制限はあ り ません。

188

Page 205: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Monitor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

このダイアログでは、 MicroKernel が 後に起動されてから現在までのデータベース エンジンの通信統計情報が

表示されます。 [MicroKernel 稼働時間] セクシ ョ ンには、 MicroKernel が起動されている時間が、 週、 日、 時、

分、 秒で示されます。

該当する場合、 このダイアログではリ ソースに対して以下の統計情報が表示されます。

現在値 - そのリ ソースの現在の値を表示。

ピーク値 - MicroKernel が起動してから現在までにそのリ ソースが記録した 高値を表示。

大値 - そのリ ソースで使用できる 大値を表示。

以下の通信リ ソースの動作状況を監視できます。

MicroKernel 稼働時間 MicroKernel が起動されている時間が、 週、 日、 時、 分、 秒で示されます。

処理済リ クエス ト総数 データベース エンジンが処理している、 ワークステーシ ョ ンやリモート、サーバーベース

アプリ ケーシ ョ ンからのリ クエス トの数。

合計値 - データベース エンジンの起動時から現在までに処理された リ クエス トの数。

増加値 - [通信統計情報] ダイアログの起動時から現在までの リ クエス トの数。 0 にリ

セッ トするには、 [増加値を リセッ ト ] をク リ ッ ク します。

SPX 処理済リ クエス ト数 データベース エンジンが処理している、 ク ラ イアン トやリモート、 サーバーベース アプ

リ ケーシ ョ ンからの SPX リ クエス トの数。

合計値 - データベース エンジンの起動時から現在までに処理された リ クエス トの数。

増加値 - [通信統計情報] ダイアログの起動時から現在までの リ クエス トの数。 0 にリ

セッ トするには、 [増加値を リセッ ト ] をク リ ッ ク します。

TCP/IP 処理済リ クエス ト数 データベース エンジンが処理しているク ラ イアン トやリモート、 サーバーベース アプリ

ケーシ ョ ンからの TCP/IP リ クエス トの数。

合計値 - データベース エンジンの起動時から現在までに処理された リ クエス トの数。

増加値 - [通信統計情報] ダイアログの起動時から現在までの リ クエス トの数。 0 にリ

セッ トするには、 [増加値を リセッ ト ] をク リ ッ ク します。

NetBIOS 処理済リ クエス ト数 データベース エンジンが処理している、 ク ラ イアン トやリモート、 サーバーベース アプ

リ ケーシ ョ ンからの NetBIOS リ クエス トの数。

合計値 - データベース エンジンの起動時から現在までに処理された リ クエス トの数。

増加値 - [通信統計情報] ダイアログの起動時から現在までの リ クエス トの数。 0 にリ

セッ トするには、 [増加値を リセッ ト ] をク リ ッ ク します。

接続タイムアウ ト数 Auto Reconnect がク ライアン トに再接続を試行する と きのタイムアウ トの回数。「自動再接

続タイムアウ ト 」 も参照して ください。

合計値 - データベース エンジンの起動時から現在までに処理された リ クエス トの数。

増加値 - [通信統計情報] ダイアログの起動時から現在までの リ クエス トの数。 0 にリ

セッ トするには、 [増加値を リセッ ト ] をク リ ッ ク します。

接続復元数 AutoReconnect 機能が接続タイムアウ トから回復に成功した回数を示します。

合計値 - データベース エンジンの起動時から現在までに処理された リ クエス トの数。

増加値 - [通信統計情報] ダイアログの起動時から現在までの リ クエス トの数。 0 にリ

セッ トするには、 [増加値を リセッ ト ] をク リ ッ ク します。

通信スレッ ド数 MicroKernel で現在処理中のリモート リ クエス トの数。 こ こには、 ローカルのリ クエス ト

についての情報は含まれません。処理中のリモートおよびローカル スレッ ドの合計につい

ては、 「 リ ソース使用状況の表示」 を参照して ください。

データベース エンジンは必要に応じて、通信スレッ ド数を許容される 大値まで動的に増

加させます。 Windows および Linux プラ ッ ト フォームでは、 大値は 1,024 です。

通信スレッ ドは Monitor のリ クエス ト を処理するためにも使用されるので、 現在の通信ス

レッ ド数にはこの数も含まれています。 この状態は正常です。

189

Page 206: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース リ ソースの監視

リ レーシ ョ ナル イ ン ターフ ェ イス リ ソースの監視

このセクシ ョ ンでは、 リ レーシ ョナル インターフェイスの監視について説明します。

「SQL アクティブ セッシ ョ ンの表示」

「SQL セッシ ョ ン情報」

SQL アク テ ィ ブ セ ッ シ ョ ンの表示

SQL アクティブ セッシ ョ ンでは、 リ レーシ ョナル インターフェイスへの接続を介して確立されたセッシ ョ ンの

みを表示します。 (セッシ ョ ンの確立が ト ランザクシ ョナル インターフェイス経由か リ レーシ ョナル インター

フェイス経由かに関わらず) すべてのセッシ ョ ンを表示させる場合は、「セッシ ョ ン情報の表示」 を参照して くだ

さい。

SQL アク テ ィ ブ セ ッ シ ョ ンを表示するには

[SQL] メニューの [ア ク テ ィ ブな接続] をク リ ッ ク します。 [SQL ア ク テ ィ ブ セ ッ シ ョ ン] ダイアログが表示

されます。

図 9 [SQL アクテ ィ ブ セ ッ シ ョ ン] ダイアログ

SQL セ ッ シ ョ ン情報

ダイアログ上部の [アク テ ィ ブ セ ッ シ ョ ン] ラベルには、SQL アクティブ セッシ ョ ンの数が表示されます。[ユー

ザー名] ボッ クスには、 データベース エンジンに接続しているユーザー名のリ ス トが表示されます。 ユーザー名

は、デフォルトで Windows のログイン ID が設定されていますが、 これが使用不可の場合、 ユーザー名は [不明]

に設定されます。

リモート セッシ ョ ン総数 データベース エンジンに接続した リモート ク ラ イアン トの数。 大数は動的で、 ゼロが

表示されます。

SPX リ モート セッシ ョ ン数 SPX プロ ト コルを介してデータベース エンジンに接続した リモート ク ラ イアン トの数。

TCP/IP リモート セッシ ョ ン数 TCP/IP プロ ト コルを介してデータベース エンジンに接続した リモート クライアントの数。

NetBIOS リモート セッション数 NetBIOS プロ ト コルを介してデータベース エンジンに接続した リモート クライアントの数。

190

Page 207: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Monitor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

選択したユーザー名についての詳細情報が [セ ッ シ ョ ン情報] セクシ ョ ンに表示されます。

SQL アク テ ィ ブ セ ッ シ ョ ンのリ ス ト を リ フ レ ッ シュするには

1 [セ ッ シ ョ ン リ ス ト のフ レ ッ シュ] をク リ ッ ク します。

2 上記以外の方法を用いる場合は、 [自動リ フ レ ッ シュ] オプシ ョ ンを選択し、 [ リ フレッシュ レート ] に設定

した一定時間間隔でリ フレッシュを行います。 「Monitor オプシ ョ ンを設定するには」 を参照してください。

SQL アク テ ィ ブ セ ッ シ ョ ンを削除するには

1 [ユーザー名] リ ス ト内で目的のユーザー名をク リ ッ ク します。

2 [セ ッ シ ョ ンの削除] をク リ ッ ク します。

アクティブ セッシ ョ ンによる大きな SQL ブロ ッ クの実行中にそのセッシ ョ ンを削除する と、 一時的な接続

状態と して 「無効」 になる可能性があ り ます。 このセッシ ョ ンは、 データベース エンジンが適切な終了ポイ

ン トに到達する と表示されなくな り ます。

注意 アクティブ セッシ ョ ンを削除する と、その時点で発生している処理によっては、データが不正になる、

レコードが不完全になる、 またはト ランザクシ ョ ンが中止される可能性があ り ます。

クライアント ホスト名 選択されたユーザー名に対応するク ライアン ト マシンの名前。 使用不可の場合、 [不明] に設定

されます。

ネットワーク アドレス 選択されたユーザー名のク ラ イアン ト マシンの IP または SPX アドレス。 使用不可の場合、 [不

明] に設定されます。

表示される値には、 "IP"、 "SPX"、 "Shared Memory" および " 不明 " があ り ます。

クライアント アプリケー

ション

接続したアプリ ケーシ ョ ンまたはモジュール。 使用不可の場合、 [不明] に設定されます。

データ ソース名 ク ラ イアン ト アプリ ケーシ ョ ンによって参照される、 DSN の名前。

接続状態 選択されたユーザーの接続状態。 接続状態のタイプは次のとおりです。

[アクティブ] - セッシ ョ ンには開いているファ イルがあ り ます。

[アイ ドル] - セッシ ョ ンには開いているファ イルがあ り ません。

[無効] - アクティブ セッシ ョ ンは削除されていますが、 SQL コードの処理が終了されていない

こ とを示す一時的な状態。 適切な終了時点で、 そのセッシ ョ ンは [SQL アクティブ セッシ ョ ン]

ダイアログに表示されなくな り ます。

[不明] - 状態を入手できません。

アクティブ / アイドル時間 接続がアクティブまたはアイ ドルになってからの時間 (ミ リ秒単位) を表示します。

総接続時間 接続が確立されてからの時間 (秒単位) を表示します。

191

Page 208: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース リ ソースの監視

Monitor のコマン ド ラ イ ン イ ン ターフ ェ イス

Monitor のコマンド ラ イン インターフェイス (CLI) バージ ョ ンは、 GUI バージ ョ ンと同様の監視機能を提供し

ます。

CLI Monitor は、 Pervasive PSQL でサポート される Windows および Linux プラ ッ ト フォームで動作します。

Windows では、実行可能プログラムは bmon.bat です。これはデフォルトで Pervasive PSQL インス トール ディ

レク ト リ内の \bin ディ レク ト リにインス トールされます。『Getting Started with Pervasive PSQL』の 「PervasivePSQL ファ イルはどこにインス トールされますか?」 を参照してください。

Linux では、 実行可能プログラムの名前は bmon といい、 デフォルトでは /usr/local/psql/bin ディ レ

ク ト リにあ り ます。 Linux 上で bmon を実行するには、一定の要件を満たしている必要があ り ます。 この要件

は、 も う 1 つの Java ユーティ リ ティである bcfg と同様です。 「Linux での bcfg の実行要件」 および 「Linuxでの bcfg の実行に関する ト ラブルシューティング ガイ ド」 を参照してください。

構成フ ァ イル

bmon はその設定を提供するために構成ファ イルを必要と します。 Pervasive PSQL は、 monconfig.txt とい う名前

のサンプルの構成ファ イルを用意しています。 このファ イルは、 デフォル ト で Pervasive PSQL のインス トール

ディレク ト リの \bin ディ レク ト リにあ り ます。 『Getting Started with Pervasive PSQL』 の 「Pervasive PSQL ファ イ

ルはどこにインス トールされますか?」 を参照して ください。

構成できる設定については、 サンプル構成ファイル内のコ メン ト を参照して ください。

監視の出力

bmon からの出力をコンソールおよびログ ファ イルのいずれかまたは両方に リ ダイレク トする こ とができます。

たとえば、 アプリ ケーシ ョ ンは、 コンソールから、 またはログ ファ イルで特定の状態を調べてから適切な動作を

行う こ とができます。

設定ファイルに出力先を指定するこ とができます。

コ マン ド構文bmon -f [filepath]config_file [-runonce]

オプシ ョ ン

runonce パラ メ ーターを省略し た場合のキーボー ドのキー応答

runonce パラ メーターは省略可能です。省略した場合、ユーティ リ ティは設定ファイルの設定を実行し、次にリ フ

レッシュ レートに指定された時間停止します。 停止中に、 表 42 に示すキーボードのキー応答をユーティ リ ティ

に送るこ とができます。

-f 設定ファイルが入力をユーティ リ ティに提供するこ とを指定するために必要なパラ メーターです。

filepath 設定ファイルのパス。 省略する と、 bmon は設定ファ イルをローカル ディ スクで検索します。

config_file 設定ファイルの名前。 ファ イル名は、 自由に選択できます。

-runonce ユーティ リ ティ を 1 度実行したら終了するよ うに指示するオプシ ョ ン パラ メーターです。 runonceパラ メーターは、 bmon をバッチ ファ イルで使用する場合に特に役立ちます。

「runonce パラ メーターを省略した場合のキーボードのキー応答」 も参照してください。

192

Page 209: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Monitor のコマン ド ラ イ ン イ ン ターフ ェ イス

リ フレッシュ レートにゼロを設定する と、ユーティ リ ティは有効なキーボードのキー応答があるまで無限に停止

します。 設定ファイルのリ フレッシュ レート設定 (refreshrate) によ り、 停止する時間を指定します。 デフォル

トで、 リ フレッシュ レートは 小値である 5 秒に設定されます。

表 42 bmon リ フ レ ッ シュ レー ト およびキーボー ドのキー応答

リ フ レ ッ シュ レー ト キーボー ドのキー応答

refreshrate=0 (有効なキーボードのキー応答を受け取るまで停止)

Q (または q) + Enter は、 bmon の実行を停止します。

R(または r) + Enter は、監視を更新します(bmon を再実行します)。

refreshrate=seconds_to_pause

seconds_to_pause は 5 以上の整数

(seconds_to_pause 秒の間停止)

Q (または q) + Enter は、 bmon の実行を停止します。

193

Page 210: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データベース リ ソースの監視

194

Page 211: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

12

Btrieve オペレーシ ョ ンのテス ト

Function Executor ユーティ リ ティで Btrieve オペレーシ ョ ンを実行する方法

この章では、 以下の項目について説明します。

「Function Executor の概念」

「Function Executor のグラフ ィカル ユーザー インターフェイス」

「Function Executor での作業」

195

Page 212: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

Function Executor の概念

こ こでは、 以下の項目について説明します。

「概要」

「Function Executor でできるこ と」

「Function Executor の機能」

「Function Executor の自動モード」

「詳細情報を入手するには」

概要

Function Executor は Windows 上で動作します。 この対話型ユーティ リ ティ を使用する と、 Btrieve オペレーシ ョ ン

がどのよ うに動作するかを確認するこ とができます。 この章では、 ト ランザクシ ョナル インターフェイスのオペ

レーシ ョ ンを 「Btrieve オペレーシ ョ ン」 と呼びます。

また、 Btrieve オペレーシ ョ ンを一度に 1 つずつ実行できるため、 アプ リ ケーシ ョ ン開発者は Function Executor を使って、 Btrieve アプリ ケーシ ョ ンのオペレーシ ョ ンをシ ミ ュレートするこ とができます。 このシ ミ ュレーシ ョ ン

は、 アプリ ケーシ ョ ンの残りの部分のデータベース呼び出しから分離しているので、 プログラムのテス トおよび

デバッグに役立ちます。

Function Executor は、 本来アプリ ケーシ ョ ン開発者向けのツールです。 この章では、 Btrieve オペレーシ ョ ンの基

礎知識があるこ とを前提に説明を進めます。 Btrieve オペレーシ ョ ンの詳細については、 開発者リ ファレンスの

『Btrieve API Guide』 を参照してください。

Function Executor でできる こ と

Btrieve オペレーシ ョ ンを実行しながら メモ リ構造の内容を監視するこ とができます。

一連の Btrieve オペレーシ ョ ンをキャプチャして履歴ファイルと して保存し、 後で再生するこ とができます。

Btrieve ク ライアン ト、 ローカル エンジンおよびリモート エンジンのバージ ョ ンを表示します。

データ ファ イルの Btrieve 特性を表示し、 これらをテンプレート (ディ スク リプシ ョ ン ファ イル) と して保

存したり、これらの特性に基づいて新しいファイルを作成したりするこ とができます。詳細については、「ファ

イル統計情報」 を参照して ください。

Function Executor の機能

Function Executor の機能は以下のとおりです。

「エディ ター ステータス バー」

「統計情報」

「Get および GetExt」

「 ト ランザクシ ョ ン ツールバー」

「ログイン ダイアログ」

「履歴ログ」

「任意のデータ型での表示」

196

Page 213: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor の概念

エデ ィ ター ステータ ス バー

ステータス バーには以下の要素があ り ます。

統計情報

[フ ァ イル統計情報] アイコンをク リ ッ クする と、現在開いているファイルについての統計情報を一覧表示したダ

イアログ ボッ クスが表示されます。 これらの統計情報は、 テキス ト ファ イルに出力するか、 BUTIL-CREATE で使用可能なディ スク リプシ ョ ン ファ イルに保存できます (同一の特性を持つ空の新規ファイルを作成するこ と も

できます)。

Get および GetExt[Get] メニューから、 テーブル内にある先頭レコード、 次レコード、 前レコード、 末尾レコードを取得するこ と

ができます。 [GetExt] メニューには、 [Goto Percent (パーセンテージによるレ コー ドの取得)]、 [Get Position(物理位置の取得)]、 [Find Percent (レ コー ド位置のパーセンテージを取得)] の各コマンドがあ り ます。

開いているファ イルのウ ィ ンド ウの下部にあるエディ ター ウ ィ ン ド ウの

ステータス バーに 新 / 現在のステータス コードが表示され、 新のス

テータスがゼロ以外の場合には赤色で表示されます。

ステータス コードにマウス カーソルを移動する と、 そのステータスにつ

いての説明と、原因となったオペレーシ ョ ンが表示されます。 これらのス

テータス コードのヘルプ全体を表示するには、 赤色で表示されている部

分をク リ ッ ク します。 詳細については、 「ステータス コードのヘルプを見

るには」 を参照して ください。

カーソルが Function Executor メ イン ウ ィ ン ド ウの入力領域にある と きに

は、ステータス バーにはバッファー内でのオフセッ トが表示されます。つ

ま り、 現在の位置のバイ ト を 16 進数、 10 進数、 ASCII 値で表した値が表

示されます。

キューに複数の項目がある場合には、オペレーシ ョ ンがいくつ実行された

のかもステータス バーに表示されます。通常、 1 / 1 と表示されますが、複

数のオペレーシ ョ ンを実行している場合には実行されるオペレーシ ョ ン

の数が表示されます。

ト ランザクシ ョ ンに入る と、 その状態もステータス バーに表示されます。

197

Page 214: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

[Get] コマンド と [GetExt] コマンドは、 メニュー バーとツールバーから使用できます。ツールバーには、[Step](物理的) と [Get] (論理的) があ り、 ファ イルの自然の順序で (物理的)、 または特定の順序で (論理的) 移動

できます。

[Goto Percent (パーセンテージによるレ コー ドの取得)] では、 ファ イルの物理レイアウ ト内での特定の地点に

移動するか、 あるいはそのファイル内に定義されているキーを定めて、任意のキー パスをたどっていくかど うか

の選択ができます。 [ロ ッ ク] グループ ボッ クスのオプシ ョ ン ボタンを使用して、 ロ ッ ク バイアスを設定するこ

と もできます。

[Find Percent (レ コー ド位置のパーセンテージを取得)] は、 [Goto Percent (パーセンテージによるレ コー ドの

取得)] の逆です。 ファ イル内を論理的に移動しているか、物理的に移動しているかによって、データ内での位置

を示します。

ト ラ ンザクシ ョ ン ツールバー

ト ラ ンザクシ ョ ン ツールバーを使用する と、 ト ラ ンザクシ ョ ンの開始、 終了、 中止を行 う こ とができます。

Transaction API のすべてをこのツールバーで設定するこ とができ、 オペレーシ ョ ンはすぐに実行されます。 ト ラ

ンザクシ ョ ンのステータスは、 そのク ラ イアン ト ID 用に開いているすべてのファ イルに影響するため、 メ イン

ウ ィンド ウのステータス バーにも表示されます。

ログイ ン ダイアログ

ログイン ダイアログ ボッ クスを使用する と、 GUI インターフェイスを介して Btrieve ログイン操作を実行するこ

とができます。 ログイン ダイアログ ボッ クスの詳細については以下のト ピッ クを参照して ください。

「ログインおよびログアウ ト 」

「Pervasive PSQL データベース」

「Pervasive PSQL セキュ リティ」

198

Page 215: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor の概念

履歴ログ

Function Executor ユーティ リ ティ を使用してオペレーシ ョ ンを実行する と、これらは履歴ログに記録されます。こ

のログを使用して、 ログに含まれるオペレーシ ョ ンを実行したり、 履歴をファイルと して保存し後で再読み込み

して同じ手順を行う こ とができます。

履歴ログの詳細については以下のト ピッ クを参照して ください。

「履歴」

「履歴の作業」

任意のデータ型での表示

ファ イルが開いている と き、バッファー内の任意の場所を右ク リ ッ ク し、 [表示形式] をク リ ッ ク します。 ダイア

ログ ボッ クスが表示され、 選択したバッファー位置のバイ ト数を任意のデータ型で表示できます。

表 43 に Function Executor で使用できるコン ト ロールを示します。

表 43 Function Executor のコ ン ト ロール

コ ン ト ロール 説明

履歴 コマンドの繰り返しができます。

作成 新規ファ イルを作成できます。

ファ イル統計情報 BSTAT 関数の情報を示します。 この統計情報は印刷できます。

MDI Multiple Document Interface によって、 複数のファ イルを開く こ とができます。

199

Page 216: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

Function Executor の自動モー ド

開いているファ イルごとに ( 「アプ リ ケーシ ョ ン ウ ィ ン ド ウ」 を参照) Btrieve オペレーシ ョ ンを実行する際に

Function Executor を使用するかど うかを選択するこ とができます。Function Executor を使用する方法と しない方法

で設定を変更する必要はあ り ません。自動モード と手動モードのどちらを使用するかは、 どの GUI コン ト ロール

を使用するかによって決ま り ます。

図 10 自動モー ド と手動モー ドのコ ン ト ロール

メ モ メニュー (「アプ リ ケーシ ョ ン ウ ィンド ウ」 を参照) での選択も自動モードの一部と して行われます。

自動モード領域のボタンをク リ ッ クする と、 ユーティ リ ティは以下のよ うな支援を行います。

データ バッファーとデータ長は、 自動的にステータス コード 22 を防ぐよ うに設定されます。

情報は操作に応じて適切に要求されます。

詳細情報を入手するには

Function Executor はプログラム開発者にとって有益なツールですが、 Btrieve の実際的な基礎知識があるこ とを前

提にしています。 このユーティ リ ティのすべての機能を理解するには、 以下のト ピッ クを参照して ください。

『Pervasive PSQL Programmer's Guide』 の 「 ト ランザクシ ョナル インターフェイスの基礎」 。 このマニュアル

は、 Pervasive PSQL 開発者リ ファレンスに含まれています。

『Btrieve API Guide』 の 「Btrieve API オペレーシ ョ ン」。 このマニュアルは、 Pervasive PSQL 開発者リ ファレ

ンスに含まれています。

「Pervasive PSQL セキュ リティ」

リセッ ト ク ライアン ト ID を リセッ ト

ス ト ップ Btrieve の停止

バージ ョ ン Btrieve バージ ョ ン情報

表 43 Function Executor のコ ン ト ロール

コ ン ト ロール 説明

200

Page 217: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

Function Executor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

このセクシ ョ ンでは、 Function Executor のグラフ ィカル ユーザー インターフェイス (GUI) のオブジェク トにつ

いて説明します。

「アプ リ ケーシ ョ ン ウ ィンド ウ」

「メ イン ウ ィンド ウ」

「ログインおよびログアウ ト 」

「[ファ イルのオープン] ダイアログ」

「Btrieve ファ イルの作成」

「ファ イルの作成用ダイアログ GUI のリ ファレンス (高度)」

「 ト ランザクシ ョ ン」

「ファ イル統計情報」

「履歴」

201

Page 218: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

アプ リ ケーシ ョ ン ウ ィ ン ド ウ

下の表は次の図のウ ィンド ウ コンポーネン トの説明です。画像上のそれぞれの領域をク リ ッ クする とその詳細が

表示されます。

表 44 Function Executor アプ リ ケーシ ョ ン ウ ィ ン ド ウ

GUI オブジ ェ ク ト 説明 関連情報

[ファ イル] メニュー 以下のコマンドおよび Btrieve オペレーシ ョ ンが実行できます。

Login および Logout

Open および Close

New

Print Setup

Set Owner Name および Clear Owner Name

Continuous オペレーシ ョ ンの開始または終了

Reset、 Stop および Exit

「オペレーシ ョ ン作業の

実行」

「ファ イルを開く作業」

[Get] メニュー 以下の Btrieve オペレーシ ョ ンが実行できます。

Get First および Get Next

Get Previous および Get Last

Get Greater Than および Get Greater or Equal

Get Less および Get Less or Equal

「オペレーシ ョ ン作業の

実行」

[GetExt] メニュー 以下の Btrieve オペレーシ ョ ンが実行できます。

Goto Percent

Get Position

Find Percent

「オペレーシ ョ ン作業の

実行」

[Step] メニュー 以下の Btrieve オペレーシ ョ ンが実行できます。

Step First および Step Next

Step Previous および Step Last

「オペレーシ ョ ン作業の

実行」

[Update] メニュー 以下の Btrieve オペレーシ ョ ンが実行できます。

Insert、 Update および Delete

このメニューを使用してロ ッ クを解除するこ と もできます。

「オペレーシ ョ ン作業の

実行」

202

Page 219: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

[表示] メニュー GUI 要素を表示するこ とができます。

ツール バー (メ インおよびト ランザクシ ョ ン)

履歴ウ ィンド ウ

ファ イル統計情報ウ ィンド ウ

Btrieve Version オペレーシ ョ ンを使用したエンジンのバー

ジ ョ ン

「履歴の作業」

[ツール] メニュー 以下の Btrieve オペレーシ ョ ンが実行できます。

Get Directory および Set Directory

[ウ ィ ンド ウ] メニュー ウ ィンド ウ操作が実行できます。

[ウ ィ ンド ウを重ねて表示]および[ウ ィンド ウを並べて表示]

開いているウ ィンド ウの一覧から選択

[ヘルプ] メニュー このユーティ リ テ ィのヘルプ リ ソースを一覧から選択するこ と

ができます。

「ステータス コードのヘ

ルプを見るには」

[開く] ボタン ダイアログ ボッ クスを表示し、開く Btrieve ファイルを選択しま

す。

「ファ イルを開く作業」

[新規作成] ボタン ダイアログ ボッ クスを表示し、新規 Btrieve ファイルを作成する

こ とができます。

「Btrieve ファ イルを作成

する作業」

[ リ セッ ト ] ボタン 現在のク ラ イアン ト接続を リセッ ト し (Btrieve オペレーシ ョ ン

28) 、 そのク ラ イアン ト ID で開いているすべてのファイルを閉

じます。

[停止] ボタン ト ランザクシ ョナル サービス (Btrieve オペレーシ ョ ン 25) を終

了させ、 開いているすべてのファ イルを閉じます。

統計情報 現在開いているファ イルの統計情報を一覧表示するダイアログ

ボッ クスを表示します。 これらの統計情報をテキス ト ファ イル

に出力したり、 BUTIL -CREATE で使用できるディ スク リプシ ョ

ン ファ イルに保存するこ とができます。

[バージ ョ ン] ボタン 実行中の Pervasive PSQL のバージ ョ ン情報を (Btrieve オペレー

シ ョ ン 26 を使用して) 表示します。 開かれているファイルがな

い場合には、 リ クエスター DLL と ローカル MicroKernel エンジ

ンについての情報が表示されます。 リモート サーバーでファ イ

ルを開いている場合、 サーバーと リ クエスター DLL についての

情報が表示されます。

ヘルプの表示 ゼロ以外のステータス コードを受け取ったと きにポップアップ

ダイアログ ボッ クスを表示するかしないかを切り替えます。

履歴の表示 履歴ウ ィンド ウを表示するかしないかを切り替えます。 「履歴ウ ィ ン ド ウを表示

するには」

「履歴」

「履歴ログ」

表 44 Function Executor アプ リ ケーシ ョ ン ウ ィ ン ド ウ

GUI オブジ ェ ク ト 説明 関連情報

203

Page 220: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

オペレーシ ョ ン カウン ト 現在のオペレーシ ョ ン数を示します。

繰り返しの値に 2 以上を設定したと きに使用されます。

「オペレーシ ョ ン作業の

実行」

ト ランザクシ ョ ンの状態 ト ランザクシ ョ ンの現在の状態を示します。以下のいずれかにな

り ます。

空白 ( ト ランザクシ ョ ンが 1 つも有効でない場合)

並行 (Concurrent)

排他 (Exclusive)

「オペレーシ ョ ン作業の

実行」

「 ト ランザクシ ョ ン」

表 44 Function Executor アプ リ ケーシ ョ ン ウ ィ ン ド ウ

GUI オブジ ェ ク ト 説明 関連情報

204

Page 221: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

メ イ ン ウ ィ ン ド ウ

すべての開いているファイルについて、 メ イン ウ ィンド ウが表示されます。画像上のそれぞれの領域をク リ ッ ク

する とその詳細が表示されます。

表 45 Function Executor メ イ ン ウ ィ ン ド ウ (オープン フ ァ イル用)

GUI オブジ ェ ク ト 説明 関連情報

タイ トル バー 開いているデータ ファ イルの絶対パスを一覧表示します。 「Function Executor でデータ フ ァ

イルを開くには」

データ バッファー データの値を指定します。読み取りや書き込みオペレーシ ョ

ンでは、 Data Buffer にレコードが含まれています。 ほかのオ

ペレーシ ョ ンには、データベース エンジンでオペレーシ ョ ン

の処理に必要なファイル スペッ ク、フ ィルター条件、その他

の情報が Data Buffer に含まれています。このコン ト ロールは

Data Buffer パラ メーターに対応するものです。

キー バッファー Btrieve オペレーシ ョ ンを実行するデータ ファ イルのパスを

指定します。

Step と Get Step および Get オペレーシ ョ ンを切り替えます。

Get/Step First Get Next または Step Next オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Get/Step Prev Get Previous または Step Previous オペレーシ ョ ンを実行しま

す。

「オペレーシ ョ ン作業の実行」

Get/Step Next Get Next または Step Next オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Get/Step Last Get Last または Step Last オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Get Equal Get Equal オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Get Less Than Get Less Than オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Get Greater Than Get Greater Than オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Get Less Than or Equal Get Less Than または Get Equal Than オペレーシ ョ ンを実行し

ます。

「オペレーシ ョ ン作業の実行」

Get Greater Than orEqual

Get Greater Than または Get Equal Than オペレーシ ョ ンを実行

します。

「オペレーシ ョ ン作業の実行」

205

Page 222: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

Get/Find Percent Get Percent または Find Percent オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Insert Insert オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Update Update オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Delete Delete オペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

Cancel 後に行った変更をキャンセルします。

Unlock すべてのロ ッ クを解除します。

Set Bookmark またはGoto Bookmark

前もって定義しておいたブッ クマークに設定または位置付

けます。

キー番号 ほとんどの Get オペレーシ ョ ンで、現在のオペレーシ ョ ンが

従う こ とになるキー番号またはインデッ クス パスを指定し

ます。 ほかのオペレーシ ョ ンには、 ファ イル オープン モー

ド、暗号化、論理ディ スク ド ラ イブなどの情報を指定するも

のもあ り ます。 このコン ト ロールは Key Number パラ メー

ターに対応するものです。

キー オン リー データではなくキーのみを取得するこ とを指定します。

繰り返し オペレーシ ョ ンを指定した回数だけ繰り返します。

ロ ッ ク 現在のオペレーシ ョ ンで行いたいロ ッ ク動作を指定します。

オペレーション コード 現在のオペレーシ ョ ン コード とそのバイアス (ある場合) を

示します。 デフォルト設定は、 0 です。 Btrieve オペレーシ ョ

ン コードに精通している場合は、目的のコードを入力するこ

とができます。 慣れていなければ、 [リ ス ト ] ボッ ク スを使

用してオペレーシ ョ ンを指定します。 このコン ト ロールは、

オペレーシ ョ ン コー ド パラ メーターに対応するものです。

「オペレーシ ョ ン作業の実行」

[実行] ボタン 現在指定されているオペレーシ ョ ンを実行します。 「オペレーシ ョ ン作業の実行」

オペレーション リ ス ト Btrieve オペレーシ ョ ンとそのコードを リ ス ト します。デフォ

ルトは Open (0) です。実行するオペレーシ ョ ンの頭文字を

入力すれば、 リ ス ト内ですぐに移動ができます。

「オペレーシ ョ ン作業の実行」

データ長 データ バッファーの長さ (バイ ト単位) を指定します。 デ

フォル トは、 1024 です。 データ バッファーを必要とする各

オペレーシ ョ ンでは、 バッ フ ァー長を必ず指定して くださ

い。多くのオペレーシ ョ ンでは、データベース エンジンによ

り Data Length に値が返されます。 一般には、 オペレーシ ョ

ンの実行前に、Data Length を必ず指定してください。 このコ

ン ト ロールは Data Buffer Length パラ メーターに対応するも

のです。

「オペレーシ ョ ン作業の実行」

ステータス コード インジケーター

データベース エンジンで返された数値のステータス コード

と、Btrieve オペレーシ ョ ンの結果を示す短いメ ッセージが表

示されます。

これらのステータス コードやメ ッセージについての詳細は、

『Status Codes and Messages』 マニュアルを参照してください。

「ステータス コードのヘルプを見

るには」

Continuous オペレー

ション インジケーター

ファ イルが Continuous オペレーシ ョ ン モード(オペレーシ ョ

ン 42) にある場合、 ファ イル ウ ィ ン ド ウの 下行に以下を

表示します。

「Continuous オペレーシ ョ ンの使

用」

表 45 Function Executor メ イ ン ウ ィ ン ド ウ (オープン フ ァ イル用)

GUI オブジ ェ ク ト 説明 関連情報

206

Page 223: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

ログイ ンおよびログアウ ト

ログインおよびログアウ ト ダイアログ ボッ クスを使用する と、 Btrieve のログインおよびログアウ ト オペレー

シ ョ ンを個々のデータベース エンジンに対して実行するこ とができます。画像上のそれぞれの領域をク リ ッ クす

る とその詳細が表示されます。

図 11 ログイ ン ダイアログ

図 12 ログアウ ト ダイアログ

表 46 Function Executor ログイ ンおよびログアウ ト ダイアログ

GUI オブジ ェ ク ト 説明

サーバー ログインまたはログアウ ト したいデータベースが存在するサーバーを指定します。 Linux オペレー

ティング システム上のデータベースにアクセスするにはサーバー名が必要なので注意して ください。

『Pervasive PSQL Programmer's Guide』 の 「データベース URI」 も参照してください。

データベース 認証を求めるサーバー上のデータベースを指定します。

ユーザー名 データベースに対して認証を求めるユーザーの名前です。

パスワード ユーザー名に対するパスワードです。

ク ライアン ト ID このログインまたはログアウ ト を特定のク ライアン ト ID にのみ適用する場合は、 [使用] をク リ ッ ク

して範囲を指定します。 それ以外の場合は、 そのままにしておきます。

『Btrieve API Guide』 の 「ク ラ イアン ト ID」 を参照してください。

URI 文字列 情報をフォームに入力する と、 選択した結果の URI がこの領域に表示されます。

207

Page 224: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

[フ ァ イルのオープン] ダイアログ

このダイアログを使用する と、 ファ イルを開く こ とができます。 画像上のそれぞれの領域をク リ ッ クする とその

詳細が表示されます。

表 47 Function Executor フ ァ イルのオープン ダイアログ

GUI オブジ ェ ク ト 説明 関連情報

ファ イル名 開く ファ イルのロケーシ ョ ンと名前を指定します。 「ファ イルを開く作業」

オーナー ネーム Btrieve ファイルに関連付けられているパスワードを指定します。指

定した場合、 Btrieve フ ァ イルにア クセスするためにはオーナー

ネームが必要です。 オーナー ネームは、 システムのユーザー名と

は無関係です。 オーナー ネームは、 ファ イル パスワード と考えて

ください。

短いオーナー ネームは半角 8 文字までの範囲で指定できます。 長

いオーナー ネームは半角 24 文字までの範囲で指定できます。 ただ

し、 長いオーナー ネームを指定した場合、 そのデータ ファ イルは

Pervasive PSQL v10 SP1 よ り前のデータベース エンジンで読み取る

こ とができないので注意して ください。 また、長いオーナー ネーム

を使用したデータ ファ イルは、 v9.5 よ り前のファ イル形式に リ ビ

ルド し よ う とする場合、 そのオーナー ネームを 初に削除してお

かないと リ ビルドするこ とができません。

オーナー ネームは、長いものでも短いものでも、 その 大長 (8 または 24 バイ ト ) に満たない部分は空白が埋め込まれます。

「ファ イルを開く作業」

「Pervasive PSQL セキュ リ テ ィ」

を参照して ください。

モード ファイルを開く と きの状態を指定します。 この状態に基づき、デー

タベース エンジンは開く ファ イルに適用する条件を識別します。た

とえば、 ファ イルの読み取りは可能だが更新はできない ( リードオ

ン リー) という条件が可能です。

「ファ イルを開く作業」

モードの説明については、 開発

者リ フ ァ レンスの 『Btrieve APIGuide』 の 「オープン モード」 を

参照してください。

ク ラ イアン ト ID このログインを特定のク ライアン ト ID にのみ適用する場合は、[使

用] をク リ ッ ク して範囲を指定します。 それ以外の場合は、 そのま

まにしておきます。

「ファ イルを開く作業」

共有 データベース エンジンは、 " 共有 " オプシ ョ ンを無視します。 " 共

有 " オプシ ョ ンは、 このエンジンのレガシー バージ ョ ンである

Btrieve 6.15 のみに適用されます。

「ファ イルを開く作業」

208

Page 225: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

Btrieve フ ァ イルの作成

このダイアログ ボッ クスを使用する と、Btrieve ファ イルを作成するこ とができます。画像上のそれぞれの領域を

ク リ ッ クする とその詳細が表示されます。

表 48 Function Executor フ ァ イルの作成ダイアログ

GUI オブジ ェ ク ト 説明 関連情報

ファイル名 作成するファ イルのロケーシ ョ ンと名前を指定します。 「Btrieve フ ァ イルを作成する

作業」

オーナー ネーム Btrieve ファ イルに関連付けられているパスワードを指定します。指定

した場合、Btrieve ファイルにアクセスするためにはオーナー ネームが

必要です。オーナー ネームは、システムのユーザー名とは無関係です。

オーナー ネームは、 ファ イル パスワード と考えてください。

短いオーナー ネームは半角 8 文字までの範囲で指定できます。 長い

オーナー ネームは半角 24 文字までの範囲で指定できます。 ただし、長

いオーナー ネームを指定した場合、 そのデータ ファ イルは PervasivePSQL v10 SP1 よ り前のデータベース エンジンで読み取るこ とができ

ないので注意して ください。 また、 長いオーナー ネームを使用した

データ ファ イルは、 v9.5 よ り前のファ イル形式にリ ビルド しよ う とす

る場合、そのオーナー ネームを 初に削除しておかないと リ ビルドす

るこ とができません。

オーナー ネームは、 長いものでも短いものでも、 その 大長 (8 また

は 24 バイ ト ) に満たない部分は空白が埋め込まれます。

「Btrieve フ ァ イルを作成する

作業」

「Pervasive PSQL セキ ュ リ

ティ」 を参照してください。

モード ファ イルを開く と きの状態を指定します。 この状態に基づき、 データ

ベース エンジンは開く ファ イルに適用する条件を識別します。たとえ

ば、ファ イルの読み取りは可能だが更新はできない ( リードオン リー)

とい う条件が可能です。

「Btrieve フ ァ イルを作成する

作業」

モードの説明については、 開

発者リ フ ァレンスの 『BtrieveAPI Guide』 の 「オープン モー

ド」 を参照して ください。

ク ライアン ト ID このログインを特定のク ライアン ト ID にのみ適用する場合は、[使用]

をク リ ッ ク して範囲を指定します。 それ以外の場合は、 そのままにし

ておきます。

「Btrieve フ ァ イルを作成する

作業」

共有 データベース エンジンは、 " 共有 " オプシ ョ ンを無視します。 " 共有 "オプシ ョ ンは、 データベース エンジンのレガシー バージ ョ ンである

Btrieve 6.15 のみに適用されます。

209

Page 226: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

フ ァ イルの作成用ダイアログ GUI のリ フ ァ レンス (高度)

このダイアログ ボッ クスを使用する と、作成しよ う と しているファ イルに、 さ らに別の属性を指定するこ とがで

きます。 画像上のそれぞれの領域をク リ ッ クする とその詳細が表示されます。

表 49 Function Executor フ ァ イルの作成ダイアログ (高度)

GUI オブジ ェ ク ト 説明 関連情報

[キー]および[セグメン ト ]

コマンド

キーの追加と削除や、 キー セグメン トの追加、 挿入、 削除が

行えます。

「Btrieve フ ァ イルを作成す

る作業」

ファ イル仕様 ファイルの仕様の表示、 およびその編集が行えます。 「Btrieve フ ァ イルを作成す

る作業」

「レコードおよびページ圧縮」

統計情報 ファイルに関する情報を提供します。 読み取り専用です。 「Btrieve フ ァ イルを作成す

る作業」

キーとセグメン トの行列 ファ イルのキーとセグ メン トの開始位置、 長さ、 属性および

データ型を表示します。 行をク リ ッ クする と、 下方のキーと

セグ メ ン トの各ブロ ッ クで情報が表示されます。 必要であれ

ば、 この情報は変更するこ と もできます。

「Btrieve フ ァ イルを作成す

る作業」

キー キーの仕様の表示、 およびその編集が行えます。 「Btrieve フ ァ イルを作成す

る作業」

セグメン ト セグメン トの仕様の表示、 およびその編集が行えます。 「Btrieve フ ァ イルを作成す

る作業」

各種コマンド ボタン データ ファイルやディ スク リプシ ョ ンの作成、 あるいはダイ

アログ ボッ クスで行った編集をキャンセルするこ とができま

す。

「Btrieve フ ァ イルを作成す

る作業」

210

Page 227: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

ト ラ ンザクシ ョ ン

このダイアログ ボッ クスを使用する と、 Function Executor セッシ ョ ン中に ト ランザクシ ョ ンを制御するこ とがで

きます。 画像上のそれぞれの領域をク リ ッ クする とその詳細が表示されます。

表 50 Function Executor ト ラ ンザクシ ョ ン ダイアログ

GUI オブジ ェ ク ト 説明 関連情報

メ イン アプリケーション ウ ィ ンド ウ プログラムの主な機能です。 「アプ リ ケーシ ョ ン

ウ ィ ンド ウ」

ト ランザクシ ョ ンの種類 排他的ト ランザクシ ョ ンまたは並行ト ランザクシ ョ ンの

どちらを使用するかを指定します。

ロ ッ ク情報 トランザクションで使用するロ ッ クの種類を指定します。

[ ト ランザクシ ョ ンの開始] ボタン ト ランザクシ ョ ンを開始します。

[トランザクションのコ ミ ッ ト ] ボタン アクティブな ト ランザクシ ョ ンをコ ミ ッ ト します。

[ ト ランザクシ ョ ンの中止] ボタン アクテ ィブな ト ランザクシ ョ ンを中止し、 行われた変更

をロール バッ ク します。

ファ イル領域 この領域には開いているファ イルが 1 つ以上含まれます。 「メ イン ウ ィ ンド ウ」

ト ランザクシ ョ ン インジケーター 現在ト ランザクシ ョ ン内にあるかど うかを示します。 こ

こには " 並行 " または " 排他 " と表示されます。

211

Page 228: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

フ ァ イル統計情報

このダイアログ ボッ クスを使用する と、Btrieve ファ イルの統計情報を表示するこ とができます。画像上のそれぞ

れの領域をク リ ッ クする とその詳細が表示されます。

表 51 Function Executor フ ァ イル統計情報ダイアログ

GUI オブジェクト 説明

ファイル情報 ファイルの統計情報を表示します。

フラグ このファ イルに設定されているフラグを表示するこ とができます。ダイアログ ボッ クス内の一覧で、設

定されているすべてのフラグの隣にはチェッ クマークが付きます。

キー このファ イルに定義されているキーを表示するこ とができます。

キーの凡例 1 文字の値でこのファイルのキー属性を示します。

D = DUP (重複可能)

M = MOD (変更可能)

R = REPEAT_DUPS_KEY (繰り返し重複キー)

A= NUL (全セグメン ト ヌル キー)

L = MANUAL_KEY (一部セグメン ト ヌル キー)

< = DESC_KEY (キー値を表します)

I = NOCASE_KEY (大文字小文字無視キー)

『Pervasive PSQL Programmer's Guide』 の 「キー属性」 も参照して ください。

[印刷] ボタン ファ イル統計情報を印刷するこ とができます。 [ファ イル] メニューを使用してプリ ンターを設定しま

す。

[保存] ボタン 現在のファイル統計情報をディ スク リプシ ョ ン ファ イルに保存するこ とができます。このディ スク リプ

シ ョ ン ファイルを使用して、 後で同じ属性を持つファ イルを新規作成するこ とができます。

[ファ イルの新規

作成] ボタン

これらのファイル統計情報に基づいて新規ファ イルを作成するこ とができます。

212

Page 229: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor のグラ フ ィ カル ユーザー イ ン ターフ ェ イス

履歴

このダイアログ ボッ クスを使用する と、 これまでに実行したすべてのオペレーシ ョ ンを見るこ とができます。画

像上のそれぞれの領域をク リ ッ クする とその詳細が表示されます。

表 52 Function Executor 履歴ダイアログ

GUI オブジ ェ ク ト 説明 関連情報

[フ ァ イ ル] メ

ニュー

以下の操作が実行できます。

履歴ファ イルのインポート

履歴ファ イルのエクスポート

履歴ウ ィンド ウを閉じる

[設定] メニュー 履歴ウ ィンド ウの表示属性を指定するこ とができます。

終了時に保存 - 履歴ウ ィンド ウで行ったカスタマイズをほかの

セッシ ョ ンでも使用できるよ うに保存するかど うかを指定しま

す。

デフォルト - 履歴ウ ィンド ウをデフォルトの設定にリセッ ト し

ます。 指定した設定はすべて取り除かれます。

ド ッキング - 履歴ウ ィンド ウの状態で、分離したウ ィンド ウまた

は 「アプ リ ケーシ ョ ン ウ ィ ンド ウ」 と一体化した状態とを切り

替えます。

手前に表示 - 履歴ウ ィンド ウの状態を、フォーカスを失わない状

態と失う状態の間で切り替えます。

「履歴ウ ィ ン ド ウのド ッキング

状態を切り替えるには」

「履歴ウ ィ ン ド ウの常に前面に

表示状態を切り替えるには」

「履歴ウ ィ ン ド ウをデフォル ト

の設定にリセッ トするには」

[実行] コマンド [履歴の再生設定] ウ ィ ンド ウをロード します。

オペレーシ ョ ン

の一覧

近実行したオペレーシ ョ ンを一覧表示します。 各オペレーシ ョ ン

と共に以下の情報がログに記録されます。

ファ イル ID

[オペ コード名] チェ ッ ク ボッ クスの状態によ り、オペレーシ ョ

ン名またはオペレーシ ョ ン番号。

そのオペレーシ ョ ンが実行されたと きのステータス コード。

そのオペレーシ ョ ンが実行された回数。

そのオペレーシ ョ ンで設定されたキー番号。

キー バッファーの内容。

データ バッファーの内容。

「履歴の作業」

「履歴」

213

Page 230: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

ロギング 履歴一覧に将来のオペレーシ ョ ンを含めるか含めないかを切り替え

ます。

オペ コード名 オペレーシ ョ ン列に表示するオペレーシ ョ ン コード名 (B_OPEN など) とオペレーシ ョ ン コード番号 (B_OPEN に対する 0 ) を切り

替えます。

表 52 Function Executor 履歴ダイアログ

GUI オブジ ェ ク ト 説明 関連情報

214

Page 231: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor での作業

Function Executor での作業

Function Executor での作業は以下のカテゴ リにグループ化されています。

「Function Executor での作業の開始」

「オペレーシ ョ ン作業の実行」

「ファ イルを開く作業」

「Btrieve ファ イルを作成する作業」

「履歴の作業」

Function Executor での作業の開始

Function Executor ユーテ ィ リ テ ィ を起動するには

1 オペレーティング システムの [ス ター ト ] メニューまたはアプ リ画面から、 あるいは Pervasive PSQL ControlCenter の [ツール] メニューから Function Executor にアクセスします。

2 メ イン ウ ィンド ウ (図 13) が表示されます。

図 13 Function Executor メ イ ン ウ ィ ン ド ウ

オペレーシ ョ ン作業の実行

Btrieve には数多くのオペレーシ ョ ンがあるため、 この章ですべてを説明するこ とはできません。次のセクシ ョ ン

では、 一般的ないくつかのオペレーシ ョ ンと、 Function Executor を使ったそれらの新しい実行方法についても説

明します。

メ モ どのメニューからでもオプシ ョ ンを選択すれば、 目的のオペレーシ ョ ンがすぐに実行されます。 以前

のバージ ョ ンの動作のよ うに、 グ リ ッ ドに自動入力したり コマンドの実行待ちになるこ とはあ り ません。 ま

た、 フォームを閉じる と、 開いているファ イルは閉じられます。 Close オペレーシ ョ ンを手動で実行する必

要はあ り ません。

215

Page 232: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

全般的なオペレーシ ョ ン - 関連する作業

「ステータス コードのヘルプを見るには」

ほかの作業については、 以下のセクシ ョ ンを参照して ください。

「ファ イルを開く作業」

「Btrieve ファ イルを作成する作業」

「履歴の作業」

ステータ ス コー ドのヘルプを見るには

1 Function Executor を使用してステータス コードを受け取った場合は、開いているファイルのステータス バー

に表示されます。

マウスを動かして赤色で表示されているステータス コード上に移動します。

図 14 ステータ ス コー ド を受け取る

2 ステータス コード インジケーターをク リ ッ クする と、図 15 のよ うに、そのステータス コードの完全な説明

が表示されます。

図 15 ステータ ス コー ドの説明

フ ァ イルを開 く 作業

Function Executor でデータ フ ァ イルを開 く には

1 [フ ァ イル] メニューの [開く] を選択します。 次のダイアログ ボッ クスが表示されます。

216

Page 233: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor での作業

図 16 [Btrieve フ ァ イルのオープン] ダイアログ ボ ッ クス

メ モ ク ラ イアン ト ID : [使用] を無効にしている場合、 Function Executor では、 BTRV() 関数呼び出しが使

用されます。[使用]を有効にしている場合、そのファイルで実行される各オペレーシ ョ ンについて BTRVID()関数呼び出しが使用されます。 [自動] を有効にしている場合、 Function Executor では、 ク ライアン ト ID が自動的に作成されます。 [自動] を無効にしている場合には、 手動で値を入力できます。

2 [参照] をク リ ッ ク します。

3 目的のファイル名をダブルク リ ッ ク します。

Function Executor でフ ァ イルを開 く その他の方法

1) Windows エクスプローラーまたはオペレーティ ング システムのフォルダー ビューから [Btrieve ファ イルの

オープン] ダイアログ ボッ クス内にファイルをド ラ ッグするこ とができます。 ド ラ ッグしたファ イル名が [ファ

イル名] ボッ クスに入り ます。

2) メ イン ウ ィンド ウには複数のファイルをド ラ ッグするこ とができます。

3) 1 つのファイルを開いておけば (エディ ター ウ ィンド ウが使用可能になるので)、 オペ コード (オペレーシ ョ

ン コード) 0 を使用して別のファイルを開く こ とができます。そのファイルは新しいウ ィンド ウに表示されます。

4) DOS コマンド ラインから Function Executor を起動し、 ファ イル名の一覧を指定して開く こ とができます。 た

とえば、次のよ うなコマンド ラ インを使用する と、DEMODATA サンプル データベースから 2 つのファイルを開

く こ とができます。

WBExec32 person.mkd billing.mkd

次の例のよ うに、 ワイルドカードを使用するこ と もできます。

WBExec32 *.mkd

このコマンドを実行する と、 ファ イルの拡張子 (種類) を Function Executor に関連付けるこ とができます。 たと

えば、 MKD、 BTR、 DAT またはその他の拡張子を Function Executor に関連付けるこ とができます。関連付けされ

たファイルをエクスプローラー内でダブルク リ ッ クする と、 そのファイルは自動的に Function Executor で開かれ

ます。

Btrieve フ ァ イルを作成する作業

Function Executor で Btrieve ファ イルを作成する方法には 2 つの方法があ り ます。 ファ イルが既に開かれている場

合、 それを基にクローン ファ イルを作成するか、 始めから作成します。

注意 同じディレク ト リに、ファ イル名が同一で拡張子のみが異なるよ うなファ イルを置かないでください。

たとえば、同じディ レク ト リ内のデータ ファ イルの 1 つに Invoice.btr、 も う 1 つに Invoice.mkd という名前を

217

Page 234: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

付けてはいけません。 このよ う な制限が設けられているのは、 データベース エンジンがさまざまな機能で

ファイル名のみを使用し、 ファ イルの拡張子を無視するためです。 ファ イルの識別にはファイル名のみが使

用されるため、 ファ イルの拡張子だけが異なるファイルは、データベース エンジンでは同一のものである と

認識されます。

方法 1 : 現在のフ ァ イルをテンプレー ト と し て使用する

1 [フ ァ イル] メニューの [新規作成] を選択します。 次のダイアログ ボッ クスが表示されます。

図 17 [フ ァ イル定義の修正] ダイアログ ボ ッ クス

2 このダイアログ ボッ クスでキーの操作もできます。 [キー] メニューから、 [追加]、 [削除]、 [セグ メ ン ト ]

メニューから [追加]、 [挿入]、 [削除] のいずれかをク リ ッ ク します。 新規ファイルを BUTIL-create での使

用の目的でディ スク リプシ ョ ンと して保存するこ と もできます。[デ ィ スク リ プシ ョ ン と し て保存] をク リ ッ

ク し、 ファ イルの保存先の名前と ロケーシ ョ ンを示します。

3 ファ イルを作成するには、 [作成] をク リ ッ ク します。する と、 ファ イルが開き、作成が完了したこ とを示す

メ ッセージが表示されます。

方法 2 : 新しいフ ァ イルを始めから作成する

1 メ イン ツール バーの [Btrieve フ ァ イルの作成] アイコンをク リ ッ クするか、 ファ イルがまだ開いていない

場合には、 前項と同様に [フ ァ イル] メニューの [新規作成] をク リ ッ ク します。

2 画面上にファイルが既に開かれている場合には、 ド ロ ップダウン ボッ クスが表示されます。 [新規フ ァ イル

の作成] を選択します。

3 前と同じダイアログ ボッ クスが値が空白の状態で表示され、 これに新しい値を入力できます。

4 まず、 [キー] メニューを使用するか、 Ctrl キーと A キーを同時に押して新規キーを追加します。

5 ダイアログ ボッ クスの下部にキーの属性を入力します。

6 必要に応じてキーやセグメン トの追加や削除を続けます。 これにはメニューを使用するか、 一覧表示された

キーを右ク リ ッ ク します。

218

Page 235: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Function Executor での作業

7 こ こで、 [作成] ボタンをク リ ッ クする と、 B_Create (14) オペレーシ ョ ンが実行されます。 する と、 画面上

にそのファイルも自動的に開きます。

履歴の作業

以下の作業は履歴の機能に関連しています。

「履歴ウ ィンド ウを表示するには」

「履歴ウ ィンド ウのド ッキング状態を切り替えるには」

「履歴ウ ィンド ウの常に前面に表示状態を切り替えるには」

「履歴ウ ィンド ウをデフォルトの設定にリセッ トするには」

履歴ウ ィ ン ド ウを表示するには

1 [表示|履歴] を選択するか、 [履歴] ボタンをク リ ッ ク します。

履歴ウ ィ ン ド ウのド ッ キング状態を切り替えるには

1 履歴ウ ィンド ウが表示されていない場合は、表示させます (「履歴ウ ィンド ウを表示するには」 を参照して く

ださい)。

2 履歴項目ウ ィンド ウ内で右ク リ ッ ク し、 次の図に示すよ うに [ド ッキング] オプシ ョ ンのチェッ クを付ける

かはずしてド ッキング状態を切り替えます。

図 18 履歴ウ ィ ン ド ウをのド ッ キングを解除するには

ド ッキングされた場合、履歴ウ ィンド ウは図 18 に示すよ うにアプリ ケーシ ョ ン ウ ィンド ウに連結されます。

ド ッキングされない場合、履歴ウ ィンド ウは別個のウ ィンド ウになり ます。 ド ッキングされない場合、 図 18に示すよ うに、 履歴ウ ィンド ウには右ク リ ッ クで表示されるコマンド と同じ メニュー項目が表示されます。

履歴ウ ィ ン ド ウの常に前面に表示状態を切り替えるには

1 履歴ウ ィンド ウが表示されていない場合は、表示させます (「履歴ウ ィンド ウを表示するには」 を参照して く

ださい)。

2 この機能は、履歴ウ ィンド ウがド ッキングされていない状態でのみ使用できます。「履歴ウ ィンド ウのド ッキ

ング状態を切り替えるには」 を参照して ください。

3 履歴項目ウ ィンド ウで表示を右ク リ ッ ク し、 [常に手前に表示] にチェッ クを付けるかまたははずします。

履歴ウ ィ ン ド ウをデフ ォル ト の設定に リ セ ッ ト するには

1 履歴ウ ィンド ウが表示されていない場合は、表示させます (「履歴ウ ィンド ウを表示するには」 を参照して く

ださい)。

2 履歴項目ウ ィンド ウで表示を右ク リ ッ ク し、 [設定|デフ ォル ト ] を選択します。

219

Page 236: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve オペレーシ ョ ンのテス ト

220

Page 237: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

13

Maintenance を使用し た Btrieve データ フ ァ イルの操作

Maintenance ユーティ リ ティ を使用した Btrieve データ ファ イルの操作

この章では、 以下の項目について説明します。

「Maintenance ユーティ リ ティの概要」

「対話型 Btrieve Maintenance ユーティ リ ティ」

「ファ イル情報エディ ター」

「オーナー ネーム」

「情報レポート 」

「インデッ クス」

「データ」

「Btrieve コマンド ライン Maintenance ユーティ リ ティ (butil)」

「データのインポート とエクスポート 」

「データ ファ イルの作成と変更」

「データ ファ イル情報の表示」

「Btrieve インターフェイス モジュールのバージ ョ ンの表示」

「Btrieve インターフェイス と リ クエスターのアンロード (DOS のみ)」

「Continuous オペレーシ ョ ンの実行」

「アーカイブ ログの使用」

221

Page 238: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

Maintenance ユーテ ィ リ テ ィ の概要

Pervasive PSQL には、対話型の Maintenance ユーティ リ ティおよびコマンド ラインの Maintenance ユーティ リ ティ

が用意されています。 この Maintenance ユーティ リ テ ィは、 いずれも以下の共通したファ イル操作およびデータ

操作を行います。

定義したファイルおよびキー仕様に基づいた新規データ ファ イルの作成

既存データ ファ イルのファイルおよびキー仕様の設定

データ ファ イルのオーナー ネームの設定と ク リ ア

データ ファ イルのインデッ クスの作成と削除

ASCII シーケンシャル データのインポート とエクスポート

Pervasive PSQL データ ファ イル間のデータのコピー

後のバッ クアップからシステム エラーが発生する間に行ったファイルへの変更の回復

2 つのユーティ リ ティは基本的に同じですが、 機能が異なる部分が多少あ り ます。 たとえば、 対話型 Maintenanceユーティ リ ティでは、定義したファイルおよびキー仕様に基づいてディ スク リプシ ョ ン ファ イルを作成するこ と

ができますが、 コマンド ラ イン Maintenance ユーティ リ ティでは、 サーバー上でファイルの Continuous オペレー

シ ョ ンを直接開始または停止するこ とができます。

Maintenance ユーティ リ ティ を使用する前に、 ファ イル、 レコード、 キー、 セグメン ト などの Btrieve の基本概念

について熟知しておく必要があ り ます。これらの項目の詳細については、『Pervasive PSQL Programmer's Guide 』 を

参照してください。

メ モ Pervasive PSQL 製品では次の 2 種類の Maintenance ユーティ リ ティ を提供します。Btrieve および SQL の2 つです。 SQL Maintenance ユーティ リ テ ィは ODBC 経由での リ レーシ ョナル アクセスに使用するデータ

ソース名 (DSN) をサポート します。

222

Page 239: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

対話型 Btrieve Maintenance ユーテ ィ リ テ ィ

対話型 Btrieve Maintenance ユーテ ィ リ テ ィ

対話型 Maintenance ユーテ ィ リ テ ィは、 Windows 32 ビ ッ ト および 64 ビ ッ ト プラ ッ ト フォームで実行される

Windows アプリ ケーシ ョ ンです。 このユーティ リ ティは、 グラフ ィカル インターフェイスを使用した場合、 また

はディ スク リプシ ョ ン ファ イルを作成したい場合に使用します。このセクシ ョ ンには次の主な ト ピッ クがあ り ま

す。

「ファ イル情報エディ ター」

「オーナー ネーム」

「情報レポート 」

「インデッ クス」

「データ」

それぞれの主な ト ピッ クにはその ト ピッ クに固有のタスクがあ り ます。

拡張フ ァ イルのサポー ト

MicroKernel データ ファ イルは、オペレーティング システムのファイル サイズ上限を超えた容量を持つこ とが可

能です。 データを、 MicroKernel の拡張ファ イルからシーケンシャル ファ イルにエクスポート した際、 実際の形

式の違いから、 そのシーケンシャル ファ イルの容量がデータベース エンジンのファ イル サイズ上限を超える場

合があ り ます。

大きなサイズのファイルをエクスポートする際、 対話型 Maintenance ユーティ リ ティでは、 シーケンシャル ファ

イルがファ イル サイズの上限 (2 GB) を超えているこ とを検出する と、 エクステンシ ョ ン ファ イルの作成が開

始されます。 この処理は自動的に行われます。 エクステンシ ョ ン ファ イルおよび元のシーケンシャル ファ イル

は、 同じボ リ ューム内に存在する必要があ り ます (ファ イルのサイズの制限は、 オペレーティ ング システムや

ファイル システムによって異なり ます。 2 GB というサイズは単にデータベース エンジンで強制的に指定した制

限サイズです)。

エクステンシ ョ ン ファ イルの名前には、 ベース ファ イルと似た名前を付ける方式が使用されます。 エクステン

シ ョ ン ファ イルを示すのに、 ネイティブな MKDE エクステンシ ョ ン ファ イルがキャレッ ト ("^") を使用するの

に対し、シーケンシャル ファ イルのエクステンシ ョ ン ファ イルはチルダ ("~") を使用するので、同じベース ファ

イル名を持つ既存の MKDE 拡張ファ イルを上書きするのを防ぎます。 初のエクスポー ト エクステンシ ョ ン

ファ イルには、ベース ファ イル名に ".~01" という拡張子が付きます。次のエクステンシ ョ ン ファ イルには、ベー

ス ファ イル名に ".~02" という よ うに拡張子が付けられます。 これらの拡張子は 16 進形式で追加されます。

名前付け規則は 255 までのエクステンシ ョ ン ファ イルをサポート します。 したがって、 大ファイル サイズは

256 GB です。

また、 シーケンシャル フ ァ イルからデータをインポー トする場合は、 フ ァ イルが拡張されているかど う かが

チェッ ク され、 エクステンシ ョ ン ファ イルからデータがロード されます。

長いフ ァ イル名と埋め込みスペースのサポー ト

スペースを含む長いファイル名は、サポート されるすべてのオペレーティング システムで使用できます。参照対

象となるすべてのファイル名には、 埋め込みスペースを含むこ とが可能であ り、 また 8 バイ ト を超える名前も使

用可能です。

Btrieve の古いバージ ョ ンでは、 Open や Create など、 パスに基づくオペレーシ ョ ンの際に、 ファ イル名の 後に

スペースを追加するこ とができました。 このバージ ョ ンでも、 デフォルト と してこれが設定されており、 操作に

支障をきたしませんが、 バージ ョ ン埋め込みスペースを含むファイル名やディ レク ト リ名も正し く認識する機能

を利用したい場合は、 ク ライアン ト リ クエスターの [スペースを含むフ ァ イル / デ ィ レ ク ト リ名] 設定をオンに

設定します。 デフォルトの設定はオンです。

このオプシ ョ ンをオフに設定した場合でも、 埋め込みスペースを含む名前を持つファ イルにアクセスする際に、

アプリ ケーシ ョ ンがファイルを開く、または作成する BTRV/BTRVID/BTRCALL/BTRCALLID コールを行う と き、

その名前を二重引用符で囲めば、 使用するこ とができます。

223

Page 240: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

レ コー ド およびページ圧縮

Pervasive PSQL ではレコードおよびページによる 2 種類のデータ圧縮を提供します。 これら 2 種類のデータ圧縮

は、 別々に使われる こ と もあれば、 一緒に使われるこ と もあ り ます。 2 つの圧縮タイプの主な目的はいずれも、

データ ファ イルのサイズを減らし、データのタイプとデータ操作のタイプに応じてよ り速いパフォーマンスを提

供するこ とです。

レ コー ド圧縮

レコード圧縮には 6.0 以上のファイル形式が必要です。 レコード圧縮によ り、 多数の繰り返し文字を含むレコー

ドの格納に必要なスペースを大幅に削減できます。 データベース エンジンは、 5 つ以上連続する同一文字を 3 バイ トに圧縮します。

ファ イルの作成時、指定されたレコード長に余裕を持たせるため、データベース エンジンは自動的に指定された

よ り大きいページ サイズを使用します。圧縮されていないレコードが、使用できる 大ページに収ま り きらない

ほど大きい場合、 データベース エンジンは自動的にレコード圧縮をオンにします。

圧縮レコードの 終的な長さは、 ファ イルに書き込まれるまで決定されないため、 データベース エンジンはレ

コード圧縮されたファイルを可変長レコード ファ イルと して作成します。レコードの圧縮されたイ メージは可変

長レコード と して格納されます。アプリ ケーシ ョ ンがレコードの追加、更新、削除を頻繁に行う と、個々のレコー

ドはいくつかのファイル ページに断片化されます。データベース エンジンは 1 つのレコードを取得するために複

数のファイル ページを読み取らなければならない場合があるので、この断片化によってアクセス時間が遅くなる

おそれがあ り ます。

開発者リ ファレンス 『Pervasive PSQL Programmer's Guide』 の 「ページ サイズの選択」、 「ファ イル サイズの予測」

および 「レコード圧縮」 も参照して ください。

ページ圧縮

ページ圧縮には 9.5 以上のファイル形式が必要です。 内部的には、 Pervasive PSQL データ ファ イルはさまざまな

種類のページの連続です。 ページ圧縮は、 ファ イル内のデータ ページの圧縮と復元を制御します。

ファ イルが物理ス ト レージから読み取られる と、 データ ページは復元されてメモ リ キャ ッシュに保持されます。

レコードの読み取り と更新は、 メモ リ キャ ッシュ内の圧縮されていないデータに対して行われます。書き込み操

作が行われる と、データ ページは圧縮されて物理ス ト レージに書き込まれます。 圧縮されたページが、次回アク

セスされるまで保持されるかど うかは、 キャ ッシュ管理によって異なり ます。

データの種類によって圧縮しても意味がない場合、データベース エンジンはそのデータを圧縮しないで物理ス ト

レージに書き込みます。

224

Page 241: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

対話型 Btrieve Maintenance ユーテ ィ リ テ ィ

圧縮の使用時期の判断

レコード圧縮、 ページ圧縮、 あるいはその両方を使用するこ とで得られる利点は、 圧縮されるデータのタイプに

よって異なり ます。 次の表では、 データ圧縮を使用するかど うかを判断するための一般的な要因を説明します。

Btrieve Maintenance ユーテ ィ リ テ ィ のイ ン ターフ ェ イス

オペレーティング システムの[ス ター ト ] メニューまたはアプ リ画面から、あるいは Pervasive PSQL Control Centerの [ツール] メニューから Maintenance ユーティ リ ティにアクセスします。 このユーティ リ ティのメ イン ウ ィン

ド ウは、 次のよ うにな り ます。

表 53 データ圧縮がふさわしいか考慮するための要因

圧縮 考慮する要因

レコード ページ

○ レコード圧縮は、 以下の条件の場合に も効果的です。

各レコードに文字の繰り返しが多数含まれる可能性がある。 たとえば、 レコードにい くつかの

フ ィールドが含まれており、 レコードをファ イルに挿入する と きにそれらのフ ィールドはすべて

タスクによって空白に初期化される可能性があ り ます。 レコード圧縮は、 これらのフ ィールドが

ほかの値を含むフ ィールドで分割される場合でなく、 レコード内で 1 つにグループ化される場合

に有効です。

データベース エンジンを実行するコンピューターが、圧縮バッファーで必要となる追加メモ リ を

提供できる。

レコードは、 変更されるこ とに比べ、 よ り頻繁に読み取られる。

レコードの固定長部分が 「ページ サイズ - オーバーヘッ ド」 よ り長い場合、 自動的に圧縮が使用さ

れます。

レコード圧縮は、キー オン リー ファイルやブランク ト ランケーシ ョ ンを使用するファイルには使用

できません。

○ ページ圧縮は、 以下の条件の場合に も効果的です。

データが ZIP タイプの圧縮アルゴ リズムを使用して高度に圧縮可能である。 ページ圧縮によって

ファイル サイズが 1/4 程度に著し く縮小できる場合、 ファ イルのパフォーマンスはかなり向上し

ます。

ページは、 追加、 更新、 削除されるこ とに比べ、 よ り頻繁に読み取られる。

圧縮しても意味がない場合、 データベース エンジンはデータ ページを圧縮しないで物理ス ト レージ

に書き込みます。

○ ○ レコード圧縮およびページ圧縮の使用は、レコードに大きな空白部分が含まれる場合と、ページが追

加、 更新、 削除されるこ とに比べ頻繁に読み取られる場合に も効果的です。

225

Page 242: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

図 19 Btrieve Maintenance ユーテ ィ リ テ ィ のメ イ ン ウ ィ ン ド ウ

メ ニュー オプシ ョ ン

対話型 Maintenance ユーティ リ ティには、 以下のメニューが用意されています。

ヘルプの起動

Maintenance ユーティ リ ティのヘルプを使用するには、ヘルプの必要なダイアログ ボッ クスで [ヘルプ] をク リ ッ

クするか、 以下のよ うな [ヘルプ] メニューのコマンドを選択します。

オプシ ョ ン フ ァ イル情報エデ ィ ターの表示、 オーナー ネームの設定およびク リ ア、 ファ イル情報レポートの生成、

ユーティ リ ティの終了を行います。

インデッ クス インデッ クスの作成と削除を行います。

データ ASCII ファイルからのデータのロード、 ASCII ファイルへのデータの保存、データ ファイル間のレコー

ドのコピー、 および 後のバッ クアップからシステム エラーが発生するまでの間に行ったデータ ファ

イルへの変更を回復するためのロール フォワードを行います。

ヘルプ Maintenance ユーティ リティのヘルプを起動します。

ヘルプの起動 Maintenance ユーティ リ ティのヘルプ ト ピッ クが表示されます。

バージ ョ ン情報 著作権情報および製品のバージ ョ ン番号が表示されます。

226

Page 243: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ァ イル情報エデ ィ ター

フ ァ イル情報エデ ィ ター

このセクシ ョ ンでは、 構築するファイルおよびキー仕様に基づいて新しいファイルを作成する [ファ イル情報エ

ディ ター] に関する一般的な説明を行います。 このエディ ターでは、 既存ファ イルの情報をロードできるため、

既存データ ファ イルのファイル仕様やキー仕様の確認に便利です。 また、既存ファイルのファイルやキー仕様に

基づいた新規ファイルの作成も可能です (コマンド ライン Maintenance ユーティ リ ティである BUTIL の CLONEコマンド と同様)。

注意 同じディレク ト リに、ファ イル名が同一で拡張子のみが異なるよ うなファ イルを置かないでください。

たとえば、同じディ レク ト リ内のデータ ファ イルの 1 つに Invoice.btr、 も う 1 つに Invoice.mkd という名前を

付けてはいけません。 このよ う な制限が設けられているのは、 データベース エンジンがさまざまな機能で

ファイル名のみを使用し、 ファ イルの拡張子を無視するためです。 ファ イルの識別にはファイル名のみが使

用されるため、 ファ イルの拡張子だけが異なるファイルは、データベース エンジンでは同一のものである と

認識されます。

ファ イル情報エディ ターを開くには、 [オプシ ョ ン|情報エデ ィ ターの表示] をク リ ッ ク します。

図 20 フ ァ イル情報エデ ィ ター

[フ ァ イル情報エデ ィ ター] ダイアログの項目

エディ ターの上部には、 以下のボタンが表示されます。

情報のロード 既存ファ イルの情報をロード します。 情報をロード しても、 既存ファ イルを編集されるこ と

はあ り ません。 既存ファイルに関する情報のコピーのみがロード されます。

ファ イルの作成 ダイアログ ボッ クスの現在の情報に基づいて新規ファ イルを作成します。

デフォルトに設定 設定をデフォルト値に戻します。

ディスクリプション コメント ディ スク リプシ ョ ン ファイルを作成する場合は、 ファ イルに関する メモを入力するこ とがで

きます。

ヘルプ [フ ァ イル情報エデ ィ ター] ダイアログ ボッ クスのヘルプを表示します。

227

Page 244: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

データ フ ァ イル情報

[フ ァ イル情報エデ ィ ター] の上部の [データ ファ イル情報] 領域には、 以下のコン ト ロールが含まれます。

フ ァ イル仕様

[ファ イル情報エディ ター] の中央部に [フ ァ イル仕様] 領域があ り ます。 表 54 はこのボッ クス内のコン ト ロー

ルの説明です。

オーナー ネーム 必要に応じて、 既存ファ イルのオーナー ネームをテキス ト ボッ クスから指定します。

バージ ョ ン ファ イルの全属性を読み込むこ とができるデータベース エンジンの も古いバージ ョ ンを表しま

す。たとえば、バージ ョ ン 9.5 の Btrieve エンジンでファ イルを作成し、バージ ョ ン 0.5 特有の属性

を使用しなかった場合、 Maintenance ユーティ リ テ ィでは、 バージ ョ ン 9.0 と表示されます。 ファ

イル形式のバージ ョ ンについては 「ファ イル バージ ョ ンに関する注意」 を参照して ください。

総レコード数 ファ イルのレコード総数を表します。

表 54 [フ ァ イル仕様] のコ ン ト ロール

コ ン ト ロール 説明 範囲 デフォルト

レコード長 ファ イルの固定長レコードの論理データ レコード長

(バイ ト単位) を設定します。

レ コード長およびオーバーヘッ ドの説明について

は、 『Pervasive PSQL Programmer's Guide』 の 「レコー

ド長」 セクシ ョ ンを参照して ください。 このマニュ

アルは、Pervasive PSQL 開発者リ ファレンスに含まれ

ています。

低 4 バイ ト。 大値はファ イル

バージ ョ ンによって異な り ます。

指定されたレコード長が、 ページ

サイズからオーバヘッ ド を差し引

いた数値を超え る場合、 データ

ベース エンジンは自動的にその

フ ァ イル形式で次に使用可能な

ページ サイズになるよ う試行しま

す。 レコード長が、 大ページ サイズからオーバーヘッ ド を差し引

いた数値を超える場合、 エンジン

はレ コー ド の圧縮をオンにし ま

す。

100

ページ サイズ ファ イルの物理ページ サイズ (バイ ト単位) を設定

します。

512 - 4096 :9.0 よ り前のファ イル

バージ ョの場合(512 バイ トの倍数

で 大 4096 バイ ト )

512、1024、1536、2048、2560、3072、3584、 4096 または 8192 : ファ イル

バージ ョ ンが 9.0 の場合

1024、 2048、 4096、 8192 または

16384 : ファ イル バージ ョ ンが 9.5以上の場合

4,096

キー数 (キー セグメン ト と対照して)エディ ターで現在定義

されている識別キーの数を表します。 キー リ ス トの

キーの数が反映されます。

0 - 119 0

セグメント数 エディ ターで現在定義されているキー セグメン トの

数を表します。 セグ メン ト リ ス トのセグメン トの数

が反映されます。

0 - 119 : 9.5 よ り 前のフ ァ イル

バージ ョ ンの場合。

0 - 420 : 9.5 以上のファイル バー

ジ ョ ンの場合。

リ レーシ ョナル インターフェイス

のセグ メ ン ト の数は、 すべての

ファ イル バージ ョ ンにおいて、119個までです。

0

228

Page 245: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ァ イル情報エデ ィ ター

リ ンク可能キー 将来のリ ンク重複キーに予約する 8 バイ ト プレース

ホルダーの数を設定します。 既存データ ファ イルの

情報をロード している場合、 そのファ イルで現在使

用可能なプレースホルダーの数がこの数値に反映さ

れます。 元から予約してあるプレースホルダーの数

は、 ファイルに保存されません。

0 - 119 3

キーオン リー フ ァ イルがキー オン リ ーかど う かを表し ます。 レ

コード タ圧縮または可変長レコードを有効にした場

合、 およびファ イルに複数のキーを定義した場合は、

この設定は使用できません。

オンまたはオフ オフ

イ ン デ ッ ク ス

バランス

ファイルにおけるキー ページ管理のインデッ クス バランスの使用を設定します。

オンまたはオフ オフ

プ リ ア ロ ケ ー

シ ョ ン

ファ イルにおけるプ リ アロケート ページの使用を設

定します。

オンまたはオフ オフ

ページ数 ファ イル作成時にプ リ アロケートするページの数を

設定します。 [プ リ アロケーシ ョ ン] がオンの場合に

のみ設定でき ます。 既存データ フ ァ イルの情報を

ロード している場合、 そのファ イルの未使用の残り

プ リ アロケー ト ページ数がこの数値に反映されま

す。 元からプ リ アロケー ト してあるページの数は、

ファイルに保存されません。

1 - 65,535 0

レコード圧縮 フ ァ イルにおける レ コード圧縮の使用を設定し ま

す。 キー オン リー ファ イル、 またはブランク ト ラン

ケーシ ョ ンを使用するファ イルには対応していませ

ん。 「レコードおよびページ圧縮」 も参照して くださ

い。

オンまたはオフ オフ

ページ圧縮 フ ァ イルにおけるページ圧縮の使用を設定します。

「レコードおよびページ圧縮」 も参照してください。

オンまたはオフ オフ

可変長レコード ファ イルに、 可変長レコードを含むこ とができるか

ど うかを設定します。

オンまたはオフ オフ

ブ ラ ン ク ト ラ

ンケーシ ョ ン

ディ ス ク領域を確保するために、 ファ イルが可変長

レコードに対してブランク ト ランケーシ ョ ンを使用

するかど うかを設定します。 この設定は、 可変長レ

コード有効時のみ可能です。

オンまたはオフ オフ

VAT ファ イルが、 長いレコード内のデータへ高速にアク

セスするため、 可変長部割り当てテーブルを使用す

るかど うかを設定します。この設定は、可変長レコー

ド有効時のみ可能です。

オンまたはオフ オフ

% 空きスペース 新規可変ページ作成前に、 ファ イルの可変ページが

確保する未使用スペースの量を設定します。 この設

定は、 [レコード圧縮] または [可変長レコード] が

オンの場合にのみ設定できます。

5、 10、 20、 30 5

表 54 [フ ァ イル仕様] のコ ン ト ロール

コ ン ト ロール 説明 範囲 デフォルト

229

Page 246: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

キー

ダイアログ ボッ クスの左下部には [キー] グループ ボッ クスがあ り ます。 表 55 はこの領域のコン ト ロールの説

明です。 これらのコン ト ロールは、 現在のキー セグメン トだけでなく、 [キー] リ ス トで選択されているキーに

固有です。 これらの設定を変更した場合、 指定したキーのすべてのセグメン トに対して変更が適用されます。

[キー] リ ス ト および [セグ メ ン ト ] リ ス ト

ダイアログ ボッ クス中央下部の [キー] リ ス トには、 ファ イルに定義されているキー番号が表示されます。 バー

ジ ョ ン 6.x 以降のファイルでは、 このキー番号が連続した数値である必要はあ り ません。 Maintenance ユーティ リ

ティでは、 選択されたキーの仕様が、 ダイアログ ボッ クス左下部の [キー] ボッ クスに表示されます。

また、 ダイアログ ボッ クス中央下部の [セグ メ ン ト ] リ ス トには、 [キー] リ ス ト で選択されたキーに定義され

ている、 キー セグメン ト番号が表示されます。 Maintenance ユーティ リ テ ィでは、 選択されたセグメン トの仕様

が、 ダイアログ ボッ クス右下部の [セグ メ ン ト ] ボッ クスに表示されます。

表 55 [キー] のコ ン ト ロール

コ ン ト ロール 説明 デフォルト

重複可能 キーが、 重複する値 (リ ンク重複) を持つこ とができるかど うかを設定します。

「重複キーの操作方法」 を参照して ください。

オン

変更可能 キーの値を、 作成後に変更できるかど うかを設定します。 キー値の変更を許可しても

パフォーマンスには影響しません。 キー ページは、実際のキー値が変更された場合に

のみ更新され、 特定のレコードのキー以外のフ ィールドが変更されても更新されませ

ん。

オン

繰り返し重複 重複キー値を格納するのにデータベース エンジンがく り返し重複の手法を使用する

よ う指定します。

「重複キーの操作方法」 を参照して ください。

オフ

散布キー (ヌル キー) 散布キーには、 ファ イル内にあるレコード数よ り も少ない数のキー値が含まれます。

インデッ クスから除外するキー値を指定するには、 この次にある 2 つのコン ト ロール

を参照して ください。 この設定は、 ヌル可能なセグメン トが含まれるキーの場合のみ

可能です。

オフ

全セグメン ト (ヌル) レコードのすべてのキー セグメン トにヌル値が含まれる場合に、そのレコードをイン

デッ クスに含まれないよ う設定します。 この設定は、 散布キー (ヌル キー) 有効時の

み可能です。 キー フラグ 0x0008 に相当します。 セグメン トがヌルと して評価される

かど うかは、 そのフ ィールドのヌル インジケーター セグ メン トだけを基に判断され

ます。 そのフ ィールドの内容は評価されません。

オフ

一部セグメン ト

(マニュアル)

1 つまたは複数のキー セグ メ ン ト にヌル値が含まれる場合に、 そのレコードをイン

デッ クスに含めないよ う指定します。 この設定は、 散布キー (ヌル キー) 有効時のみ

可能です。 キー フラグ 0x0200 に相当します。 セグメン トがヌルと して評価されるか

ど うかは、 そのフ ィールドのヌル インジケーター セグメン トだけを基に判断されま

す。 そのフ ィールドの内容は評価されません。

オフ

ACS 情報 キーのオルタネート コレーティング シーケンス (ACS) を設定します。 この設定は、

キーのセグ メン トに対する [ACS を使用する] チェ ッ ク ボッ クスがオンの場合にの

み使用できます。

オフ

ユニーク値 ファ イルにある重複しないキー値の数を表します。 これは、既存データ ファ イルの情

報をロード している場合のみ表示されます。

適用外

230

Page 247: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ァ イル情報エデ ィ ター

また、 [キー] と [セグ メ ン ト ] リ ス トには、 以下のボタンが表示されます。

これらのボタンは、 作成するファイルのキー仕様を設定するもので、 既存ファイルのキーに対して使用するこ と

はできません。既存ファイルのインデッ クスを作成または削除する場合は、「インデッ クスの作業」 を参照して く

ださい。

キー セグ メ ン ト

ダイアログ ボッ クスの右下部には [キー セグ メ ン ト ] グループ ボッ クスがあ り ます。表 56 はこの領域のコン ト

ロールの説明です。 これらのコン ト ロールは、[セグ メ ン ト ] リ ス トで選択されているセグメン トに固有のもので

す。

重複キーの操作方法

複数のレコードが、 インデッ クス キーに同一の重複した値を持つこ とができます。重複キー値を持つレコードを

記憶しておく 2 つの方法は、 リ ンク重複および繰り返し重複と呼びます。

挿入 新しいキーまたはセグメン ト を定義します。

削除 選択されたキーまたはセグメン トの仕様を削除します。

圧縮 キーの番号を再割り当てします。 このボタンは、 キー仕様を削除するこ とに

よって生じたキー番号の不連続をなくすこ とができます。

表 56 [キー セグ メ ン ト ] グループ ボッ クスのコ ン ト ロール

コ ン ト ロール 説明 デフ ォル ト

データ型 キー セグメン トのデータ型を指定します。

NULL データ型は、 インデッ クスが 1 バイ トのヌル インジケーター セグメン トであるこ

とを示します。 このセグメン トはマルチ セグメン ト キー内にあ り、 NULL 型でないほか

のキー セグメン トの前にある必要があ り ます。 このキー タイプに使用される Btrieve APIの番号は 255 です。

String

位置 レコード内でのこのキー セグメン トの相対的な開始位置を、 数値で設定します。 この数

値は、 レコード長を超えて設定するこ とはできません。

1

長さ キー セグメン トの長さ (バイ ト単位) を設定します。 この数値は、 セグメン トのデータ

型に指定された制限を超える こ とはできません。 キー位置とキー長の合計も、 レコード

長を超えないよ うに注意してください。

10

ヌル値 (16 進) キー セグメン トのヌル文字値 (16 進数) を設定します。 この設定は、 キーに対する [ヌ

ル キー] チェ ッ ク ボッ クスがオンの場合にのみ使用できます。

バ イ ナ リ

ゼロ

大小文字無視 セグメン トで大文字小文字が区別されるかど うかを設定します。 この設定は、 STRING、

LSTRING、 ZSTRING のデータ型、 または ACS を使用しないキーに対してのみ有効です。

オン

降順ソート キー セグメン ト値を降順 (大きいものから小さいものへ) でソートするかど うかを指定

します。

オフ

ACS を使用する セグメントで、 キーに定義されたオルタネート コレーティング シーケンスを使用するかどうかを設

定します。 この設定は、 大文字小文字が区別される STRING、 LSTRING、 ZSTRINGのデータ型に対してのみ使用できます。

オフ

ヌル値の離散順

ヌル値の離散順序は、ヌル インジケーター セグメン ト (NIS)で、MKDE が NIS を Booleanと して扱って非ゼロ値をすべてヌルと見なすのか、 1 バイ トの Integer と して扱ってゼロ

が非ヌルでその他すべての値を異なるタイプのヌルと見なすのかを決定するのに使用さ

れます。 この場合、 これらは離散値と してソート されます。 Btrieve API は NO_CASE フラグ 0x0400 がこれまで Integer 値に使用されていなかったので、 これを使用し、離散順序

ソートが実行されるよ うにします。

オフ

231

Page 248: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

リ ン ク重複

リ ンク重複の手法では連鎖技術を使用し、 グループ内の各レコードをポインターを使用して隣のレコード と連結

します。同一インデッ クス ページ上の各エン ト リは 1 組のレコード ポインターを持ち、キー値が重複しているレ

コードの連鎖の 初と 後のリ ンクを示します。 このため、各キー ページのエン ト リは繰り返し重複インデッ ク

スよ り 4 バイ ト長くな り ます。 さ らに、 データ ページの各レコードでは、 リ ンク重複インデッ クスごとに 8 バイ

トのオーバーヘッ ドが必要です。 この 8 バイ トは、 連鎖中の次のレコード と前のレコードを指す 2 つのレコード

ポインターです。

初のレコード ポインターは、 初に、 または も古い時期に格納されたレコードのアドレスを保持します。 2番目のポインターは 近または 後に格納されたレコードのアドレスを保持します。 初のレコードが書き込ま

れた後でほかのレコードが追加される前には、キー ページ エン ト リ上の両方のポインターに 初のレコードのア

ドレスが保持されています。 その後にレコードが追加される と、 2 番目のポインターが追加された各レコードを

指すよ うに変更されます。 このこ とによ り、 後のレコードのレコード ポインターが、 レコードの追加時にデー

タ ページ内に構築される前のレコードの連鎖のリ ンク と して使用されるこ と、および前のレコードの検索に使用

されるこ とが可能になり ます。

繰り返し重複

繰り返し重複の手法では、各重複キー値はインデッ クス ページとデータ ページ上のレコード内の両方に格納され

ます。各キー値には、 レコード ポインターが 2 つではなく 1 つだけあ り ます。 この手法ではデータ レコードの連

鎖が不要で、 レコードごとの 8 バイ トのオーバーヘッ ドを節約します。 キー値が重複レコードごとに繰り返され

るため、 インデッ クスのサイズが大き くなる という影響があ り ます。

手法の比較

リ ンク重複および繰り返し重複の手法は、 以下の基準によって比較するこ とができます。

順序付け

ス ト レージ

パフォーマンス

並行性

順序付け

リ ンク重複インデッ クスは、 データが追加された順序で重複を取得します。 繰り返し重複インデッ クスは、 デー

タがファイル内に存在する順序で重複を取得します。 ファ イル内での位置は制御できないため、 順序はランダム

である と考える必要があ り ます。

ス ト レージ

リ ンク重複インデッ クスでは、 各重複キー値の 初の出現で 12 バイ ト余分に必要にな り ます。 これには、 各レ

コードについての 8 バイ ト とキー ページ エン ト リ と しての 4 バイ トが含まれます。ただし、重複レコードはキー

ページでこれ以外の余計な空間を必要とせず、レコードごとに 8 バイ トが追加されるだけです。したがって、キー

値ごとの重複の数が増加してキー値のサイズが増加しても、 リ ンク重複インデッ クスはキー ページが使用するス

ト レージ空間を著し く節約するこ とができます。 ただし、 重複キーを持つレコードがほとんどファ イルに格納さ

れていないか、キー長が非常に短い、またはその両方に該当する場合は、使用するス ト レージ空間は増加します。

次の図で、 リ ンク重複インデッ クスの使用によって節約されるス ト レージ空間の量を例示します。 リ ンク重複イ

ンデッ クスは、 キー値ごとの重複レコード数が少ない場合にはよ り多くの空間を必要とするので注意して くださ

い。 しかし、 キー値ごとの重複レコード数が増えるにつれ、 リ ンク重複インデッ クスが必要とするページ数は少

なくな り、 ス ト レージ空間を著し く節約します。

232

Page 249: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ァ イル情報エデ ィ ター

図 21 重複キー手法によるページ数の比較

パフ ォーマンス

インデッ クス検索に関わるページが少ない場合、 ディ スクから読み込むページ数が少なくなるため、 結果と して

速いパフォーマンスが得られます。 リ ンク重複手法は一般的に少しの物理ス ト レージ空間しか使用しないため、

速いパフォーマンスが得られます。 繰り返し重複手法は、 重複のあるキー数が少ない場合にのみパフォーマンス

での利点があ り ます。

並行性

データベース エンジンは、 複数の並行ト ランザクシ ョ ンが同一ファ イルに対し同時にアクティブである場合に、

ページ レベルの並行性を提供します。 これは、 キー ページへのほとんどの変更と、 データ ページへのすべての

変更に適用されます。 並行性とは、 同一ページが別個のト ランザクシ ョ ンからの複数の保留中の変更を同時に持

つこ とができるこ とを意味します。 また、 これらの ト ランザクシ ョ ンはどのよ うな順序でもコ ミ ッ トするこ とが

できます。 繰り返し重複インデッ クスはこの並行性を もよ く利用しています。

リ ンク重複インデッ クスでは、 繰り返し重複には存在しない並行性の制限が追加されます。 新しい重複データが

作成された場合、そのレコードはリ ス トの 後で別のレコードに リ ンク されます。このレコードのリ ンクによ り、

1 つではなく 2 つのレコードがロ ッ ク されるこ とになり ます。 すべての重複データはリ ンク レコードの連鎖の

後に追加されるため、 重複は一度に 1 つしか追加できません。

このよ うなレコード ロ ッ クの衝突によ り、通常、ほかのク ライアン トは 初の ト ランザクシ ョ ンがコ ミ ッ ト され

るまで待機状態になり ます。並行動作が行われる環境では、すべての新規レコードが同じ重複値を使用する場合、

並行性は事実上一度に 1 ト ランザクシ ョ ンとい う レベルまで低減します。 さ らに、 ト ランザクシ ョ ンが大きいか

または長く継続する場合、 この連続状態がパフォーマンスに非常に大き く影響します。

並行環境で更新されるデータベースに繰り返し重複インデッ クスを使用した場合、 パフォーマンスは一般的に向

上します。したがって、リ ンク重複手法を使用せざるを得ない理由がある場合を除き、並行環境で更新されるデー

タベースには繰り返し重複インデッ クスを使用して ください。

凡例 : = リ ンク重複 = 繰り返し重複

先頭の 2 行はキー長 100 を表します

中央の 2 行はキー長 50 を表します

下部の 2 行はキー長 4 を表します

233

Page 250: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

情報エデ ィ ターでの作業

ファ イル情報エディ ターを使用して次の作業を行う こ とができます。

「既存ファイルからの情報のロード」

「新規ファイルの作成」

「Btrieve データ ファ イルのコンパク ト化」

「キーのオルタネート コレーティング シーケンスの設定」

既存フ ァ イルからの情報のロー ド

既存ファイルから情報をロード した場合、 既存ファイルを編集するわけではあ り ません。 既存ファイルに関する

情報のコピーのみがロード されます。一般的に、ファ イル情報エディ ターでほかの作業をする前にファイルをロー

ド しますが、 これは必須ではあ り ません。

既存データ フ ァ イルから フ ァ イル情報エデ ィ ターに情報をロー ド するには

1 [ファ イル情報エディ ター] ダイアログ ボッ クスの上部の [情報のロー ド] をク リ ッ ク します。 [フ ァ イルの

選択] ダイアログ ボッ クスが表示されます。

図 22 [フ ァ イルの選択] ダイアログ ボ ッ クス

2 情報をロードするファ イルの名前とパスを指定します。 デフォルトでは、 データ ファ イルの拡張子は .mkdになっています。

Maintenance ユーティ リ ティでは、指定されたファイルを、まずデータ ファ イルと して開こ う と します。ファ

イルにオーナー ネームが必要な場合は、 オーナー ネームを要求する メ ッセージが表示されます。 オーナー

ネームはオプシ ョ ンであるため、 開こ う とするファ イルがオーナー ネームを必要と しない場合もあ り ます。

指定されたファイルがデータ ファ イルでない場合、 このユーティ リ ティではそのファイルを、ディ スク リプ

シ ョ ン ファ イルと して開こ う と します。

新規フ ァ イルの作成

ファ イル情報エディ ターで、 現在の情報または入力した新しい情報に基づいた新規ファイルを作成するこ とがで

きます。

フ ァ イル情報エデ ィ ターの現在の情報に基づいて新規フ ァ イルを作成するには

1 [フ ァ イル情報エデ ィ ター] ダイアログ ボッ クスの上部の [フ ァ イルの作成] をク リ ッ ク します。 [フ ァ イル

の作成] ダイアログ ボッ クスが表示されます。

234

Page 251: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ァ イル情報エデ ィ ター

図 23 [フ ァ イルの作成] ダイアログ ボ ッ クス

2 [フ ァ イルの作成] ダイアログ ボッ クスで設定を行います。 各コン ト ロールについては、表 57 を参照して く

ださい。

デ ィ ス ク リ プシ ョ ン フ ァ イルへのコ メ ン ト の追加

コ メ ン トは、 ディ ス ク リプシ ョ ン ファ イルを作成したと きに、 その先頭に出力されます。 たとえば、 コ メ ン ト

「これは私のファイルです」はディ スク リプシ ョ ン ファ イルの先頭に /* これは私のファイルです */ と表示され

ます。ディ スク リプシ ョ ン ファ イル作成後にコ メン ト を追加する場合は、 コ メン ト を追加してファイルを作成し

直す必要があ り ます。

デ ィ スク リ プシ ョ ン フ ァ イルにコ メ ン ト を追加するには

1 [デ ィ スク リ プシ ョ ン コ メ ン ト ] をク リ ッ ク します。 [デ ィ スク リ プシ ョ ン フ ァ イル コ メ ン ト ] ダイアログ

ボッ クスが表示されます。

表 57 [フ ァ イルの作成] ダイアログのコ ン ト ロール

コントロール 説明 デフ ォル ト

ファ イル名 ファ イルの名前とパスを指定します。 デフォルトでは、 データ ファ イルの拡張子

は .mkd になっています。

適用外

ファ イルの種類 作成するファ イルの種類を指定します。 ディ スク リプシ ョ ン ファ イルを作成する

場合は、[イ ンデッ クス オン リー] オプシ ョ ンを使用して、BUTIL ユーティ リ ティ

で既存データ ファ イルへのインデッ ク ス追加に使用できるディ ス ク リ プシ ョ ン

ファ イルを作成できます。 詳細は、 「インデッ クスの作成」 を参照してください。

MicroKernel 互換

システム データ ファ イルにシステム データを含むかど うかを設定します。 [エンジン設定を使用]

を選択した場合は、[システム データ] 設定オプシ ョ ンの設定が適用されます。[シ

ステム データ な し] を選択した場合、エンジンの設定にかかわらず、システム デー

タは作成されません。 [システム データ を強要] を選択した場合は、 エンジンの設

定にかかわらず、 システム データが作成されます。

この設定は、 ファ イルの種類が [MicroKernel 互換] の場合にのみ有効になり ます。

エンジ ン設定を

使用

235

Page 252: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

図 24 [デ ィ スク リ プシ ョ ン フ ァ イル コ メ ン ト ] ダイアログ ボッ クス

2 全角で 2,560 文字 (半角で 5,120 文字) 以内のコ メン ト を入力します。

3 コ メン ト入力後、 [OK] をク リ ッ ク します。

Btrieve データ フ ァ イルのコ ンパク ト 化

未使用スペースを除去するこ とによ り Btrieve データ ファ イルのコンパク ト化を行う こ とができ、 通常ファイル

のサイズを小さ くするこ とができます。 この処理は、 コマンド ライン Maintenance ユーティ リ ティ (「Btrieve デー

タ ファ イルをコンパク ト化するには」 を参照) を使用して実行するこ と もできます。

Btrieve フ ァ イルを コ ンパク ト 化するには

1 ファ イル情報エディ ターの [情報のロー ド] をク リ ッ ク し、 コンパク ト化するファ イルを選択します。

2 [フ ァ イルの作成] をク リ ッ ク し、 [フ ァ イルの作成] ダイアログ ボッ クスに、 複製する新しいファイルの名

前を入力して [OK] をク リ ッ ク します。

3 メ イン ウ ィンド ウの [データ] メニューから [保存] をク リ ッ ク します。 [データの保存] ダイアログ ボッ

クスの [保存元 MicroKernel フ ァ イル] ボッ ク スに元のファ イルの名前を入力し、 [保存先シーケンシ ャル

フ ァ イル] ボッ クスに出力ファイルの名前 (たとえば < 元のファイル名 >.out) を入力します。

4 [実行] をク リ ッ ク します。 [データの保存] ダイアログ ボッ クスに、 保存の結果が表示されます。 [閉じ る]

をク リ ッ ク します。

5 [データ] メニューの [ロー ド] をク リ ッ ク します。 [データのロー ド] ダイアログ ボッ クスの [ロー ド元

シーケンシャル フ ァ イル] ボッ クスに、 保存したシーケンシャル データ ファ イルの名前を入力します。 ス

テップ 2 で作成した複製ファイルの名前を [ロー ド先 MicroKernel フ ァ イル] ボッ クスに入力します。

6 [実行] をク リ ッ ク します。 [データのロー ド] ダイアログ ボッ クスに、 ロードの結果が表示されます。 [閉

じ る] をク リ ッ ク します。

元のファイルと複製されたファイルのサイズを比較する と、 コンパク ト化の結果を確認できます。

キーのオルタ ネー ト コ レーテ ィ ング シーケンスの設定

オルタネート コレーティング シーケンス(ACS)を使用して、文字型のキー(STRING、LSTRING および ZSTRING)

を標準 ASCII コレーティング シーケンス とは異なる順序でソートするこ とができます。1 つまたは複数の ACS を使用して、 次のよ うにキーをソートするこ とができます。

英数字 (A-Z および 0-9) と非英数字 (# など) の混在した独自のユーザー定義ソート順による

マルチ バイ ト コレーティング要素、符号、および文字の拡張と短縮を含む言語固有のコレーシ ョ ンに適合す

る、 インターナシ ョナル ソート規則 (ISR) による

ファ イルには、キーごとに異なる ACS を持つこ とができますが、1 つのキーには 1 つの ACS のみです。したがっ

て、キーがセグメン ト化されている場合、各セグメン トはそのキーに指定された ACS を使用するか、または ACS

236

Page 253: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

フ ァ イル情報エデ ィ ター

をまったく使用しないかのいずれかになり ます。あるファ イルに、一部のセグメン トにだけ ACS が指定されてい

るキーがある場合、 Btrieve は指定されたセグメン トのみ、 ACS を使用してソート します。

ISR テーブルは ISO の標準ロケール テーブルに基づいており、 Pervasive PSQL によって提供されます。 ISR テー

ブルは Pervasive PSQL のデータベース エンジンと一緒にインス トールされた COLLATE.CFG ファ イルに格納さ

れています。 複数のデータ ファ イルが 1 つの ISR を共有できます。

キーのオルタ ネー ト コ レーテ ィ ング シーケンスを設定するには

1 [ACS 情報] をク リ ッ ク します。

Maintenance ユーティ リ ティに [ACS 情報の指定] ダイアログ ボッ クスが表示されます。

図 25 [ACS 情報の指定] ダイアログ ボッ クス

2 カン ト リ ID と コード ページ、 ACS ファ イル名、 インターナシ ョナル ソート規則 (ISR) のいずれかを、 以

下のよ うに指定できます。

3 カン ト リ ID およびコード ページ ID を設定した場合は、 ロケール特有のコレーティング シーケンスがデー

タ ファ イルに保存されます。 また、 ロケール変更後も、 新しいキー値を正し く挿入するこ とができます。

4 データ ファ イルに ACS ファ イル名を指定した場合は、 ACS ファ イルの内容がデータ ファ イルにコピーされ

ます (データ ファ イルには、 ACS ファイルの名前は含まれません)。ACS は、 8 バイ トの名前 (UPPER など)

で識別され、 Maintenance ユーティ リ ティでは、 データ ファ イルの ACS 情報に、 元の ACS のファ イル名で

はなく、 この 8 バイ トの名前が表示されます。

表 58 ACS 情報のコ ン ト ロール

コ ン ト ロール 説明 デフ ォル ト

ACS カン ト リ / コード

カン ト リ ID 国を識別する Intel 形式の番号です。 詳細は、 オペレーティング システムのマニュアル

を参照して ください。

-1

コード ページ 使用するコード ページを識別する Intel 形式の番号です。 詳細は、 オペレーティング システムのマニュアルを参照して ください。

-1

ACS ファイル オルタネート コレーティング シーケンス ファ イルのフル パス名を指定します。 適用外

インターナショナ

ル ソート規則

このラジオ ボタンをク リ ッ クする と、インターナシ ョナル データをソートするために使

用する、 ISR テーブルを指定するこ とができます。Pervasive PSQL には、『Pervasive PSQLProgrammer's Guide』 に一覧表示された ISR テーブルがあらかじめ用意されています。

237

Page 254: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

5 ディ スク リプシ ョ ン ファ イルに ACS ファイルを指定した場合は、 ACS ファ イルの実際のパスとファ イル名

がディ スク リプシ ョ ン ファ イルにコピーされます。 その結果、 ディ スク リプシ ョ ン ファ イルの ACS 情報を

表示する場合、 Maintenance ユーティ リ ティは指定した ACS ファ イルを検索しよ う と します。

ISO で定義されている言語固有のコレーティング シーケンスを使用して文字列の値をソートする ACS を指

定する場合は、 ISR テーブル名を指定します。 [テーブル名] フ ィールドへの入力は、 半角で 16 文字までで

す。ISR の詳細については、開発者リ ファレンスの『Pervasive PSQL Programmer's Guide』 を参照して ください。

238

Page 255: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

オーナー ネーム

オーナー ネーム

MicroKernel では、 オーナー ネームを指定するこ とによ り、 ファ イルへのアクセスを制限する こ とができます。

オーナー ネームはオプシ ョ ンであるため、ユーティ リ ティで使用するファイルにオーナー ネームが必要でない場

合もあ り ます。 オーナー ネームは大文字小文字を区別します。

概念と しては、 オーナー ネームはパスワードに似ています。 オーナー ネームは、 PCC で設定するこ とのできる、

ユーザー名やグループ名と同じではあ り ません。 たとえば、 オーナー ネームの "Master" はデフォルト ユーザー

の Master とは異なり ます。

短いオーナー ネームは半角 8 文字までの範囲で指定できます。 長いオーナー ネームは半角 24 文字までの範囲で

指定できます。 ただし、 長いオーナー ネームを指定した場合、 そのデータ ファ イルは Pervasive PSQL v10 SP1 より前のデータベース エンジンで読み取るこ とができないので注意してください。 また、長いオーナー ネームを使

用したデータ ファ イルは、v9.5 よ り前のファイル形式にリ ビルド しよ う とする場合、そのオーナー ネームを 初

に削除しておかないと リ ビルドするこ とができません。 オーナー ネームは、長いものでも短いものでも、 その

大長 (8 または 24 バイ ト ) に満たない部分は空白が埋め込まれます。

リ レーシ ョナル アクセスでは、 オーナー ネームの制限のあるテーブルを操作しよ う とする と ODBC エラーにな

り ます。たとえば、 PCC でテーブル名をダブルク リ ッ ク した り、 テーブルを削除しよ う とする場合です。 GRANTステート メン ト または SET OWNER ステート メン トでオーナー ネームを指定するこ とができます。

GRANT ステート メン ト を使用して、 特定のユーザーまたはグループにアクセス権を与え、 ODBC 経由でリ レー

シ ョナル アクセスするこ とができます。Master ユーザーは GRANT ステート メン トに正しいオーナー ネームを使

用する必要があ り ます。 『SQL Engine Reference』 の 「GRANT」 を参照して ください。

SET OWNER ステート メン ト を使用し、現在のデータベース接続中に使用するオーナー ネームを 1 つまたは複数

指定できます。 『SQL Engine Reference』 の 「SET OWNER」 を参照して ください。

オーナー ネームの作業

オーナー ネームは設定およびク リ アするこ とができます。

オーナー ネームを設定またはク リ アする

データ ファ イルへのアクセスを制限するためにオーナーネームを設定します。 アクセス制限を解除するために

オーナー ネームをク リ アします。

メ モ オーナー ネームを指定するには GRANT ステー ト メ ン ト を使用する こ と もできます。 『SQL EngineReference』 の 「オーナー ネーム」 を参照して ください。 PCC では現在、 ファ イルのセキュ リティ プロパティ

を介してオーナー ネームを指定する方法は提供していません。

オーナー ネームを設定またはク リ アするには

1 メニュー バーの [オプシ ョ ン|オーナー ネームの設定 / ク リ ア] をク リ ッ ク します。 [オーナー ネームの設

定 / ク リ ア] ダイアログが表示されます。

239

Page 256: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

図 26 [オーナー ネームの設定 / ク リ ア] ダイアログ

2 [MicroKernel フ ァ イル] ボッ クスで、オーナー ネームを設定またはク リ アするファ イルを指定します。オー

ナー ネームをク リ アする場合は、 [オーナー ネームのク リ ア] をク リ ッ ク し、 [現在のオーナー] フ ィール

ドにファイルのオーナー ネームを指定します。

3 オーナー ネームを設定する場合は、 [オーナー ネームの設定] をク リ ッ ク し、 [新しいオーナー] フ ィール

ドにファイルの新しいオーナー ネームを指定して、 その後、 希望するオプシ ョ ンを選択します。

[オーナー ネームな しの読み込み専用アクセスを許可する] を選択する と、 すべてのユーザーが、 デー

タ ファ イルへの読み込み専用アクセスを許可されます。

[フ ァ イルのデータ を暗号化する] を選択する と、デバッグ ユーティ リ ティやファイル ダンプ ユーティ

リ ティ を使用したデータへの不正アクセスを防ぐこ とができます。 暗号化や復号化の処理には若干の時

間を要するため、使用する環境でデータのセキュ リティが優先される場合にのみ、 このチェッ ク ボッ ク

スをオンにしてください。

[長いオーナー ネーム] を選択して、半角 24 文字までの範囲でオーナー ネームを作成します (短いオー

ナー ネームは半角 8 文字までの範囲で指定できます)。 長いオーナー ネームを指定した場合、 そのデー

タ ファ イルは Pervasive PSQL v10 SP1 よ り前のデータベース エンジンで読み取るこ とはできません。 また、長いオーナー ネームを使用したデータ ファ イルは、v9.5 よ り前のファイル形式にリ ビルド しよ う と

する場合、 そのオーナー ネームを 初に削除しておかないと リ ビルドするこ とができません。

4 [実行] をク リ ッ ク してオプシ ョ ンを適用します。

240

Page 257: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

情報レポー ト

情報レポー ト

ファ イル情報レポートの作成は、データベース エンジンの ト ランザクシ ョ ン一貫性保守機能でファイルのログを

作成できるかど うかを確認する際に便利です。 レポートは、 ファ イルにシステム データがあるかど うか、 キーが

ユニークであるかど うかを表示します (ユニーク キーには、重複が許可されているこ とを示す "D" フラグが付き

ません)。情報レポートはファイルのメ タデータを提供します。 この情報は、問題の解決に使用したり、 よ く似た

ファイルを作成するのに役立ちます。

情報レポー ト の作業

情報レポート を作成する手順を以下に示します。

既存データ フ ァ イルのフ ァ イル情報レポー ト を作成するには

1 メ イン ウ ィンド ウのメニューで、 [オプシ ョ ン|情報レポー ト の作成] をク リ ッ ク します。 Maintenance ユー

ティ リ ティに [フ ァ イル情報レポー ト ] ダイアログ ボッ クスが表示されます。

図 27 [フ ァ イル情報レポー ト ] ダイアログ ボ ッ クス

2 使用するデータ ファ イルとレポートのファ イル名を指定します。 作成後にレポート を表示する場合は、 [レ

ポー ト を表示する] チェ ッ ク ボッ クスをオンにします。

レポート を表示する設定にした場合、 次のよ うな [ファ イルの表示] ウ ィンド ウが表示されます。

図 28 フ ァ イル情報レポー ト の例

ファ イル情報レポートの情報ヘッダーは、「ファ イル情報エディ ター」 に記述されているファイル情報エディ

ターのコン ト ロールに対応しています。

ファ イル情報レポート下部の凡例には、 レポートのキー / セグメン トの部分で使用されている記号の説明が

表示されます。 この情報には、 キーやキー セグメン トの数、 ファ イル中のキーの位置、 キー長などが含まれ

ます。

File Statistics for person.mkd

File Version = 9.50Page Size = 4096Page Preallocation = NoKey Only = NoExtended = NoTotal Number of Records = 1500Record Length = 333 Record Compression = NoPage Compression = NoVariable Records = Yes

241

Page 258: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

凡例 :

< = Descending Order

D = Duplicates AllowedI = Case Insensitive

M = Modifiable

R = Repeat DuplicateA = Any Segment (Manual)

L = All Segments (Null)

* = The values in this column are hexadecimal.?? = Unknown

-- = Not Specified

242

Page 259: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

イ ンデ ッ クス

イ ンデ ッ クス

インデッ クスは、特定キーのすべてのキー値をソートするためのものです。 Btrieve アクセスではオーバーラ ップ

するインデッ クス (列の一部を含むインデッ クス) が許可されます。 ODBC を介した リ レーシ ョナル アクセスで

は、オーバーラ ップするインデッ クスは許可されません。[エディ ターの起動] ボタンをク リ ッ ク して表示できる

ファ イル情報エディ ターを使用して、 オーバーラ ップするインデッ クスを作成するこ とができます。

イ ンデッ クスの作業

インデッ クスに関連する以下の作業を行います。

「インデッ クスの作成」

「インデッ クスの削除」

イ ンデ ッ クスの作成

ファ イルにキーが定義されていない場合、 ファ イルのインデッ クスを作成するこ とはできません。 ファ イル情報

エディ ター (「ファ イル情報エディ ター」 を参照) を使用してキーを作成するこ とができます。

イ ンデ ッ クスを作成するには

1 メ イン メニューで、 [イ ンデ ッ クス|作成] をク リ ッ クする と、 [イ ンデ ッ クスの作成 ] ダイアログ ボッ ク

スが開きます。

図 29 [イ ンデ ッ クスの作成] ダイアログ ボ ッ クス

2 [イ ンデ ッ クスの作成] ダイアログ ボッ クスで以下のオプシ ョ ン設定を行います。

インデッ クスの種類 内部インデッ クス と外部インデッ クスのどちらを作成するかを指定します。 内部インデッ

クスは、 データ ファイルの一部と して動的に管理されます。 外部インデッ クスは、 必要に

応じて作成する別のファ イルとな り ます。

外部インデッ クスは、 指定したキーによってソート されたレコードを含む標準データ ファ

イルです。 各レコードは、 以下の項目から成り ます。

元のデータ ファ イルにおけるレコードの物理位置を識別する 4 バイ ト アドレス

キー値

データ ファイル インデッ クスを作成するデータ ファ イルの名前を指定します。

外部インデックス ファイル 外部インデッ クスに作成するファ イルの名前を指定します。 内部インデッ クスには使用で

きません。

243

Page 260: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

3 [エデ ィ ターの起動] をク リ ッ クする と、 [フ ァ イル情報エデ ィ ター] ダイアログ ボッ クスにキーの詳細情報

が表示されます。 [リ ス ト のリ フ レ ッ シ ュ] をク リ ッ ク して、 データ ファ イルからキー情報を読み込むと、

[デー タ フ ァ イルの既存キー番号] リ ス ト と [作成に使用するキー番号] リ ス ト を リ フレ ッシュできます。

インデッ クスを作成する前に [リ ス ト のリ フ レ ッ シュ] をク リ ッ ク して ください。

4 [イ ンデ ッ クスの作成] ダイアログ ボッ クスの設定完了後、 [実行] をク リ ッ ク してインデッ クスを作成しま

す。 インデッ クス作成の所要時間は、 ファ イルに含まれるデータの量によって異なり ます。

イ ンデ ッ クスの削除

インデッ クスを削除する前に、アプリ ケーシ ョ ン プログラムが行うアクセスについてよ く理解しておいてくださ

い。必要なインデッ クスがないと、 GET NEXT などの機能が動作しません。 その結果、 アプリ ケーシ ョ ン プログ

ラムは正常に機能しなくな り ます。

イ ンデ ッ クスを削除するには

1 メ イン メニューで、 [イ ンデ ッ クス|削除] をク リ ッ ク します。 [イ ンデ ッ クスの削除] ダイアログ ボッ クス

が表示されます。

図 30 [イ ンデ ッ クスの削除] ダイアログ ボ ッ クス

2 [イ ンデ ッ クスの削除] ダイアログ ボッ クスで以下のオプシ ョ ン設定を行います。

3 [リ ス ト のリ フ レ ッ シュ] をク リ ッ ク し、 指定したファイルからキー情報を読み込みます。

情報エディ ターで使用する

キー仕様番号

フ ァ イル情報エデ ィ ターで定義されたキー番号が表示されます。

データ ファ イルの既存キー

番号

[リ ス ト のリ フ レ ッ シュ] をク リ ッ クする と、 ファ イルに定義されているキー番号が表示さ

れます。 フ ァ イルにシステム定義のロ グ キーが含まれている場合は、 この リ ス ト に

SYSKEY が表示されます。

作成に使用するキー番号 [リ ス ト のリ フ レ ッ シ ュ] を ク リ ッ クする と、 フ ァ イルに定義されていない、 使用可能な

キー番号が表示されます。 インデッ クスの作成時に使用するキー番号を選択します。

ファ イルにシステム定義のログ キー (システム データ) が含まれ、 そのキーが削除されて

いる場合は、 リ ス トに SYSKEY が表示され、 それを選択するこ とによ り、 システム定義の

ログ キーをファ イルに再追加するこ とができます。

MicroKernel ファイル インデッ クスを削除するデータ ファイルの名前を指定します。

既存のキー番号 [リ ス ト のリ フ レ ッ シ ュ] を ク リ ッ クする と、 ファ イルに定義されているキー番号が表示されま

す。 削除するインデッ クスのキー番号を選択します。 ファ イルにシステム定義のログ キーが含ま

れている場合は、 リ ス トに SYSKEY が表示され、 それを選択するこ とによ り、 システム定義のロ

グ キーをファ イルから削除するこ とができます。

番号再割当て キーの番号を再割り当てします。 このチェ ッ ク ボッ ク スをオンにする と、 インデッ ク ス削除に

よって生じたキー番号の欠番がなくな り ます。

244

Page 261: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ

データ

[データ] メニューのコマンドを使用して、 データ ファ イルのレコードをインポート、 エクスポート、 およびコ

ピーするこ とができます。 また、 ロール フォワード機能を利用して、システム エラー発生後にデータを修復する

こ と も可能です。 ロール フォワードについては、 「ロール フォワード コマンド」 を参照してください。

ASCII フ ァ イル形式のイ ンポー ト と エクスポー ト

データを保存する と、ASCII ファ イルのレコードは、以下の形式になり ます。以下の仕様に従う こ とによ り、ASCIIテキス ト エディ ターを使用してロード可能なファイルを作成できます。多くのテキス ト エディ ターでは、バイナ

リ データを編集するこ とができないので注意してください。

初のフ ィールドは、 レコードの長さを指定する左揃えの整数 (ASCII 形式) です (この値の計算時、 行末

のキャ リ ッジ リ ターン / ライン フ ィードは無視します)。 このフ ィールドの値は、 データ ファ イルで指定さ

れているレコード長と同じにな り ます。

固定長レコードを含むファイルでは、 データ ファ イルのレコード長と同じ長さを指定します。

可変長レコードを含むファイルでは、 データ ファ イルの固定レコード長以上の長さを指定します。

長さフ ィールドの次に、 区切り文字 (カンマまたはスペース) が入り ます。

区切り文字の次に、 レコード データが続きます。 データの長さは、 長さフ ィールドで指定したバイ ト数と

まったく同じにします。テキス ト エディ ターを使用してインポート ASCII ファ イルを作成する場合は、各レ

コードが適切な長さになるよ うに、 必要に応じてスペースで埋めてください。

各行末には、キャ リ ッジ リ ターン / ライン フ ィード (16 進数の 0D0A) を使用します。Maintenance ユーティ

リ ティでは、 データ ファ イルにキャ リ ッジ リ ターン / ライン フ ィードが挿入されません。

ファ イルの 終行には、 ファ イル終了文字 (CTRL+Z または 16 進数の 1A) を使用します。 多くのテキス ト

エディ ターでは、 ファ イルの 後にこの文字が自動的に挿入されます。

図 31 は、入力 ASCII ファ イルのレコード形式です。 この例では、データ ファ イルに 40 バイ トのレコード長が定

義されています。

図 31 入力シーケンシャル フ ァ イルのレ コー ド形式

データに関する作業

以下のデータに関する作業は Maintenance ユーティ リ ティ を使用して行う こ とができます。

「ASCII データをインポートするには」

「ASCII レコードをエクスポートするには」

「MicroKernel データ ファ イル間でレコードをコピーするには」

後のバッ クアップからシステム エラーが発生する間に行った、 データ ファ イルへの変更の回復 (ロール

フォワード) の方法は、 「ログ、 バッ クアップおよび復元」 の章を参照して ください。

245

Page 262: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

ASCII フ ァ イルからのレ コー ドのイ ンポー ト

Maintenance ユーティ リ テ ィでは、 ASCII ファ イルから標準データ ファ イルにレコードをインポートするこ とが

できます。この処理では、データ変換は行われません。テキス ト エディ ター、または Maintenance ユーティ リ ティ

を使用してインポート ファ イルを作成するこ とが可能です ( 「ASCII ファ イルへのレコードのエスクポート 」 参

照)。

ASCII データ を イ ンポー ト するには

1 メ イン メニューで [データ|ロー ド] をク リ ッ ク します。 [データのロー ド] ダイアログ ボッ クスが表示さ

れます。

図 32 [データのロー ド] ダイアログ ボ ッ クス

指定する ASCII ファ イルは、 「ASCII ファ イル形式のインポート とエクスポート 」 で説明されている仕様に

従っている必要があ り ます。 指定する標準データ ファ イルのレコード長は、 ASCII ファ イル内のレコード と

適合している必要があ り ます。

2 [実行] をク リ ッ ク してレコードをインポート します。

データのインポート中は、 インポート されたレコードの数とパーセンテージ、およびステータス メ ッセージ

が表示されます。 このと き、 Maintenance ユーティ リ ティでは別の作業 (新しい [データのロー ド] ダイアロ

グ ボッ クスを開くなど) を続けるこ と もできます。

ASCII フ ァ イルへのレ コー ドのエスクポー ト

Maintenance ユーティ リ ティでは、 データ ファ イルから ASCII ファ イルにレコードをエクスポートするこ とがで

きます。

ASCII レ コー ド をエ クスポー ト するには

1 メ イン メニューで[データ|保存]をク リ ッ ク します。[データの保存]ダイアログ ボッ クスが表示されます。

図 33 [データの保存] ダイアログ ボ ッ クス

246

Page 263: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ

2 [データの保存] ダイアログ ボッ クスで、 以下のオプシ ョ ンを設定します。

3 [実行] をク リ ッ ク してデータをエクスポート します。 Maintenance ユーティ リ ティによって、 「ASCII ファ イ

ル形式のインポート とエクスポート 」 の形式に従って、指定された ASCII ファ イルが作成されます。その後、

この ASCII ファ イルを編集し、 [ロー ド] コマンドを使用して、 編集したテキス ト を別の標準データ ファ イ

ルにインポートできます。

データ フ ァ イル間のレ コー ドのコ ピー

Maintenance ユーティ リ ティでは、 MicroKernel データ ファ イルから別の MicroKernel データ ファ イルにデータを

コピーするこ とができます。 指定するデータ ファ イルの両方のレコード長は、 同じでなければなり ません。

MicroKernel データ フ ァ イル間でレ コー ド を コ ピーするには

1 メ イン メニューで、 [データ|コ ピー] をク リ ッ ク します。 [データのコ ピー] ダイアログ ボッ クスが表示さ

れます。

図 34 [データのコ ピー] ダイアログ ボ ッ クス

2 コピーするファイルの名前を [コ ピー元 MicroKernel フ ァ イル] ボッ クスに入力し、 ファ イルのコピー先の

パスを [コ ピー先 MicroKernel フ ァ イル] ボッ クスに入力します。

保存元 MicroKernel ファイル 保存する既存 MicroKernel 互換ファ イルの名前を指定します。

保存先シーケンシャル ファ イル 作成するシーケンシャル ファイルの名前を指定します。

インデッ クスを使用する エクスポートするレコードをソー トする際に、 指定したインデッ クスを使用します。

デフォルトでは、 Maintenance ユーティ リ ティでインデッ クスは使用されず、 レコード

はデータ ファ イル内の物理ポジシ ョ ンに従ってエクスポート されます。

内部イ ンデ ッ クス番号 :

指定したキー番号を使用します。 [保存元 MicroKernel フ ァ イル] ボッ クスのファ イル

を変更した場合は、 [イ ンデ ッ ク ス リ ス ト を リ フ レ ッ シ ュ] をク リ ッ ク して使用可能

なインデッ クスを更新します。

外部イ ンデ ッ クス フ ァ イル :

指定した外部インデッ クスを使用します (外部インデッ クスの作成は、「インデッ クス

の作成」 参照)。

方向 前方 : これがデフォルトの設定で、 データ回復がファ イルの先頭から末尾に向かって

行われます。

後方 : データ回復がファイルの末尾から行われます。

前方から後方 : エラーが発生するまで、 ファ イルを前方から読み込みます。 次に、 エ

ラーが発生したレコード、 または別のエラーが発生したレコード まで、 ファ イルを末

尾から読み込みます。

後方から前方 : エラーが発生するまで、 ファ イルを後方から読み込みます。 次に、 エ

ラーが発生したレコード、 または別のエラーが発生したレコード まで、 ファ イルを先

頭から読み込みます。

247

Page 264: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

指定するデータ ファ イルの両方のレコード長は、 同じでなければなり ません。

データ フ ァ イルへの変更の回復 (ロール フ ォワー ド)

「ログ、 バッ クアップおよび復元」 を参照して ください。

248

Page 265: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve コマン ド ラ イ ン Maintenance ユーテ ィ リ テ ィ (butil)

Btrieve コマン ド ラ イ ン Maintenance ユーテ ィ リ テ ィ (butil)このユーティ リ ティは、 コマンド ライン形式のインターフェイスを使用したい場合、 または Continuous オペレー

シ ョ ンを開始または停止したい場合に使用します。Btrieve Maintenance ユーティ リ ティは、サーバー上で(Windowsプラ ッ ト フォームの DOS プロンプ トから)、 またはローカルの DOS、 Linux および Windows ク ライアン トから、

コマンド ラ イン形式で使用するこ と もできます。Maintenance ユーティ リ ティのコマンドは、 コマンド ラインまた

は作成したコマンド ファ イルから実行するこ とができます。Btrieve Maintenance ユーティ リ ティのコマンド(butil)を実行する前に、 「コマンド」 で説明されている、 基本的な考え方と操作方法を理解しておく必要があ り ます。

Btrieve の コマンド ライン Maintenance ユーティ リ ティでは、 以下のファイル処理およびデータ処理を行います。

「データのインポート とエクスポート 」

「データ ファ イルの作成と変更」

「データ ファ イル情報の表示」

「Btrieve インターフェイス モジュールのバージ ョ ンの表示」

「Btrieve インターフェイス と リ クエスターのアンロード (DOS のみ)」

「Continuous オペレーシ ョ ンの実行」

リ ターン コー ド

butil が実行を完了する と、終了コードまたは DOS エラーレベルをオペレーティング システムに返します。リ ター

ン コードは以下のとおりです。

コ マン ド

次の表はコマンド ラ イン Maintenance ユーティ リ ティで使用できるコマンドの一覧です。

表 59 BUTIL のリ ターン コー ド

コー ド 説明

SUCCESS_E = 0 要求された処理は正常に終了しました。

PARTIAL_E = 1 要求された処理は完了しましたがエラーが発生しました。

INCOMPLETE_E = 2 要求された処理は正常に終了しませんでした。

USAGE_E = 3 入力の構文エラー。 使用方法を画面に表示し、 終了します。

表 60 コマン ド ラ イ ン Maintenance ユーテ ィ リ テ ィ コマン ド

コマン ド 説明

「CLONE」 既存ファ イルの仕様を使用して、 空の新規データ ファ イルを作成します。

「CLROWNER」 データ ファイルのオーナー ネームをク リ アします。

「COPY」 データ ファイルの内容を、 別のデータ ファイルにコピーします。

「CREATE」 データ ファイルを作成します。

「DROP」 インデッ クスを削除します。

「ENDBU」 バッ クアップを対象と して定義されたファ イルの Continuous オペレーシ ョ ンを停止します。

「INDEX」 外部インデッ クス ファイルを作成します。

「LOAD」 データ ファイルにシーケンシャル ファ イルの内容をロード します。

249

Page 266: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

コ マン ド構文の表示

各コマンドの使用方法を表示するには、 ファ イル サーバーで butil コマンドを入力します。

コ マン ド形式

Maintenance ユーティ リ ティのコマンド ラインは、 以下の形式になり ます。

butil [-command [parameter ...]] | @commandFile

コ マン ド フ ァ イル

コマンド ファ イルは、 以下の処理に使用します。

コマンド ラ インに収まらない、 長いコマンドの実行

頻繁に使用するコマンドの実行 (コマンド ファ イルに一度入力し、 その後はそのコマンド ファ イルを実行)

以下のコマンド形式を使用した、 コマンドの実行とその出力のファイルへの書き込み

butil @commandFile [commandOutputFile]

コマンドを実行する と、 結果の出力ファイルには、 実行したコマンド とその結果が表示されます。 すべての

メ ッセージは、 サーバーのコンソール画面にも表示されます。

複数コマンドの連続実行

コマンド ファ イルには、 コマンド ラインで必要な情報と同じものが含まれます。

「RECOVER」 データ ファ イルから連続的にデータを読み込み、 シーケンシャル ファ イルに結果を書き込みます。

(ただし DOS バージ ョ ンでは、 ROLLFWD は使用できません)。 破損したファイルがある場合は、 こ

のコマンドを使用します。

ROLLFWD 後のバッ クアップからシステム エラーが発生する間に行った、データ ファイルへの変更を回復し

ます。 「アーカイブ ログの使用」 を参照して ください。

「SAVE」 キー パスのデータを読み込み、 シーケンシャル ファ イルに結果を書き込みます。

「SETOWNER」 データ ファイルにオーナー ネームを割り当てます。

「SINDEX」 インデッ クスを作成します。

STARBU バッ クアップを対象と して定義されたファ イルの Continuous オペレーシ ョ ンを開始します。 「ログ、

バッ クアップおよび復元」 の章を参照して ください。

「STAT」 ファ イル属性の情報およびデータ ファイルの現在のサイズを表示します。

「STOP」 (DOS のみ) Btrieve インターフェイス と リ クエスターをアンロード します。

「VER」 サーバーにロード されているデータベース エンジンおよび Btrieve インターフェイス モジュールの

バージ ョ ンを表示します。

-command COPY などの Maintenance ユーティ リティのコマンドが入り ます。 コマンドの前にはハイフン (-)を付け、 ハイフンの前にはスペースを入力します。 表 60 はコマンドの一覧です。

parameter コマンドに必要な情報です。 詳細は各コマンドに応じて説明します。

@commandFile コマンド ファ イルのフル パス名

表 60 コマン ド ラ イ ン Maintenance ユーテ ィ リ テ ィ コマン ド

コマン ド 説明

250

Page 267: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve コマン ド ラ イ ン Maintenance ユーテ ィ リ テ ィ (butil)

コ マン ド フ ァ イルの規則

Maintenance ユーティ リ ティのコマンド ファ イルを作成する際、 以下の規則に従ってください。

1 つのパラ メーターを 2 行に分割しない。

各コマンドは、 <end> または [end] で終わる必要があ り ます。 複数のコマンドを実行する場合は、 各コマ

ンドが <end> で終わっている必要があ り ます。 <end> または [end] には、 小文字を使用します。

コ マン ド フ ァ イルの例

以下は、 コマンド ファ イルの例 COPYCRS.CMD です。 このファイルでは、BUTIL -CLONE コマンドを呼び出し、

COURSE.MKD ファ イルを複製するこ とによって NEWCRS.MKD ファ イルを作成します。 次に -CREATE コマン

ドを呼び出し、 NEWFILES.DES ディ スク リプシ ョ ン ファ イルのディ スク リプシ ョ ンを使用して NEWFILE.DTAファ イルを作成します。

-clone newcrs.mkd course.mkd <end>-create newfile.dta newfiles.des <end>

以下のコマンドでは、 COPYPATS.CMD ファイルを使用して COPYPATS.OUT ファイルに書き込みを行います。

butil @copypats.cmd copypats.out

デ ィ スク リ プシ ョ ン フ ァ イル

ディ スク リプシ ョ ン ファ イルは、データ ファ イルと インデッ クスの作成に使用するファイルのディ スク リプシ ョ

ンおよびキー仕様を含む、 ASCII テキス ト ファ イルです。 作成したファイルの情報を保存するための媒体と して

ディ スク リプシ ョ ン ファ イルを使用するこ と もできます。 ディ スク リプシ ョ ン ファ イル形式の詳細については、

「ディ スク リプシ ョ ン ファ イル」 を参照してください。

拡張フ ァ イルのサポー ト

データベース エンジンの データ ファ イルは、オペレーティング システムのファイル サイズ上限を超えた容量を

持つこ とが可能です。 データを、 MicroKernel の拡張ファ イルからシーケンシャル ファ イルにエクスポート した

際、 実際の形式の違いから、 そのシーケンシャル ファ イルの容量がデータベース エンジンのファイル サイズ上

限を超える場合があ り ます。

大きなサイズのファイルをエクスポートする際、 対話型 Maintenance ユーティ リ ティでは、 シーケンシャル ファ

イルがオペレーティング システムのファ イル サイズの上限 (2 GB) を超えているこ とを検出する と、 エクステ

ンシ ョ ン ファ イルの作成が開始されます。この処理は自動的に行われます。エクステンシ ョ ン ファ イルおよび元

のシーケンシャル ファ イルは、同じボ リ ューム内に存在する必要があ り ますエクステンシ ョ ン ファ イルの名前に

は、ベース ファ イルと似た名前を付ける方式が使用されます。エクステンシ ョ ン ファ イルを示すのに、ネイティ

ブな MKDE エクステンシ ョ ン ファ イルがキャレッ ト ("^") を使用するのに対し、 シーケンシャル ファ イルのエ

クステンシ ョ ン ファ イルはチルダ ("~") を使用するので、同じベース ファ イル名を持つ既存の MKDE 拡張ファ

イルを上書きするのを防ぎます。 初のエクスポー ト エクステンシ ョ ン ファ イルには、 ベース ファ イル名に

".~01" という拡張子が付きます。次のエクステンシ ョ ン ファ イルには、ベース ファ イル名に ".~02" という よ うに

拡張子が付けられます。 これらの拡張子は 16 進形式で追加されます。

名前付け規則は 255 までのエクステンシ ョ ン ファ イルをサポート しますが、現在のエクステンシ ョ ン ファ イルの

大数は 64 です。 したがって、 大ファイル サイズは 128 GB です。

サイズの大きなファイルをシーケンシャル ファ イルに 「SAVE」 または 「RECOVER」 する場合は、それぞれのコ

マンドを参照してください。 また、 シーケンシャル ファ イルからデータをインポートする場合は、 そのファイル

が拡張されているかど うかがチェッ ク され、 エクステンシ ョ ン ファ イルからデータがロード されます。

オーナー ネーム

MicroKernel では、 オーナー ネームを指定するこ とによ り、 ファ イルへのアクセスを制限する こ とができます。

オーナー ネームはオプシ ョ ンであるため、ユーティ リ ティで使用するファイルにオーナー ネームが必要でない場

合もあ り ます。

251

Page 268: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

短いオーナー ネームは半角 8 文字までの範囲で指定できます。 長いオーナー ネームは半角 24 文字までの範囲で

指定できます。 長いオーナー ネームを指定した場合、そのデータ ファ イルは Pervasive PSQL v10 SP1 よ り前のデー

タベース エンジンで読み取るこ とはできません。 また、長いオーナー ネームを使用したデータ ファ イルは、 v9.5よ り前のファイル形式にリ ビルド しよ う とする場合、そのオーナー ネームを 初に削除しておかないと リ ビルド

するこ とができません。 オーナー ネームは、長いものでも短いものでも、 その 大長 (8 または 24 バイ ト ) に満

たない部分は空白が埋め込まれます。

ファ イルにオーナー ネームが必要な場合は、 /O オプシ ョ ンを使用してオーナー ネームを指定します。 オーナー

ネームの指定は、 以下のいずれかの方法で行います。

1 つのオーナー ネーム

8 つまでのオーナー ネーム (オーナー ネームはカンマで区切る)

アスタ リ スク (*) オーナー ネームの入力を要求する メ ッセージが表示されます。 rollfwd コマンドでは、 複

数のオーナー ネームをカンマで区切って入力します。

オーナー ネームは大文字小文字を区別します。コマンド ラインでオーナー ネームを入力した場合、先頭のスペー

スは削除されます。 アスタ リ スクを使用した場合は、 先頭のスペースは削除されません。

エラー メ ッ セージのリ ダイ レ ク ト

エラー メ ッセージを リダイレク トする場合は、フル パス名(ド ラ イブ文字または UNC パスを含む)を入力します。

エラー メ ッ セージを フ ァ イルへリ ダイ レ ク ト するには

以下のコマンド形式を使用します。

butil -command commandParameters > filePath

ASCII フ ァ イル形式

「対話型 Maintenance ユーティ リ テ ィ」 セクシ ョ ンの、 「ASCII ファ イル形式のインポート とエクスポート 」 を参

照してください。

異なるプ ラ ッ ト フ ォームでのフ ァ イル名指定の規則

Windows ベースまたは Linux ベースのプラ ッ ト フォームで butil を使用する際、 データ ファ イルが現在のディ

レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

252

Page 269: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データのイ ンポー ト と エ クスポー ト

データのイ ンポー ト と エクスポー ト

このセクシ ョ ンでは、 butil コマンドの 「COPY」、 「LOAD」、 「RECOVER」、 および 「SAVE」 を使用したデータ

のインポートおよびエクスポートの詳細について説明します。

COPYCOPY コマンドは、 MicroKernel ファ イルの内容を、 別のファイルにコピーします。 COPY は、 入力データ ファ

イルの各レコードを取得して、出力データ ファ イルに挿入します。両ファイルのレコードのサイズは同じである

必要があ り ます。 レコードのコピー後、COPY によって新しいデータ ファ イルに挿入されたレコードの総数が表

示されます。

メ モ COPY は、 「RECOVER」 コマンド と 「LOAD」 コマンドに相当する処理を一度に実行します。

COPY コマンドを使用するこ とによ り、古いファイルからのデータ と新しいキー属性を持つデータ ファ イルを作

成できます。

MicroKernel データ フ ァ イルを コ ピーするには

1 「CREATE」 コマンドを使用し、任意のキー属性 (キー位置、 キー長、重複キー値) を持つ空のデータ ファ イ

ルを作成します。

または

「CLONE」 コマンドを使用して、 既存ファイルの属性を使った空のデータ ファ イルを作成します。

2 COPY コマンドを使用し、 既存データ ファ イルの内容を、 新し く作成したデータ ファ イルにコピーします。

形式

butil -copy sourceFile outputFile [/O< owner1 | *> [/O<owner2 | *>]] [/UIDuname /PWDpword [/DBdbname]]

表 61 データのイ ンポー ト と エ クスポー ト を行う コ マン ド

コマン ド 説明

「COPY」 データ ファイルの内容を、 別のデータ ファイルにコピーします。

「LOAD」 データ ファイルにシーケンシャル ファ イルの内容をロード します。

「RECOVER」 データ ファイルからシーケンシャルにデータを読み込み、 シーケンシャル ファ イルに結果を

書き込みます。

「SAVE」 キー パスのデータを読み込み、 シーケンシャル ファ イルに結果を書き込みます。

sourceFile レコードをコピーする元となるデータ ファイルのフル パス名。 Windows プラ ッ ト フォームで BUTILを使用する際、データ ファ イルが現在のディ レク ト リに存在する場合は、パスを指定する必要はあ り

ません。

outputFile レコードを挿入する先のデータ ファ イルのフル パス名。 出力データ ファイルにはデータが入ってい

ても空でもかまいません。 Windows プラ ッ ト フォームで BUTIL を使用する際、 データ ファイルが現

在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

/Oowner1 ソース データ ファイルのオーナー ネーム (必要な場合)。 出力データ ファイルのみでオーナー ネー

ムが必要な場合は、 /O に続けて owner1 にスペースを指定します (使用例を参照して ください)。

/Oowner2 出力データ ファイルのオーナー ネーム (必要な場合)。

253

Page 270: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

以下のコマンドは、 COURSE.MKD のレコードを NEWCRS.MKD にコピーします。 COURSE.MKD 入力ファイル

に、 オーナー ネームは必要あ り ませんが、 NEWCRS.MKD 出力ファイルでは、 オーナー ネーム Pam が使用され

ています。

butil -copy course.mkd newcrs.mkd /O /OPam

この例から 初の /O を省略した場合、オーナー ネーム Pam は、出力データ ファ イルではなく、入力データ ファ

イルのものと して認識されます。

LOADLOAD コマンドは、入力 ASCII ファ イルのレコードをファ イルに挿入します。入力 ASCII ファ イルは、1 つのファ

イルまたは拡張ファ イル (ベース ファ イルと複数のエクステンシ ョ ン ファ イル) のどちらでもかまいません。

LOAD コマン ドでは、 入力 ASCII ファ イルのデータは変換されません。 データ ファ イルへのレコード移動後、

ロード されたレコードの総数が表示されます。

メ モ LOAD コマンドは、 アクセラレイティ ド モードで出力ファイルを開きます。 ロー ド オペレーシ ョ ン中

は、 ファ イルのログは作成されません。 アーカイブ ログを使用している場合は、 LOAD コマン ド使用後に

データ ファ イルを再度バッ クアップします。

拡張フ ァ イル : 次のエクステンシ ョ ン ファ イルが検出された場合は、 ロードが継続されます。 SAVE コマン

ドおよび RECOVER コマンドで作成してあるエクステンシ ョ ン ファ イルは、 削除しないでください。 ファ

イルに 3 つのエクステンシ ョ ン ファ イルが存在し、ユーザーが 2 つ目のエクステンシ ョ ン ファ イルを削除し

た場合は、 1 つ目のエクステンシ ョ ン ファ イル処理後に、 レコードのロー ドが中止されます。

SAVE または RECOVER コマンドによ り作成されたエクステンシ ョ ン ファ イルは 3 つなのに、 4 つ目のエ

クステンシ ョ ン ファ イルが以前の SAVE または RECOVER コマンドで作成されて存在している場合、 4 つ目のエクステンシ ョ ン ファ イルからもレコードが読み込まれ、 データベース エンジン ファ イルに挿入され

ます。 4 つ目のエクステンシ ョ ン ファ イルが存在する場合は、 LOAD 開始前に削除してください。

LOAD コマンド実行前には、入力 ASCII ファ イルおよびデータ ファ イルを作成する必要があ り ます。入力 ASCIIファ イルは、 標準のテキス ト エディ ターやアプ リ ケーシ ョ ンを使用して作成できますが、 そのファ イル形式

( 「ASCII フ ァ イル形式のイ ンポー ト と エ ク スポー ト 」 参照) に従 う 必要があ り ます。 データ フ ァ イル

は、「CREATE」 コマンドまたは 「CLONE」 コマンドを使用して作成できます。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ ティが設定されたデータベース名を指定します。 省略した場合はデフォルトのデータベース

と解釈されます。

254

Page 271: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データのイ ンポー ト と エ クスポー ト

形式

butil -load unformattedFile outputFile [/O<owner |*>] [/UIDuname /PWDpword [/DBdbname]]

以下の例では、 シーケンシャル レコードを COURSE.TXT から COURSE.MKD に読み込みます。 COURSE.MKDのオーナー ネームは Sandy です。

butil -load course.txt course.mkd /oSandy

RECOVERRECOVER コマンドは、 MicroKernel ファ イルからデータを取り出し、 「LOAD」 コマンドで使用する入力 ASCIIファ イルと同じ形式の ASCII ファ イルに書き込みます。 これは、 破損した MicroKernel ファ イルから、 一部また

は全部のデータを取り出すと きに便利です。 RECOVER コマン ドは、 すべてではないにしても、 ファ イルのレ

コードの多数を取り出すこ とができます。 この後は、 LOAD コマンドを使用し、 新しい MicroKernel ファ イルに

回復したレコードを挿入します。

メ モ Maintenance ユーティ リ ティでは、 レコードのデータは変換されないため、 テキス ト エディ ターを使用

してバイナリ データを含む出力ファイルを編集する場合、 テキス ト エディ ターによってはバイナリ データ

が変更されてしまい、 予期しない問題が発生する場合があ り ます。

形式

butil -recover sourceFile unformattedFile [/O<owner |*>] [/Q] [/J] [/I] [/UIDuname /PWDpword [/DBdbname]]

unformattedFile データ フ ァ イルにロードするレコード を含む ASCII フ ァ イルのフル パス名。 Windows プラ ッ ト

フォームでは、 データ ファ イルが現在のディ レク ト リ に存在する場合は、 パスを指定する必要はあ

り ません。

outputFile レコードを挿入する先のデータ ファイルのフル パス名。Windows プラ ッ ト フォームで BUTIL を使用

する際、データ ファ イルが現在のディ レク ト リに存在する場合は、パスを指定する必要はあ り ません。

/Oowner データ ファ イルのオーナー ネーム (必要な場合)。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ ティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベース

と解釈されます。

sourceFile 回復するデータを含むデータ ファ イルのフル パス名。Windows プラ ッ ト フォームで BUTIL を使用す

る際、 データ ファ イルが現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

unformattedFile 回復したレコードを保存する ASCII ファ イルのフル パス名。

/Oowner データ ファイルのオーナー ネーム (必要な場合)。

255

Page 272: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

ソース ファ イルの各レコードでは、 RECOVER コマンドで可変ページ エラー (ステータス コード 54) が発生し

た場合、現在のレコードから取得できるすべてのデータをシーケンシャル ファ イルに書き込み、回復処理を継続

します。

ユーティ リ ティでは、 以下のメ ッセージが表示されます。

後に作成されたエクステンシ ョ ン ファ イルの名前に関する情報が表示されます。

次のエクステンシ ョ ン ファ イルの存在をチェッ ク し、 存在する場合、 削除が指示されます。

拡張シーケンシャル ファ イルを移動した場合、 ベース ファ イルとその全エクステンシ ョ ン ファ イルの移動

が指示されます。

以下の例では、 COURSE.MKD からレコードを取り出し、 COURSE.TXT に書き込みます。

butil -recover course.mkd course.txt

SAVESAVE コマンドは、 指定したインデッ クス パスを使用して MicroKernel ファ イルからデータを読み込み、 LOADコマン ドで使用する形式に対応した ASCII ファ イルに書き込みます。 その後、 その ASCII ファ イルを編集し、

LOAD コマンドを使用して編集後のデータを、 別のデータ ファ イルに保存するこ とができます。 ASCII ファ イル

形式の詳細については、 「ASCII ファ イル形式のインポート とエクスポート 」 を参照してください。

SAVE は、 入力データ ファ イルの各レコードに対して、 出力 ASCII ファ イルにレコードを 1 つ作成します。 完了

後、 SAVE によって保存されたレコードの総数が表示されます。

/Q 既存のシーケンシャル ファ イルに上書きするかど うかを指定します。 デフォルトでは、 既存のファ

イルに上書きされます。このオプシ ョ ン使用時に同名のファ イルが存在する場合は、エラー メ ッセー

ジが表示されます。

また、 回復の対象となるデータベース エンジン ファ イルが拡張されているかど うかがチェッ ク され

ます。 ファ イルが拡張されている場合は、 存在する可能性のあるエクステンシ ョ ン ファ イルと同名

のファイルが存在するかど うかもチェッ ク されます。 このいずれかのファイルが存在する場合は、エ

ラー メ ッセージが表示されます。

/J フ ァ イルを後方から読み込みます。 このオプシ ョ ンを使用し た場合は、 STEP LAST と STEPPREVIOUS オペレーシ ョ ンを使用してデータベース エンジン ファ イルのデータ回復が行われます。

デフォルトでは、 STEP FIRST と STEP NEXT オペレーシ ョ ンを使用してファイルの先頭からデータ

が読み込まれます。

/I ファ イルを前方から読み込みます。デフォルトでは、前方から読み込まれますが、 このオプシ ョ ンを

使用して前方および後方を指定するこ とができます。 /I および /J の両方を指定した場合は、エラーが

発生するまで前方からファイルが読み込まれます。次に、発生したエラーまで、 または別のエラーが

発生するまで、 ファ イルを 後から読み込みます。

/J を 初に指定した場合は、 まず後方から、 次に前方から読み込みます。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ ティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベース

と解釈されます。

256

Page 273: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データのイ ンポー ト と エ クスポー ト

メ モ Maintenance ユーティ リ ティでは、 レコードのデータは変換されないため、 テキス ト エディ ターを使用

してバイナリ データを含む出力ファイルを編集する場合、 テキス ト エディ ターによってはバイナリ データ

が変更されてしまい、 予期しない問題が発生する場合があ り ます。

形式

butil -save sourceFile unformattedFile [Y indexFile | N <keyNumber | -1>] [/O<owner1 | *> [/O<owner2 | *>]] [/Q] [/J] [/I] [/UIDuname /PWDpword [/DBdbname]]

sourceFile 保存するレコードを含むデータ ファイルのフル パス名。 Windows プラ ッ ト フォームで BUTIL を使

用する際、 データ ファイルが現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ま

せん。

unformattedFile レコードを保存する ASCII ファイルのフル パス名。

indexFile デフォルトの設定である 小キー番号を使用してレコードを保存しない場合、 レコードを保存する

外部インデッ クス ファイルのフル パス名。

keyNumber デフォルトの設定である 小キー番号を使用してレコードを保存しない場合、 レコードを保存する

キー番号 (0 以外)。

-1 Btrieve Step オペレーシ ョ ンを使用して、物理的順序に従ってレコードを保存する場合に指定します。

/Oowner1 ソース ファ イルのオーナー ネーム (必要な場合)。 インデッ クス ファ イルのみでオーナー ネームが

必要な場合は、 /O に続けて owner1 にスペースを指定します。

/Oowner2 インデッ クス ファ イルのオーナー ネーム (必要な場合)。

/Q 既存のシーケンシャル ファ イルに上書きするかど うかを指定します。 デフォルトでは、 既存のファ

イルに上書きされます。このオプシ ョ ン使用時に同名のファイルが存在する場合は、エラー メ ッセー

ジが表示されます。

また、保存の対象となるデータベース エンジン ファイルが拡張されているかど うかがチェッ ク され

ます。 ファ イルが拡張されている場合は、 存在する可能性のあるエクステンシ ョ ン ファ イルと同名

のファ イルが存在するかど うかもチェッ ク されます。このいずれかのファ イルが存在する場合は、エ

ラー メ ッセージが表示されます。

/J ファイルを後方から読み込みます。このオプシ ョ ンを使用した場合は、GET LAST と GET PREVIOUSオペレーシ ョ ンを使用してデータベース エンジン ファ イルのデータ回復が行われます。デフォルト

では、 GET FIRST と GET NEXT オペレーシ ョ ンを使用してファ イルの保存が行われます。

/I ファ イルを前方から読み込みます。 デフォルトでは、 前方から読み込まれますが、 このオプシ ョ ン

を使用して前方および後方を指定するこ とができます。/I および /J の両方を指定した場合は、エラー

が発生するまで前方からファイルが読み込まれます。次に、発生したエラーまで、または別のエラー

が発生するまで、 ファ イルを 後から読み込みます。

/J を 初に指定した場合は、 まず後方から、 次に前方から読み込みます。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ テ ィが設定されたデータベース名を指定します。 省略した場合はデフォルトのデータベー

ス と解釈されます。

257

Page 274: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

ユーティ リ ティでは、 以下のメ ッセージが表示されます。

後に作成されたエクステンシ ョ ン ファ イルの名前に関する情報が表示されます。

次のエクステンシ ョ ン ファ イルの存在をチェッ ク し、 存在する場合、 削除が指示されます。

拡張シーケンシャル ファ イルを移動した場合、 ベース ファ イルとその全エクステンシ ョ ン ファ イルの移動

が指示されます。

以下の 2 つの例は、 SAVE コマンドを使用した、 データ ファ イルからのレコード取得方法です。

この例では、 NEWCRS.IDX 外部インデッ クス ファ イルを使用して COURSE.MKD からレコードを取得し、 それ

らを COURSE.TXT という名前のシーケンシャル テキス ト ファ イルに保存します。

butil save course.mkd course.txt newcrs.idx

この例では、 キー番号 3 を使用して COURSE.MKD からレコードを取得し、 それらを COURSE.TXT という名前

のシーケンシャル テキス ト ファ イルに保存します。

butil -save course.mkd course.txt n 3

258

Page 275: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの作成と変更

データ フ ァ イルの作成と変更

このセクシ ョ ンでは、 「CLONE」、 「CLROWNER」、 「CREATE」、 「DROP」、 「INDEX」、 「SETOWNER」、 および

「SINDEX」 といった各種 BUTIL コマンドを使用した、 データ ファ イルの作成と変更に関する詳細について説明

します。 またこのセクシ ョ ンでは、 「Btrieve データ ファ イルのコンパク ト化」 で、 Btrieve データ ファ イルの未使

用スペース削除に関して詳細に説明します。

注意 同じディレク ト リに、ファ イル名が同一で拡張子のみが異なるよ うなファ イルを置かないでください。

たとえば、同じディ レク ト リ内のデータ ファ イルの 1 つに Invoice.btr、 も う 1 つに Invoice.mkd という名前を

付けてはいけません。 このよ う な制限が設けられているのは、 データベース エンジンがさまざまな機能で

ファイル名のみを使用し、 ファ イルの拡張子を無視するためです。 ファ イルの識別にはファイル名のみが使

用されるため、 ファ イルの拡張子だけが異なるファイルは、データベース エンジンでは同一のものである と

認識されます。

CLONECLONE コマンドは、 既存ファ イルと同じファ イル仕様 (オーナー ネームを含まず、 補足インデッ クスを含む)

を持つ、空の新規ファイルを作成します。 新しいデータ ファ イルには、 既存ファイルのすべての定義済みキー属

性 (キー位置、 キー長、 重複キー値など) が含まれます。

CLONE コマンドでは、 ファ イル情報 (「システム データ」 参照) に影響する MicroKernel 設定オプシ ョ ンのすべ

てが無視されます (ファ イル バージ ョ ンを除 く )。 CLONE コマンドは、 [作成フ ァ イルのバージ ョ ン] オプシ ョ

ンで指定したデータベース エンジンのファイル バージ ョ ンを使用して新規ファイルを作成します。

形式

butil -clone outputFile sourceFile [/O<owner | *>] [/pagecompresson | /pagecompressoff] [/recordcompresson | /recordcompressoff] [/UIDuname /PWDpword [/DBdbname]] [/S]

表 62 データ フ ァ イルの作成と変更を行う コマン ド

コ マン ド 説明

「CLONE」 既存ファイルの仕様を使用して、 空の新規データ ファ イルを作成します。

「CLROWNER」 データ ファイルのオーナー ネームをク リ アします。

「CREATE」 データ ファイルを作成します。

「DROP」 インデッ クスを削除します。

「INDEX」 外部インデッ クス ファ イルを作成します。

「SETOWNER」 データ ファイルにオーナー ネームを割り当てます。

「SINDEX」 インデッ クスを作成します。

outputFile 空の新規データ ファイルに使用するフル パス名。Windows プラ ッ ト フォームで BUTIL を使用する際、

データ ファイルが現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

sourceFile 複製する既存データ ファ イルのフル パス名。Windows プラ ッ ト フォームで BUTIL を使用する際、デー

タ ファ イルが現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

259

Page 276: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

備考

Btrieve 6.0 以降では、 ページ サイズが 1,024 バイ トのデータ ファ イルで 大 23 のキー セグメン ト を使用するこ

とができるため、 CLONE コマンドでは、 既存データ ファ イルに 24 のキー セグメン トが含まれ、 ページ サイズ

が 1,024 バイ トの場合、 新規データ ファ イルのページ サイズは 2,048 バイ トに設定されます。 これは、 既存デー

タ ファ イルがバージ ョ ン 6.0 よ り前の形式で、 データベース エンジン ロードの際に、 「作成フ ァ イルのバージ ョ

ン」 オプシ ョ ンが 5.x または 6.x に設定されていない場合に発生します。

バージ ョ ン 7.x 以前のファイルを複製する場合は、作成する新規ファイルのバージ ョ ン設定を確認して ください。

たとえば、 6.15 ファ イルを 9.5 形式で複製する場合は、 [作成フ ァ イルのバージ ョ ン] オプシ ョ ンを 9.5 に設定し

ます。

メ モ ソース ファ イルがシステム データを含まない 8.x 以上の形式の場合は、 データベース エンジンの設定

にかかわらず、出力ファイルにもシステム データは含まれません。既存ファイルへのシステム データの追加

については、 『Getting Started with Pervasive PSQL』 を参照してください。

ステータス コード 30 (指定されたファイルは MicroKernel ファ イルではあ り ません) が発生し、 ソース ファ イル

のヘッダー ページが破損している可能性がある場合、ディ スク リプシ ョ ン ファ イルで 「CREATE」 コマンドを使

用して新規の MicroKernel ファ イルを作成します。

以下のコマンドは、 COURSE.MKD ファ イルを複製して NEWCRS.MKD ファ イルを作成します。

butil -clone newcrs.mkd course.mkd

CLROWNERCLROWNER コマンドは、 MicroKernel ファ イルのオーナー ネームをク リ アします。

/Oowner ソース データ ファ イルにオーナー ネームが割り当てられている場合は、 そのオーナー ネーム。 新規

データ ファイルには、 オーナー ネームは含まれません。詳細については、 「オーナー ネーム」 を参照

して ください。

/pagecompresson outputFile のページ圧縮をオンにする と、 以下の条件が設定されます。

Pervasive PSQL データベース エンジンのバージ ョ ンは Pervasive PSQL 9.5 以上

作成ファ イルのバージ ョ ン設定は 0950 (9.5) 以上。 「作成ファ イルのバージ ョ ン」 を参照してく

ださい。

/pagecompressoff outputFile のページ圧縮をオフにします。 このパラ メーターは、 sourceFile にページ圧縮が指定されて

いない場合は無効です。

/recordcompresson outputFile のページ圧縮をオンにします。

/recordcompressoff outputFile のレコード圧縮をオフにします。 このパラ メーターは、 sourceFile にレコード圧縮が指定さ

れていない場合は無効です。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベース

と解釈されます。

260

Page 277: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの作成と変更

形式

butil -clrowner sourceFile </O<owner | *> [/UIDuname /PWDpword [/DBdbname]]

以下のコマンドは、 TUITION.MKD のオーナー ネームをク リ アします。 このファ イルのオーナー ネームは Sandyです。

butil -clrowner tuition.mkd /OSandy

CREATECREATE コマンドは、 ディ スク リプシ ョ ン ファ イルで指定されている属性を使用して、 空の MicroKernel ファ イ

ルを作成します。CREATE コマンドを実行する前に、新しいキー属性を指定するディ スク リプシ ョ ン ファ イルを

作成します。 詳細については、 「ディ スク リプシ ョ ン ファ イル」 を参照してください。

形式

butil -create outputFile descriptionFile [< Y | N >] [/UIDuname /PWDpword [/DBdbname]]

sourceFile データ ファ イルの完全なフル パス名。 Windows プラ ッ ト フォームで BUTIL を使用する際、 データ

ファ イルが現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

/Oowner ク リ アするオーナー ネーム詳細については、 「オーナー ネーム」 を参照してください。

/UID<name>

/UIDunameセキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>

/PWDpworduname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>

/DBdbnameセキュ リ ティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベース

と解釈されます。

outputFile 作成するデータベース エンジン ファ イルのフル パス名。ファ イル名が既存の MicroKernel ファ イルと

同名の場合、 既存ファイルの代わりに空の新規ファ イルが作成されます。 既存ファ イルに保存されて

いるデータは消去され、 回復するこ とができません。 Windows プラ ッ ト フォームで BUTIL を使用す

る際、 データ ファ イルが現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

descriptionFile 新規 MicroKernel ファ イルの仕様を含むディ スク リプシ ョ ン ファ イルのフル パス名。

Y | N 既存のフ ァ イルに上書きするかど う かを指定し ます。 このオプシ ョ ンに N を指定し、 同名の

MicroKernel ファ イルが存在する場合は、 エラー メ ッセージが表示されます。 デフォル ト設定は、 Yです。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ ティが設定されたデータベース名を指定します。 省略した場合はデフォルトのデータベース

と解釈されます。

261

Page 278: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

以下のコマン ド は、 CREATE.DES デ ィ ス ク リ プシ ョ ン フ ァ イルで定義された内容を使用し、 フ ァ イル

COURSE.MKD を作成します。

butil -create course.mkd create.des

CREATE コ マン ド で使用するデ ィ スク リ プシ ョ ン フ ァ イルの例 図 35 の例では、 MicroKernel 形式のファイルが作成されます。 ファ イルのページ サイズは 512 バイ ト 、 キーは 2つに設定されています。 ファ イルの各レコードの固定長部は 98 バイ ト に設定されています。 このファイルでは、

可変長レコードがブランク ト ランケーシ ョ ン、 レコード圧縮、 可変長部割り当てテーブル (VAT) を使用しない

よ うに指定されています。 空きスペース スレッシ ョルドは、 20 パーセン トに設定されています。 プ リ アロケー

シ ョ ンは、 100 ページに設定されています。 ファ イル作成時に、 100 ページつま り 51,200 バイ トがプリ アロケー

ト されます。

図 35 CREATE コマン ド で使用するデ ィ スク リ プシ ョ ン フ ァ イルの例

キー 0 は、重複可能で変更不可能な文字列セグメン ト を 2 つ含むセグメン ト キーで、この 2 つのセグメン トには、

16 進数で 20 (スペース) のヌル値が指定されています。 キー 0 では、 コレーティング シーケンス upper.alt が使

用されます。

キー 1 は、重複不可能で変更可能な数値型のセグメン ト化されていないキーです。これは、降順でソート されます。

DROPDROP コマンドは、 ファ イルからインデッ クスを削除し、 それ以降のキー番号から 1 を引く こ とによって、 残り

のインデッ クスのキー番号を調整します。 キーの番号を調整しない場合は、 削除に指定したキー番号に 128 を加

算します。 この調整は、 6.0 以降のファイルでのみ使用可能です。

形式

butil -drop sourceFile < keyNumber | SYSKEY > [/O<owner | *>] [/UIDuname /PWDpword [/DBdbname]]

sourceFile インデッ クスを削除するファ イルのフル パス名。Windows プラ ッ ト フォームで BUTIL を使用する際、

データ ファ イルが現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

keyNumber 削除するキー番号。 元のキー番号を維持する場合は、 指定したキー番号に 128 とい うバイアス値を足

します。

record=98 variable=y truncate=n compress=ykey=2 page=512 allocation=100 replace=nfthreshold=20 vats=y

position=1 length=5 duplicates=ymodifiable=n type=string alternate=ynullkey=allsegs value=20 segment=y

position=6 length=10 duplicates=ymodifiable=n type=string alternate=ynullkey=allsegs value=20 segment=n

position=16 length=2 duplicates=nmodifiable=y type=numeric descending=ynullkey=n segment=n

name=c:\myacsfiles\upper.alt

フ ァ イル仕様

キー 0セグメ ン ト 1

キー 0セグメ ン ト 2

キー 1

262

Page 279: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの作成と変更

以下の例では、 COURSE.MKD に 3 つのキーが存在します。 ファ イルの元のキーは、 それぞれの番号が 0、 1、 2となっています。

初の例では、 butil -drop コマンドで、COURSE.MKD からキー番号 1 を削除し、残りのキー番号をそれぞれ 0 と1 に調整します。

butil -drop course.mkd 1

以下の例では、 butil -drop コマンドでキー番号 1 を削除し、 キー番号の調整は行いません。 キー番号は、 それぞ

れ 0 と 2 のままになり ます。

butil -drop course.mkd 129

INDEXINDEX コマンドは、 既存ファイルでキーと して指定されていないフ ィールドに基づき、 既存 MicroKernel ファ イ

ルの外部インデッ クス ファ イルを構築します。INDEX コマンドを実行する前に、新しいキー属性を指定するディ

スク リプシ ョ ン ファ イルを作成します。 ディ スク リプシ ョ ン ファ イルの詳細については、 「ディ スク リプシ ョ ン

ファ イル」 を参照してください。

新規ファイルのレコードは、 以下から構成されます。

既存データ ファ イルに含まれる各レコードの 4- バイ トのアドレス

ソートの基準と して使用する新しいキー値

メ モ ディ スク リプシ ョ ン ファ イルで指定したキー長が 10 バイ トの場合、 外部インデッ クス ファ イルのレ

コード長は 14 バイ ト (10 + 4- バイ ト アドレス) にな り ます。

SYSKEY システム定義のログ キー (システム データ) を削除します。 システム定義のログ キーを削除した場

合でも、 レコードから値は消去されず、 新し く挿入されたレコードには、 重複しないシステム定義の

ログ キー値が割り当てられます。

しかし、 重複しないユーザー定義のキーが存在しない限り、 システム定義のログ キーが削除された

ファイルのログは実行されません。 この理由から、システム定義のログ キーが破損している可能性が

あ り、 再追加する場合にのみ、 このオプシ ョ ンを使用してください。

SINDEX コマンドを使用する と、 削除したシステム定義のログ キーを再利用できます。

/Oowner ファイルのオーナー ネーム (必要な場合)。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ ティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベース

と解釈されます。

263

Page 280: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

形式

butil -index sourceFile indexFile descriptionFile [/O<owner | *>] [/O<owner | *>] [/UIDuname /PWDpword [/DBdbname]]

備考

INDEX コマンドは、 外部インデッ クス ファ イルを作成し、 インデッ クスが設定されたレコードの数を表示しま

す。外部インデッ クス ファ イルを使用して、データ ファ イルのレコードを読み込む場合は、 「SAVE」 コマンドを

使用します。

INDEX コ マン ド で使用するデ ィ スク リ プシ ョ ン フ ァ イルの例

以下のディ スク リプシ ョ ン ファ イルでは、 1 つのセグメン ト を含む新しいキーを定義します。 キーは、 レコード

の 30 バイ ト目から始ま り、 10 バイ トの長さを持ちます。 また、 重複と変更が可能な STRING 型で、 オルタネー

ト コレーティング シーケンスを使用しません。

図 36 INDEX コマン ド で使用するデ ィ スク リ プシ ョ ン フ ァ イルの例

以下のコマンドは、データ ファ イル COURSE.MKD を使用し、外部インデッ クス ファ イル NEWCRS.IDX を作成

します。 COURSE.MKD には、 オーナー ネームは必要あ り ません。 新しいキーの定義を含むディ スク リプシ ョ ン

ファ イルは、 NEWCRS.DES とい う名前です。

butil -index course.mkd newcrs.idx newcrs.des

SETOWNERSETOWNER コマンドは、 データ ファ イルのオーナー ネームを設定します。

sourceFile 外部イ ンデッ ク スを構築する既存フ ァ イルの完全なフル パス名。 Windows プラ ッ ト フ ォームで

BUTIL を使用する際、 データ ファ イルが現在のディ レク ト リに存在する場合は、 パスを指定する必

要はあ り ません。

indexFile 外部インデッ クスを保存するインデッ クス ファ イルのフル パス名。

descriptionFile 新しいキー定義を含む、作成したディ スク リプシ ョ ン ファ イルのフル パス。ディ スク リプシ ョ ン ファ

イルには、 新しいキーの各セグメン トに対する定義が含まれている必要があ り ます。

/Oowner データ ファイルのオーナー ネーム (必要な場合)。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベース

と解釈されます。

264

Page 281: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの作成と変更

形式

butil -setowner sourceFile /O<owner | *> level [/L] [/UIDuname /PWDpword [/DBdbname]]

以下の例では、 course.mkd データ ファ イルの短いネームのオーナーを作成します。オーナー ネーム Sandy に制限

レベル 1 を設定します。

butil -setowner course.mkd /OSandy 1

以下の例では、 billing.mkd データ ファ イル用の長いオーナー ネームを作成し、 そのオーナー ネームとファ イル

を暗号化し、 すべてのアクセス モードを制限します。

butil -setowner billing.mkd /Ohr#Admin$945k7YY%svr 2 /L

SINDEXSINDEX コマンドは、 既存 MicroKernel ファ イルに追加インデッ クスを作成します。 デフォルトでは、 新規イン

デッ クスのキー番号は、データ ファ イルでそれまで 大だったキー番号よ り 1 つ大きな番号になり ますが、 キー

番号を指定するこ と も可能です。 例外と して、 DROP コマンドでインデッ クスを削除し、 残りキー番号の調整を

行わなかった場合は、 未使用のキー番号が存在するため、 新しいインデッ クスに 初の未使用番号が割り当てら

れます。

キー番号オプシ ョ ンを使用するこ とによ り、新規インデッ クスのキー番号を指定できます。指定するキー番号は、

ファ イルで使用されていない有効なキー番号でなければなり ません。 無効なキー番号を指定した場合は、 ステー

タス コード 6 が返されます。

sourceFile データ ファイルのフル パス名。 Windows プラ ッ ト フォームで BUTIL を使用する際、 データ ファ イ

ルが現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

/Oowner 設定するオーナー ネーム

level データ ファイルのアクセス制限の種類。 以下は、 このパラ メーターの説明です。

level は /O パラ メーターの直後に置く必要があ り ます。

0: すべてのアクセス モードでオーナー ネームが必要 (データ暗号化なし)

1: リード オン リー アクセスにはオーナー ネームは必要なし (データ暗号化なし)

2: すべてのアクセス モードでオーナー ネームが必要 (データ暗号化あ り)

3: リード オン リー アクセスにはオーナー ネームは必要なし (データ暗号化あ り)

/L 長いオーナー ネームを指定します。

オーナー ネームでは大文字と小文字が区別されます。 また、 短いものと長いものがあ り ます。 短い

オーナー ネームは半角 8 文字までの範囲で指定できます。 長いオーナー ネームは半角 24 文字まで

の範囲で指定できます。 長いオーナー ネームに関する制限事項については、 『Btrieve API Guide』 の

「Set Owner (29)」 で 「手順」 を参照して ください。

/UID<name>/UIDuname

セキュ リ ティが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず

指定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ ティが設定されたデータベース名を指定します。 省略した場合はデフォルトのデータベー

ス と解釈されます。

265

Page 282: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

このコマンドで SYSKEY オプシ ョ ンを使用しない場合は、 SINDEX コマンドを使用する前に、 インデッ クスの

キー仕様を定義するディ スク リプシ ョ ン ファ イルを作成する必要があ り ます。ディ スク リプシ ョ ン ファ イルの詳

細については、 「ディ スク リプシ ョ ン ファ イル」 を参照してください。

形式

butil -sindex sourceFile <descriptionFile | SYSKEY> [keyNumber] [/O<owner | *>] [/O<owner | *>] [/UIDuname /PWDpword [/DBdbname]]

以下の例では、 COURSE.MKD にイ ンデッ ク ス を追加し ます。 デ ィ ス ク リ プシ ョ ン フ ァ イルの名前は、

NEWIDX.DES です。

butil -sindex course.mkd newidx.des

以下の例では、 システム定義キーが削除された COURSE.MKD にシステム定義キーを追加します。

butil -sindex course.mkd syskey

Btrieve データ フ ァ イルのコ ンパク ト 化

BUTIL では、複数のコマンド (「CLONE」、 「RECOVER」、 「LOAD」) を使用してデータ ファ イルの未使用スペー

スを削除し、 ファ イル サイズを縮小するこ とができます。

Btrieve データ フ ァ イルを コ ンパク ト 化するには

1 データ ファ イルの名前を変更し、 「CLONE」 オプシ ョ ンを使用して元のファイルと同名の空のデータ ファ イ

ルを作成します。

2 「RECOVER」 を使用し、 複製したファイルのデータを、 シーケンシャル テキス ト ファ イルに保存します。

3 「LOAD」 を使用し、 回復されたデータを複製ファイルにロード します。

空のレコード以外のデータを含むすべてのレコードは、 新し く作成したデータ ファ イルにロード されます。

(この処理は、 対話型 Maintenance ユーティ リ ティ を使用して実行するこ と もできます)。

sourceFile 外部インデッ クスを構築する既存ファイルの完全なフル パス名。Windows プラ ッ ト フォームで BUTILを使用する際、データ ファイルが現在のディ レク ト リに存在する場合は、パスを指定する必要はあ り

ません。

descriptionFile 新しいキー定義を含む、作成したディ スク リプシ ョ ン ファ イルのフル パス。ディ スク リプシ ョ ン ファ

イルには、 新しいキーの各セグメン トに対する定義が含まれている必要があ り ます。

SYSKEY システム キーが削除されたファ イルに、 システム キーを再追加します。

/Oowner データ ファ イルのオーナー ネーム (必要な場合)。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ ティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベース

と解釈されます。

266

Page 283: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イル情報の表示

データ フ ァ イル情報の表示

このセクシ ョ ンでは、 STAT を使用した、 データ ファ イルの特性と情報を含むレポートの作成について説明しま

す。

STATSTAT コマンドは、 定義されているデータ ファ イルの特性、 およびファイルの内容に関する情報を含むレポート

を作成します。 STAT コマンドは、 データベース エンジンの ト ランザクシ ョ ン一貫性保守機能によってファイル

のログを作成できるかど うかを確認する際に便利です。 STAT コマンドでは、 Create Supplemental Index オペレー

シ ョ ン (Btrieve 6.0 以降) および Create オペレーシ ョ ンのいずれで作成されたかに関わらず、 同じインデッ クス

が表示されます。

形式

butil -stat <sourceFile> [/O<owner | *>] [/O<owner | *>] [/UIDuname /PWDpword [/DBdbname]]

以下の例では、 PATIENTS.DTA のファイル情報を表示します。 データ ファ イルには、 オーナー ネームは含まれ

ません。

butil -stat patients.dta

以下は、 結果レポートの例です。

**************************************************File Statistics for PATIENTS.DTA

File Version = 8.00Page Size = 2048Page Preallocation = NoKey Only = NoExtended = No

Total Number of Records = 16Record Length = 104Record Compression = NoVariable Records = No

Available Linked Duplicate Keys = 0Balanced Key = NoLog Key = 1 System Data = No

sourceFile 情報を表示するデータ ファ イルのフル パス名。 Windows プラ ッ ト フォームでは、 データ ファイルが

現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

/Oowner データ ファイルのオーナー ネーム (必要な場合)。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ ティが設定されたデータベース名を指定します。 省略した場合はデフォルトのデータベース

と解釈されます。

267

Page 284: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

Total Number of Keys = 3Total Number of Segments = 4

Key Segment Position Length Type FlagsNull Values* Unique ACS Values0 1 21 20 String MD-- 16 00 2 7 12 String MD-- 16 01 1 1 6 String M-- 16 02 1 83 10 String MD-- 7 0

Alternate Collating Sequence (ACS) List: 0 UPPER

凡例 : < = Descending Order D = Duplicates Allowed I = Case Insensitive M = Modifiable R = Repeat Duplicate A = Any Segment (Manual) L = All Segments (Null) * = The values in this column are hexadecimal.?? = Unknown-- = Not Specified

この例では、 ファ イル PATIENTS.DTA が、 8.0 形式のファ イルである こ とを表しています (バージ ョ ン番号は、

そのファイル形式を読むこ とができる Btrieve の一番古いバージ ョ ン)。 ファ イルには、 2,048 バイ トのページ サイズが指定されており、 プ リ アロケート ページはあ り ません。 これは、 キー オン リー ファ イルでも拡張ファイ

ルでもあ り ません。

このファ イルには 16 件のレコードが挿入されています。 また、 104 バイ トのレコード長が定義されており、 レ

コード圧縮は使用せず、 可変長レコード も許可されていません。

このファイルには、 リ ンク可能な重複キーは存在せず、 インデッ クス バランスも使用しません。 キー 1 を使用し

たログが実行され、 ファ イルには、 システム定義のデータも存在しません。 また、 4 つのキー セグメン トから構

成される 3 つのキーが存在します。

メ モ 「SINDEX」 で作成したインデッ クスには、 「予約重複ポインター」 要素を指定しない限り、デフォルト

で R が割り当てられます。

STAT レポートには、 特定のキーに関する情報も表示されます。 たとえば、 キー 0 が、 重複可能、 変更可能であ

り、 2 つのセグメン トから構成されるこ とが、 レポートに表示されます。

初のセグメン トはポジシ ョ ン 21 から始ま り、 長さが 20 バイ ト 、 重複可能、 変更可能、 そして STRING 型と して保存されます。 ハイフンは、 ヌル値が定義されていないこ とを表します。 Unique Values の列は、 16 個の重複しない値がセグメン トに挿入されているこ とを表しています。 このセグメン トでは、オルタネート コレーティング シーケンス ファ イル upper.alt が使用されます。

2 つ目のセグメン トはポジシ ョ ン 7 から始ま り、長さが 12 バイ ト 、重複可能、変更可能、 そして STRING 型と して保存されます。 16 個の重複しない値が、 このセグメン トに挿入されています。 このセグメン トでは、

オルタネート コレーティング シーケンス ファ イル upper.alt が使用されます。

キー 1 は、 このファイルのログに使用されるキーです。 キー 1 は、 1 つのセグメン トで構成されます。 ポジシ ョ

ン 1 から始ま り、 長さが 6 バイ ト、 重複不可、 変更可能、 そして STRING 型と して保存されます。 16 個の重複し

268

Page 285: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イル情報の表示

ないキー値が、 このキーに挿入されています。 このキーでは、 オルタネート コレーティング シーケンス ファ イ

ル upper.alt が使用されます。

キー 2 は、 1 つのセグメン トで構成されます。 ポジシ ョ ン 83 から始ま り、 長さが 10 バイ ト、 重複可能、 変更可

能、そして STRING 型と して保存されます。7 個の重複しないキー値が、 このキーに挿入されています。 このキー

では、 オルタネート コレーティング シーケンス ファ イル upper.alt が使用されます。

フ ァ イル バージ ョ ンに関する注意

ファ イル形式のバージ ョ ンをレポートする際、データベース エンジンは指定したファイルを読むこ とのできる

も古いエンジンのバージ ョ ンを出力します。 たとえば、 Btrieve 5.x 形式で作成されたファイルがあっても、 4.x と5.x の機能を一切使用していないのであれば、 レポートにはバージ ョ ン 3.x ファ イルと出力されます。 6.x 形式で

始めるには、 ファ イル自体にバージ ョ ン スタンプを含める必要があ り ます。 6.x よ り前のバージ ョ ンでは、 ファ

イル バージ ョ ンを調べる唯一の方法は、 ファ イルが使用している機能を調べるこ とです。 バージ ョ ン 5.x 以前の

ファイルで、 使用されているかど うかによってレポートに出力されるバージ ョ ンを決定する機能を次の表に示し

ます。

表 63 バージ ョ ン 5.x 以前のフ ァ イル形式の機能

レポー ト に出力される

フ ァ イル バージ ョ ン

... これらの機能の 1 つ以上が使用されている場合

5.x 圧縮レコード

キー オン リー ファ イル

4.x 拡張キー タイプ

可変長レコード

CreateIndex オペレーシ ョ ンで追加されたインデッ クス

3.x 上記のいずれも使用していない

269

Page 286: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

Btrieve イ ン ターフ ェ イス モジュールのバージ ョ ンの表示

このセクシ ョ ンでは、 VER コマンドを使用した、 Btrieve インターフェイス モジュールのバージ ョ ンの表示に関

して詳細に説明します。

VERVER コマンドは、データベース エンジンおよび Btrieve アクセス モジュールの両方のバージ ョ ン番号を表示しま

す。

形式

butil -ver

備考

VER コマンドを実行した場合、 以下のよ うなメ ッセージが表示されます (Windows NT)。

Btrieve リ クエスターのバージ ョ ンは 10.00 です。Btrieve のバージ ョ ンは 10.00 で、 xxx 版です。

270

Page 287: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Btrieve イ ン ターフ ェ イス と リ ク エス ターのアンロー ド (DOS のみ)

Btrieve イ ン ターフ ェ イス と リ クエス ターのアンロー ド (DOS のみ)

STOPSTOP コマンドは、 Btrieve インターフェイスおよびリ クエスターをアンロード します。

形式

butil -stop

271

Page 288: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

Continuous オペレーシ ョ ンの実行

Continuous オペレーシ ョ ンに関連するコマンド startbu および endbu については、 「ログ、 バッ クアップおよび復

元」 で説明しています。

272

Page 289: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

アーカ イブ ログの使用

アーカ イブ ログの使用

Btrieve Maintenance ユーティ リ ティ (GUI またはコマンド ラインの BUTIL) は、 アーカイブ ログ ファ イルをデー

タ ファ イルにロール フォワードする手段を提供します。「ログ、バッ クアップおよび復元」 を参照して ください。

BUTIL ROLLFWD コマンドは、 後のバッ クアップからシステム エラーが発生する間に行った、 データ ファ イ

ルへの変更を回復します。 システム エラーが発生した場合は、 データ ファ イルのバッ クアップ コピーを復元し

た後、 BUTIL ROLLFWD コマンドを使用し、 ログに保存されているすべての変更を復元したデータ ファ イルに

適用します。 バッ クアップからデータ ファ イルを復元しない限り、 このコマンドを使用しないでください。

メ モ ROLLFWD コマンドを利用するには、 MicroKernel の [選択フ ァ イルのアーカ イブ ロギング] オプシ ョ

ンを有効にし、 システム エラー発生前にファイルのバッ クアップを行う必要があ り ます。

また、ROLLFWD コマンドを使用し、ログ オペレーシ ョ ンの出力ファイルを作成するこ と も可能です。ROLLFWDコマンドでは、 ロール フォワード前、 またはロール フォワード と同時に出力ファイルを作成できます。

単一のファイルをロール フォワードするこ と もできますし、ボ リ ューム上のすべてのデータ ファ イル、 ド ライブ

上のすべてのデータ ファ イル、 もし くは、 ファ イル、 ボ リ ュームおよび / またはド ライブのリ ス ト をロール フォ

ワードするこ と もできます。

GUI の使用

1 オペレーティング システムの [ス ター ト ] メニューまたはアプ リ画面から、 あるいは Pervasive PSQL ControlCenter の [ツール] メニューから Maintenance ユーティ リ ティにアクセスします。

2 [Btrieve Maintenance ユーテ ィ リ テ ィ ] ウ ィ ンド ウで、 [データ|ロール フ ォワー ド] を選択します。 [ロー

ル フ ォワー ド] ダイアログ ボッ クスが表示されます。

図 37 [ロール フ ォワー ド] ダイアログ

3 オペレーシ ョ ン タイプと して、 " 単一ファイル "、 " ファ イルのリ ス ト "、 " ボ リ ューム名 "、 " ド ラ イブ レター " のいずれかを選択します。 " ボ リ ューム名 " または " ド ラ イブ レター " を選択する場合は、 名前の

後に円記号 (\) またはスラ ッシュ (/) を挿入する必要があ り ます (例、 \\server\vol1\ または D:\ など)。

4 ロール フォワード タスクの実行に必要なすべての Btrieve オペレーシ ョ ンのリ ス トである、ダンプ ファ イル

と呼ばれるログ ファ イルを作成するこ とができます。

273

Page 290: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

デフォルトでは、 このファ イルは作成されません。 ファ イルを作成する場合は、 [ダンプ フ ァ イルを作成す

る] チェ ッ ク ボッ クスをオンにします。 以下のオプシ ョ ンも設定可能です。

メ モ 実行する Btrieve オペレーシ ョ ンに対して、 キー バッファーまたはデータ バッファーが入力パラ メー

ターでない場合、 ダンプ ファ イルには何も書き込まれません。

5 [実行] をク リ ッ ク し、 ダンプ ファ イルの作成やロール フォワードを実行します。 データが有効な場合は、

[ロール フ ォーワー ド ステータ ス] ダイアログ ボッ クスが表示されます。

図 38 [ロール フ ォワー ド ステータ ス] ダイアログ ボッ クス

処理されたファイルは、 リ ス ト ボッ クスに追加され、 ファ イル名、 およびロール フォワード オペレーシ ョ

ンから返される Pervasive PSQL ステータス コードが表示されます。

処理中にエラーが発生した場合は、 エ ラー時のロール フ ォワー ド 続行を指定できるダイアログ ボッ クスが

表示されます。 このダイアログ ボッ クスでは、 このダイアログを再表示するこ とな く処理を継続するか、処

理を継続して必要な場合にこのダイアログを再表示するか、 またはファイル処理の中断を選択できます。

表 64 ロール フ ォワー ド GUI オプシ ョ ン

ダンプ ファイルの作成のみ ダンプ ファイルのみが作成され、 ロール フォワードは実行されません。

ダンプ ファイル名 これには、 円記号 (\) またはスラ ッシュで始まるダンプ ファ イル名が含まれ、 ド ラ イブ

文字、 サーバー名またはボ リ ューム名は含まれません。

データ バッファー長 各 Btrieve オペレーシ ョ ンで、 ダンプ ファ イルに書き込まれるデータ バッファーのバイ ト

数を表します。

キー バッファー長 各 Btrieve オペレーシ ョ ンで、 ダンプ ファ イルに書き込まれるキー バッファーのバイ ト数

を表します。

16 進で数値を表示 このオプシ ョ ンを選択した場合は、ダンプ ファ イル出力の数が 16 進形式で表示されます。

このオプシ ョ ンを選択しない場合、 数は十進形式で表示されます。

詳細 ユーザー名、 ネッ ト ワーク アドレス、 タ イムスタンプなど、 ダンプ ファ イルの補足情報

が含まれます。

274

Page 291: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

アーカ イブ ログの使用

図 39 エラー時のロール フ ォワー ド続行を指定するダイアログ ボッ クス

コ マン ド ラ イ ンの使用

このセクシ ョ ンでは、 ロール フォワードをコマンド ラインで使用する構文を説明します。

butil -rollfwd <sourceFile | drive | @listFile> [</L[dumpFile] | /W[dumpFile]> [/T<dataLength>] [/E<keyLength>] [/H] [/V] [/O<ownerList | owner>|*]][/A] [/UID<name> <PWD<word>> [DB<name>]]

sourceFile 変更をロール フォワードするデータ ファイルのフル パス名。Windows プラ ッ ト フォームでは、デー

タ ファ イルが現在のディ レク ト リに存在する場合は、 パスを指定する必要はあ り ません。

drive 変更をロール フォワードする ド ラ イブ文字。 ボ リ ューム名の 後には、 円記号 (\) またはスラ ッ

シュ (/) を使用します (例 : F:\、 F:/)。

listFile 変更をロール フォワードするファ イルのパス、 ボ リ ューム、 ド ラ イブを含む、 テキス ト ファイルの

フル パス名。 これらのパスは、 キャ リ ッジ リ ターン / ラ イン フ ィードで区切り ます。 エラーが発生

した場合は、 現在のファ イルのロール フォワードが中断されますが、 その時点までの変更はロール

バッ ク されます。 /A オプシ ョ ンを指定した場合は、 次のファ イルからロール フォワードが継続され

ます。

/LdumpFile ロール フォワードを実行せず、 出力ファ イルを作成します。

/WdumpFile ロール フォワードを実行し、 出力ファ イルを作成します。

dumpFile ログ オペレーシ ョ ンが書き込まれる出力ファ イルの名前。デフォルトは \BLOG\BROLL.LST で、物

理ド ライブのルートに関連付けられます。 ファ イル名は、 スラ ッシュ (/) または円記号 (\) で始ま

り、 ド ラ イブ文字やボ リ ューム名は使用しません。 ファ イルは、 BLOG.CFG と同じボ リ ュームに配

置されます。

/TdataLength 出力ファ イルに書き込む、 オペレーシ ョ ンのデータ バッファーの長さを指定します。 このオプシ ョ

ンを指定しない場合は、 出力ファ イルにデータ バッファーの内容が含まれません。

/EkeyLength 出力ファ イルに書き込む、 オペレーシ ョ ンのキー バッファーの長さを指定します。 このオプシ ョ ン

を指定しない場合は、 出力ファイルにキー バッファーの内容が含まれません。

/H 出力ファ イルの数値表示を 16 進数形式にします。 このオプシ ョ ンを指定しない場合、 出力ファ イル

の数値は ASCII 形式で表示されます。このオプシ ョ ンは、エン ト リ数、オペレーシ ョ ン コー ド、キー

番号、 データ長の各フ ィールドの形式に影響します。

/V 出力ファ イルに、 補足情報 (ユーザー名、 ネッ ト ワーク アドレス、 タイム スタンプなど) が追加さ

れます。

/O データ ファ イルのオーナー ネームを指定します (必要な場合) 。 ログに記録したオペレーシ ョ ンの

出力ファ イルを リ クエス ト し、 データ ファ イルのバッ クアップ コピーに リード オン リー アクセス

用のオーナー ネームが存在する場合に、 オーナー ネームが必要になり ます。

2 つ以上のファ イルにオーナー ネームがある場合は、 それぞれのオーナー ネームはカンマで区切る

必要があ り ます。 詳細については、 「オーナー ネーム」 を参照してください。

275

Page 292: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Maintenance を使用し た Btrieve データ フ ァ イルの操作

メ モ 実行する Btrieve オペレーシ ョ ンに対して、 キー バッファーまたはデータ バッファーが入力パラ メー

ターでない場合、 ダンプ ファ イルには何も書き込まれません。

例 A 次の例は、 CLASS.MKD ファ イルに、 デフォルトのアーカイブ ログおよびログ ロケーシ ョ ンから変更を回

復します。

butil -rollfwd file_path\PSQL\Demodata\class.mkd

Pervasive PSQL ファ イルのデフォルトの保存場所については、 『Getting Started with Pervasive PSQL』 の 「PervasivePSQL ファ イルはどこにインス トールされますか?」 を参照してください。

例 B この例では変更を回復し、 それらを以下のオプシ ョ ンを使用して d:\ ボ リ ュームのすべてのファイルに出力

します。

デフォルトのダンプ ファ イル使用

書き込むデータバッファーの長さを 32 バイ トに設定

書き込むキー バッファーの長さを 4 バイ トに設定

16 進モードで書き込み

butil -rollfwd d:\ /W /H /T32 /E4

例 C 以下の例では、 ロール フォワードは実行されず、以下のダンプ オプシ ョ ンに従って、 files.txt にリ ス ト

されているファ イルへの変更が出力されます。

d:\temp\files.lst をダンプ ファ イルと して使用

追加情報を書き込む

データ ファ イルにはオーナー ネーム own123 および own321 が含まれる

データ バッファーやキー バッファーは出力しない

butil -rollfwd d:\temp\files.txt /L\temp\files.lst /V /Oown123,own321

/A 複数ファ イルのロール バッ ク中にエラーが発生した場合、 次のファイルからロール フォワードを継

続します。

このオプシ ョ ンを指定しない場合は、 エラー発生時にロール フォワードが中断され、 その時点まで

の変更はロール バッ ク されません。

メ モ : /A オプシ ョ ンを使用した場合は、出力をファ イルにリダイレク トできます。「エラー メ ッセー

ジのリダイレク ト 」 および 「コマンド ファイル」 の説明を参照して ください。

/UID<name>/UIDuname

セキュ リ テ ィが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

/PWD<word>/PWDpword

uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず指

定する必要があ り ます。

/DB<name>/DBdbname

セキュ リ テ ィが設定されたデータベース名を指定します。 省略した場合はデフォル トのデータベー

ス と解釈されます。

276

Page 293: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

14

データ フ ァ イルの変換

Pervasive PSQL ファ イル互換性を維持する

Pervasive PSQL には、Pervasive PSQL ファ イルを、Pervasive PSQL エンジンの 新バージ ョ ンで利用できるよ うに

する変換するツールがあ り ます。 この章では、 これらのツールの概要、 その使用目的と使用方法を説明します。

以下の項目について説明します。

「Rebuild ユーティ リ ティの概念」

「Rebuild ユーティ リ ティ の GUI のリ ファレンス」

「Rebuild ユーティ リ ティの作業」

277

Page 294: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

Rebuild ユーテ ィ リ テ ィ の概念

Rebuild ユーティ リ ティ を使用する と、 MicroKernel ファ イル (データ ファ イルと辞書ファイル) に対して以下の

操作を行う こ とができます。

旧ファイル形式を新しい Pervasive PSQL 形式に変換する

新しいファイル形式を 6.x 形式よ り古くない形式に変換する

同じファイル形式 (6.x、 7.x、 8.x または 9.x) を使用してファイルを リ ビルドする

ファ イルにインデッ クスを追加する

ファイルのページ サイズを変更する

ファ イルを リ ビルド してシステム データ とキーまたはキーなしのシステム データを含める

Rebuild で使用するログ ファ イルの場所と名前を指定する

データベースで辞書ファイル (DDF) を使用している場合は、 データ ファ イルだけでなく これらも リ ビルドする

必要があ り ます。

データ ファ イルのリ ビルドの概念についてよ り理解を深めるため、 以下のセクシ ョ ンをお読みください。

「サポート されるプラ ッ ト フォーム」

「ファ イル形式」

「コマンド ライン パラ メーター」

「テンポラ リ ファ イル」

「Rebuild 処理の 適化」

「ログ ファ イル」

Rebuild ユーティ リ ティの使用についての情報は、 以下のセクシ ョ ンを参照してください。

「Rebuild ユーティ リ ティ の GUI のリ ファレンス」

「Rebuild ユーティ リ ティの作業」

「CLI 操作」

サポー ト されるプ ラ ッ ト フ ォーム

Rebuild には 2 つの様式があ り ます。 1 つは Windows 用の 32 ビッ ト GUI バージ ョ ンで、 も う 1 つは Linux および

Windows 用のコマンド ライン バージ ョ ンです。 「Rebuild ユーティ リ ティ の GUI のリ ファレンス」 および 「CLI操作」 を参照してください。

Linux CLI Rebuild

Rebuild は Linux では rbldcli というプログラムと して実行されます。 デフォルトでは、 このプログラムは /usr/local/psql/bin にあ り ます。

Windows CLI Rebuild

Rebuild は Windows では rbldcli.exe とい うプログラム と して実行されます。 これらのファ イルはデフォル ト で、

Program Files ディ レク ト リにインス トールされます。

278

Page 295: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Rebuild ユーテ ィ リ テ ィ の概念

フ ァ イル形式

現在のデータベース エンジンはいくつかの古いデータ形式や辞書ファイル形式と互換性を保っていますが、 新

の機能を利用するためにファイルを 新の形式に変換したい場合があ り ます。 次の表に、 旧形式から新しい形式

に変換する主な理由を挙げます。

コマンド ラ インの Rebuild ユーティ リ ティ を使用してできたファイル形式は、 -f パラ メーターによって異なり ま

す。 -f パラ メーターを指定しないと、 Rebuild は MicroKernel の [作成ファ イルのバージ ョ ン] 設定オプシ ョ ン

に指定されている値を使用します。 たとえば、 [作成ファイルのバージ ョ ン] の値が 8.x の場合、 バージ ョ ン 7.xのファイルに対して Rebuild ユーティ リ ティ を実行する と、 このファ イルは バージ ョ ン 8.x の形式に変換されま

す。 「作成ファイルのバージ ョ ン」 および -f パラ メーターを参照してください。

Rebuild ユーティ リ ティ を実行する前に、 変換するデータ ファ イルをすべてバッ クアップしておく こ とをお勧め

します。 これは、 元のファイルと同じ場所にリ ビルドする場合には特に重要です (この場合リ ビルド されたファ

イルは元のファイルを置き換えます)。 バッ クアップ コピーを取っておけば、 必要な場合に元のファイルを復元

するこ とができます。 バッ クアップを確実に実行するためには、 以下のいずれかの操作を行います。

バッ クアップ ユーティ リ ティ を実行する前にすべてのデータ ファ イルを閉じます。

Continuous オペレーシ ョ ンを使用します (バッ クアップ中のみ)。

メ モ Continuous オペレーシ ョ ン モードになっているファ イルで Rebuild ユーティ リ ティ を実行するこ とはで

きません。

テンポラ リ フ ァ イル

Windows では、 Rebuild は TMP システム環境変数で指定されたディ レク ト リにテンポラ リ ファ イルを作成しま

す。 デフォル トで、 Linux では Rebuild は出力ディ レク ト リ (-b パラ メーターが使用されていない場合はソース

ディ レク ト リ ) にテンポラ リ ファ イルを作成します。このため、テンポラ リ ファ イル ディ レク ト リには元のファ

イルと新しいファ イルの両方を格納するために十分なディ スク容量が必要です (Rebuild ユーティ リ テ ィの実行

中)。 Rebuild GUI バージ ョ ンの [出力ディ レク ト リ ] オプシ ョ ンを使用するか、 CLI バージ ョ ンの -B オプシ ョ ン

を使用して、 これらのファイルを別のディ レク ト リに保存するよ うに指定できます。

表 65 Rebuild ユーテ ィ リ テ ィ による変換

変換前のフ ァ イル

形式

変換後のフ ァ イル

形式

変換の理由

9.0 9.5 120 個以上のセグメン ト キーと 大 256 GB のファ イル サイズ。

8.x 9.x 大 128 GB のファ イル サイズのサポートの追加。

8.x 8.x ファ イルから削除レコードのスペースを除去する、 ページ サイズを変更する、

またはシステム データを追加する。

v8.x よ り前 8.x 書き込み (Insert、Update、Delete) パフォーマンスの向上(Turbo Write Acceleratorによっても実現)。

7.x 7.x 変換前のファイルには、 システム キーがない。

v7.x よ り前 7.x バージ ョ ン 7.x の機能の利用および全般的なパフォーマンスの向上。

v6.0 よ り前 6.x バージ ョ ン 6.x の機能の利用および全般的なパフォーマンスの向上。 バージ ョ

ン 6.x のエンジンと バージ ョ ン 7.x のエンジンが共に稼動している場合にのみ、

このオプシ ョ ンを使用します。

279

Page 296: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

通常、変換が終了する とテンポラ リ ファ イルは自動的に削除されます。 ただし、 停電などの重大な障害が発生し

た場合は、 テンポラ リ ファ イルが削除されないこ とがあ り ます。 このよ うな場合は、以下のタイプのテンポラ リ

ファ イルを削除してください。

Rebuild 処理の 適化

Rebuild はデータベース エンジンに Btrieve 呼び出しを行います。 したがって、データベース エンジン環境設定お

よびお使いのコンピューター上のランダム アクセス メモ リ (RAM) の量がリ ビルド処理のパフォーマンスに影

響を与えます。 このこ とは、特にサイズの大きなデータ ファ イルを リ ビルドする際の所要時間を見れば明らかで

す。

一般的に、 インデッ クスを構築するのはデータ ページを構築するよ りはるかに時間がかかり ます。 インデッ クス

を多数持つデータ ファ イルがある場合、同じファ イルでインデッ クスが少ないものに比べ、 ファ イルを構築する

のによ り多くの時間を要します。

リ ビルドの処理時間には以下の項目が影響します。

「CPU 速度およびディ スク速度」

「メモ リ量」

「ソート バッファー サイズ」

「MicroKernel の 大メモ リ使用量」

「キャ ッシュ割当サイズ」

「インデッ クス ページ サイズ」

「インデッ クス数」

CPU 速度およびデ ィ スク速度

CPU (中央処理装置) の速度および物理ス ト レージ ディ スクへのアクセス速度が、 リ ビルドの処理時間に影響し

ます。 一般的に、 これらの両方の速度が速いほど リ ビルド処理も速く行われます。 ディ スク速度は、 メモ リに全

体が入り きらない大きなファイルのリ ビルドではよ り重要になり ます。

ヒ ン ト 3 GB または 4 GB 以上などの大きなサイズのファイルでは変換に数時間かかる場合があ り ます。 複

数のデータベース エンジンが使用できる場合、 リ ビルド処理をいくつかのマシンの CPU 間で分担したいと

考えるでし ょ う。 たとえば、すべてのファイルの中からいくつかずつをデータベース エンジンがインス トー

ルされている各マシンにコピーし、 リ ビルド処理が終わったらファ イルをコピーして元に戻します。

メ モ リ量

Rebuild では、 デフォルトの方法と も う 1 つの方法の 2 つの方法を用いてファ イルを リ ビルドするこ とができま

す。「-m<0 | 2>」 パラ メーターを参照してください。選択する方法は、使用できる メモ リの量によって決ま り ます。

デフォルトの方法 (-m2) では、 利用可能なメモ リがあれば、 Rebuild は以下の手順を行います。

1 元のファイルに定義されているのと同じレコード構造と インデッ クスを持つ空のデータ ファ イルを新規作

成します。

2 新しいファイルからすべてのインデッ クスを削除します。

3 新しいファイルにインデッ クスなしですべてのデータをコピーします。

プ ラ ッ ト フ ォーム テンポラ リ フ ァ イル名

Linux _rbldxxxxxx、 こ こで、 xxxxxx はランダムな 6 個の文字です。 注意 : Rebuild 実行モジュールである

rbldcli を削除しないよ うにして ください。

Windows _rbldx、 x は 数字です。

280

Page 297: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Rebuild ユーテ ィ リ テ ィ の概念

4 以下の処理でインデッ クスを追加します。

a. 元のファイルの特定のキーについて、 Extended Step オペレーシ ョ ンを使用してメモ リ バッファーにで

きるだけ多くのキー値を読み込みます。

b. メモ リ バッファーの値をソート し、 ソート された値をテンポラ リ ファ イルに書き出します。

c. 手順 a および b を繰り返し、 各レコードのキー値を処理します。

これで、 テンポラ リ ファ イルにはいくつかのキー値が設定されました。それぞれのキー値は個別にソー

ト されています。

5 データのセッ ト をインデッ クス ページにマージし、各ページの容量いっぱいまで書き込みます。各インデッ

クス ページはデータ ファ イルの 後に追加され、 ファ イル長は拡大されます。

6 残りの各キーについて、 手順 4 および 5 を繰り返します。

この処理中にテンポラ リ ファ イルのオープンや書き込みに失敗などのエラーが発生した場合、 Rebuild はも う 1つの方法を用いてファイルのビルドを 初からやり直します。

デフォル ト の方法には存在する メモ リ が足り ない場合やデフォル ト の方法で処理中にエラーが発生した場合、

Rebuild はも う 1 つの方法 (-m0) を使用します。

1 元のファイルに定義されているのと同じレコード構造と インデッ クスを持つ空のデータ ファ イルを新規作

成します。

2 新しいファイルからすべてのインデッ クスを削除します。

3 新しいファイルにインデッ クスなしですべてのデータをコピーします。

4 以下の処理でインデッ クスを追加します。

a. 元のファイルの特定のキーについて、 Step Next オペレーシ ョ ンを使用して、 1 度に 1 レコードを読みま

す。

b. レコードからキー値を抽出し、 インデッ クスの適切な場所に挿入します。 この処理では、 キー ページ

がいっぱいになる と必然的にページの分割が行われます。

c. 手順 a および b を繰り返し、 各レコードのキー値を処理します。

5 残りの各キーについて、 手順 4 を繰り返します。

も う 1 つの方法は、 デフォルトの方法に比べて一般的にはるかに時間がかかり ます。 多数のインデッ クスを持つ

サイズの大きなファイルがある場合、 2 つの方法の差は何時間から何日にまで及ぶこ とがあ り ます。 Rebuild が必

ずデフォルトの方法を使用するよ うにする唯一の方法は、 十分な使用可能メモ リ を確保するこ とです。 設定プロ

パティのいくつかは、 利用可能なメモ リ量に影響を与えます。

必要な メ モ リ量を見積も る式

以下の式は、速い方法でファイル インデッ クスを リ ビルドするのに必要な連続した空き メモ リの 適かつ 小の

量を見積も り ます。 適なメモ リ量は、 RAM 上のすべてのマージ ブロ ッ クを格納するのに十分な量です。 小

のメモ リ量は、 RAM 上の 1 つのマージ ブロ ッ クを格納できる量です。

キー長 = ファ イル上で 大のキーのすべてのセグメン トの合計サイズキー オーバーヘッド = 8 (キー タイプがリ ンク重複でない場合)、12 (キー タイプがリ ンク重複の場合)。レコード数 = ファ イル内のレコード数

適なメモ リ バイ ト = ((( キー長 + キー オーバーヘッ ド ) * レコード数 ) + 65536) / 0.6

小メモ リ バイ ト = 適メモ リ バイ ト / 30

たとえば、 ファ イルに 8,000,000 レコードが含まれていて、 も長いキーが 20 バイ ト ( リ ンク重複キーではない)

である場合、 理想的なメモ リの量は 373.5 MB、 つま り ((( 20 + 8 ) * 8,000,000 ) + 65536 ) / 0.6 = 373,442,560 バイ ト

とな り ます。

適な連続空き メモ リの量は 373.5 MB です。 少なく と も これだけの空き メモ リがあれば、 Rebuild 処理はすべて

RAM 上で行われます。 60 % とい う割り当て制限のため、 メモ リの 適な量というのは、 実際はリ ビルド処理開

281

Page 298: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

始時に必要と される空き領域の量で、 リ ビルド処理が実際に使用する量ではあ り ません。 この 適量に 0.6 をか

ける と、 Rebuild が実際に使用する 大量が決定されます。

メモ リの 低量は 適量の 1/30、 12,448,086 バイ ト、 または 12.45 MB です。

除数に 30 を使用するのはデータベース エンジンが一度に追跡するマージ ブロ ッ クは 30 以下であるためですが、

常に 1 つのマージ ブロッ クがメモ リ上にある必要があ り ます。 除数に 0.6 を使用するのは、 エンジンがリ ビルド

処理に 60% よ り多くの物理メモ リ を割り当てるこ とはないためです。

使用可能メモ リが 小の量よ り少ない場合、 Rebuild はデータ ファ イルのリ ビルドにも う 1 つの方法を使用しま

す。

後に、 割り当てられたメモ リブロ ッ クは 2 つの条件を満たす必要があ り ます。 必要なブロ ッ ク と割り当てられ

たブロ ッ ク サイズは次のよ うになり ます。

必要なブロ ッ ク数は 30 以下です。

必要なブロ ッ ク数 = Round Up ( 適なメモ リ バイ ト / 割り当てられたブロッ ク )

割り当てられたブロ ッ ク サイズは以下の値以上である必要があ り ます。

((2 * 大キー数 + 1) * ( キー長 + キー オーバーヘッ ド )) * 必要なブロ ッ ク数

ページ サイズ 512 バイ ト、 12.45 MB のブロ ッ ク割り当てに成功したと仮定する と、 必要なブロ ッ ク数は次のよ

うにな り ます。

必要なブロ ッ ク数 = 373,500,000 / 12,450,000 = 30

初の条件に合っています。

割り当てられたブロ ッ ク サイズの値は次のよ うになり ます。

大キー数 = (512-12) / 28 = 18(((2 * 18) + 1) * (20 + 8)) * 9 = 9324

割り当てられたブロ ッ ク (12,500,000 バイ ト ) は 9324 バイ ト よ り大きいですか ? そ うであれば 2 番目の条件に

合っています。 インデッ クス キーはテンポラ リ ファ イルに 12.45 MB ずつの塊と して書き込まれ、 メモ リに格納

され、 次にインデッ クスに書き込まれます。

ソー ト バッ フ ァー サイズ

この設定は、 ランタイムでインデッ クスを作成中に MicroKernel がソートのために動的に割り当てる、 または割

り当てを解除する メモ リの 大容量を指定します。 「ソート バッファー サイズ」 を参照して ください。

設定がゼロ (デフォルト ) の場合、 Rebuild は 適なメモ リ バイ ト値を計算し、 その値に基づいてメモ リ を割り

当てます。 メモ リ割り当てに成功したら、割り当てられたブロッ クのサイズは少なく と も 小メモ リ バイ トで定

義された値になり ます。 「必要なメモ リ量を見積もる式」 を参照して ください。

設定がゼロ以外の値で、 値が計算された 小メモ リ バイ ト よ り小さい場合、 Rebuild はその値を使用してメモ リ

を割り当てます。

後に、 Rebuild は割り当てるべき メモ リ量と実際に利用可能な量の 60% とを比較します。 そして、 その 2 つの

うち小さい方を割り当てよ う と します。 メモ リ割り当てに失敗した場合、Rebuild は 後に割り当てよ う と したメ

モ リ量の 80% の割り当てを試みるこ とを続けます。メモ リ割り当てに完全に失敗した場合(これは 小メモ リ バイ ト よ り メモ リ量が少ないこ とを意味します)、 Rebuild はファイルのリ ビルドにも う 1 つの方法を使用します。

MicroKernel の 大メ モ リ使用量

この設定は、総物理メモ リに対して MicroKernel が消費できる メモ リの割合を指定します。MicroKernel による L1、L2 およびその他すべてのメモリの使用量が含まれます (SRDE は含まれません) 。 「MicroKernel の 大メモリ使

用量」 を参照してください。

リ ビルドするサイズの大きなファイルがある場合、 [MicroKernel の 大メモ リ使用量] のパーセンテージを一時

的にデフォルト よ り小さい値に設定します。 リ ビルド処理が終わったら、 再度適切なパーセンテージに設定し直

します。

282

Page 299: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Rebuild ユーテ ィ リ テ ィ の概念

キャ ッ シュ割当サイズ

この設定は、MicroKernel によって割り当てられるレベル 1 キャ ッシュのサイズを指定します。MicroKernel では、

すべてのデータ ファ イルへのアクセスにこのキャ ッシュが使用されます。 「キャ ッシュ割当サイズ」 を参照して

ください。

この設定は、データベース エンジンがデータ ファ イルにアクセスするのにどれだけのメモ リが使用できるかを決

定します。 インデッ クスを構築する際に使用するものではあ り ません。

キャ ッシュ割り当てサイズを大きな値に増やしても、 インデッ クスの構築は速くな り ません。 実際、 重要なメモ

リ を占めるこ とによ り Rebuild にとっては利用不可能とな り、 処理を遅くする可能性があ り ます。 大きなファ イ

ルを リ ビルドする場合には、 キャ ッシュ値を低い値に抑えます。 たとえば、 現在の値の 20% で、 ただし 5 MB を下回らないよ うにします。 こ うする と、 できるだけ多くのメモ リ をインデッ クスのリ ビルドに残すこ とができま

す。

イ ンデ ッ クス ページ サイズ

ファ イルのページ サイズも、 インデッ クス構築の速度に影響します。 Rebuild がも う 1 つの方法を使用した場合、

小さいキー ページを使用する と インデッ クスの構築に必要な時間は劇的に増加します。 Rebuild がデフォルトの

方法を使用した場合には、 キー ページ サイズはインデッ クスの構築にはあま り影響を与えません。

Rebuild は、 ページ サイズをアプリ ケーシ ョ ンのパフォーマンスまたはディ スク ス ト レージに対して 適化しま

す。

(アプ リ ケーシ ョ ンがそのデータにアクセスする) パフォーマンスについて 適化するには、 Rebuild はデフォル

トのページ サイズ 4096 バイ ト を使用します。 この結果は、 物理ス ト レージ上の大きなページ サイズと遅いリ ビ

ルド時間になり ます。

ディ ス ク ス ト レージに対するページ サイズの 適化に関する解説は、 開発者リ ファレンスの 『Pervasive PSQLProgrammer's Guide』 の 「ページ サイズの選択」 を参照してください。

アプリ ケーシ ョ ンで、 8,000,000 レコード、 20 バイ トのキーおよび 512 バイ トのページ サイズを使用する と仮定

します。 MicroKernel は各インデッ クス ページに 8 個から 18 個の間のキー値を書き込みます。 こ うする と、 各

ページで必要となる物理ス ト レージ量が減り ます。 ただし、 8,000,000 レコードにインデッ クスを付ける と、 およ

そ 7 階層の深さの B ツ リーが作成され、ほとんどのキー ページが 7 番目のレベルに属します。パフォーマンスは

低下します。

ページ サイズ 4096 バイ ト を使用する と、データベース エンジンは各インデッ クス ページに 72 から 145 個のキー

値を書き込みます。 B ツ リーはおよそ 4 レベルの深さで済み、 Rebuild が新しいキー値を挿入する と きに調べる

ページ数が少なくな り ます。 パフォーマンスは向上しますが、 物理ス ト レージをよ り必要と します。

イ ンデ ッ クス数

インデッ クス数もインデッ クス構築の速度に影響します。 一般的に、 インデッ クス数が多いほどビルド処理には

時間がかかり ます。インデッ クスの構築に必要な時間は、B ツ リーの深さの増加によ り幾何級数的に増加します。

ログ フ ァ イル

リ ビルド処理からの情報はテキス ト ログ ファ イルに追加されます。 ログ ファ イルはデフォル ト で現在の作業

ディレク ト リに保存されます。

CLI Rebuild では、 デフォルトのファ イル名は Windows および Linux で rbldcli.log です。 デフォルト を使用せず、

ログ ファ イルのロケーシ ョ ンと名前を指定するこ と もできます。 「-lfile」 パラ メーターを参照してください。

テキス ト エディ ターを使用してログ ファ イルが確認できます。 ログ ファ イルに記録される情報は、 以下のとお

りです。

リ ビルド処理の開始時刻

コマンド ラインで指定されたパラ メーター

ステータス コードおよびエラー説明 (エラーが発生した場合)

処理中のファイル

283

Page 300: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

処理に関する情報 (ページ サイズの変更など)

処理済みレコード総数

再構築されたインデッ クス総数 (-m2 処理方法が使用された場合)

リ ビルド処理の終了時刻

処理のステータス (たとえば、 ファ イルのリ ビルドが成功したかど うかなど)

284

Page 301: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Rebuild ユーテ ィ リ テ ィ の GUI のリ フ ァ レンス

Rebuild ユーテ ィ リ テ ィ の GUI のリ フ ァ レンス

このセクシ ョ ンでは、 Rebuild ユーティ リ ティ のグラフ ィカル ユーザー インターフェイス (GUI) のオブジェク

トについて説明します。

フ ァ イル オプシ ョ ンの画面

この画面を使用する と、 リ ビルドのリ ス トにファ イルを追加するこ とができます。

図 40 Rebuild ユーテ ィ リ テ ィ のフ ァ イル選択

Rebuild オプシ ョ ンの画面

この画面を使用する と、 ファ イルのリ ビルドに関するオプシ ョ ンを選択するこ とができます。

図 41 Rebuild ユーテ ィ リ テ ィ のフ ァ イル オプシ ョ ン

GUI オブジ ェ ク ト 説明 関連情報

選択ファイル リ ビルドするために リ ス ト されたデータ ファ イルおよ

び辞書ファ イル。 [追加] ボタンを使用して選択したも

のです。

「フ ァ イルを リ ビルドす

るには」

[追加] ボタン リ ビルドするファ イルの リ ス ト にデータ ファ イルまた

は辞書ファ イルを追加します。 「フ ァ イルを リ ビルドす

るには」

[削除] ボタン 選択したデータ ファ イルまたは辞書ファ イルを リ ス ト

から削除します。 「フ ァ イルを リ ビルドす

るには」

[ク リ ア] ボタン 選択されたデータ ファ イルおよび辞書ファ イルの リ ス

ト全体をク リ アします。 「フ ァ イルを リ ビルドす

るには」

285

Page 302: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

GUI オブジ ェ ク ト 説明 関連情報

システム データ Rebuild 時にファ イルにシステム データ キーを作成するかど

うかを指定します。

システム データはト ランザクシ ョ ン一貫性保守と ト ランザク

シ ョ ン ログでは必須です。

システム データおよびキー データを使用してファ イルを リ

ビルドするかど うかを指定します。 MicroKernel は、 ユーザー

定義のユニークなキーが存在しないと き、 システム データを

含まないファイルのロギングを行う こ とができません。

「ファ イルを リ ビルドするには」

ページ圧縮 ファ イルにページ圧縮を使用するかど うかを指定します。 選

択肢は、 " オン "、 " オフ "、 および " 既存を保持 " です。 " 既存を保持 " を選択する と、 ファ イルにページ圧縮が設定され

ている場合は、 それを維持します。

ページ圧縮には 9.5 以上のファイル

形式であるこ とが必要です。

「レコードおよびページ圧縮」

レコード圧縮 ファ イルにレコード圧縮を使用するかど う かを指定します。

選択肢は、 " オン "、 " オフ "、 および " 既存を保持 " です。 "既存を保持 " を選択する と、 ファ イルにレコード圧縮が設定

されている場合は、 それを維持します。

「レコードおよびページ圧縮」

エラー時続行 リ ビルド処理中にエラーが発生した場合に、 Rebuild ユーティ

リ テ ィの処理を続行するかど う かを決定し ます。 このオプ

シ ョ ンを選択する と、 エラーが発生した場合でも、 ユーティ

リ テ ィは次のファ イルの処理を続行します。 ユーティ リ テ ィ

によ り、MicroKernel データ ファイル以外のファ イルであるこ

とやその他のエラーが発生したこ とが通知されますが、 デー

タ ファ イルのリ ビルドは続行されます。 このオプシ ョ ンを選

択しない場合、 エラーが検出された場合、 リ ビルド処理が停

止します。

このオプシ ョ ンは、 リ ビルド ファイルにワイルド カード文字

を指定した場合に効果的です。

「ファ イルを リ ビルドするには」

終了時に設定を保存 このダイアログ ボッ クスの現在の設定を保存して、 次回のリ

ビルドのセッシ ョ ンでも この設定を使用でき る よ う にし ま

す。

「ファ イルを リ ビルドするには」

キー番号 ファ イルの リ ビルド処理を行う際にユーティ リ テ ィが読み込

むキーを指定します。 このオプシ ョ ンで [NONE] を選択した

場合、 ファ イルの複製、 インデッ クスの削除、 新しいファ イ

ルへのレコードのコピーが行われた後、 インデッ クスが リ ビ

ルド されます。 この方法は、 キー番号を指定するよ り も短時

間で リ ビルドでき、 ファ イルのサイズも小さ く なるため、 で

きる限り この方法を使用するよ うにして ください。

この方法では、 元のファ イルとは異なる物理順序のレコード

を含む新規ファ イルが作成されるこ とがあ り ます。

キー番号を指定した場合には、 インデッ クスの削除と置き換

えは行われず、 ファ イルの複製と コピーが行われます。 この

方法は、 [NONE] を指定するよ り も リ ビルドに時間がかかり

ますが、 インデッ クスを リ ビルド した くない場合には、 この

方法を使用します。

「ファ イルを リ ビルドするには」

『Pervasive PSQL Programmer's Guide』 の 「キー属性」

ファイル フォーマット これまでは、 Rebuild ユーティ リ ティは [作成ファ イルのバー

ジ ョ ン] 設定パラ メーターに基づいてファ イル バージ ョ ンを

決定していました。

この Rebuild ユーティ リ ティ を使用する と、その設定とは無関

係にファイル バージ ョ ンを指定するこ とができます。

「ファ イルを リ ビルドするには」

286

Page 303: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Rebuild ユーテ ィ リ テ ィ の GUI のリ フ ァ レンス

ページ サイズ 新しいファ イルのページ サイズをバイ ト単位で指定します。

"EXISTING"、 " 適化 (ディ スク スペース) "、 " 適化 (デー

タ アクセス) " のいずれかを選択するか、 サイズをバイ ト単

位で指定します。"EXISTING" を選択した場合は現在のページ

サイズが使用されます。 何らかの理由で元のサイズが使用で

きない場合は、 ユーティ リ テ ィによ り、 ほかのページ サイズ

に変更されます。

たとえば、 ページ サイズが 1024 で、 24 個のキーを持つ v5.xファ イルがある と します。Btrieve v6.0 以降のバージ ョ ンでは、

ページ サイズが 1024 の場合、 23 個までのキーのみをサポー

トするため、 ファ イルには、 ユーティ リ テ ィによって新しい

ページ サイズが自動的に割り当てられ、 ログ ファ イルに通知

メ ッセージが記述されます。

「ファ イルを リ ビルドするには」

データ アクセスの 適化につ

いては、「Rebuild 処理の 適化」

を参照してください。

ディ スク スペースの 適化に

ついては、 『Pervasive PSQLProgrammer's Guide』 の 「ページ

サイズの選択」 を参照して くだ

さい。

出力パス リ ビルド されたファ イルの保存先となる別のロケーシ ョ ンを

指定します (デフォル トのロケーシ ョ ンは現在のディ レク ト

リです)。 必ず既存のディ レク ト リ を指定してください。

このオプシ ョ ンを使用すれば、 サイズの大きいファ イルを別

のサーバーでリ ビルドするこ とができます。 MicroKernel とそ

の通信コンポーネン ト が、 リ ビルド されたファ イルを格納す

るサーバーでロード されている必要があ り ます。パスには、ワ

イルドカード文字を使用し ないで く だ さい。

出力ディ レ ク ト リ のロケーシ ョ ンが元のフ ァ イルのロケー

シ ョ ン と異なる場合、 元のファ イルは リ ビルド中に削除され

ません。 出力ディ レク ト リが元のファ イルと同じディ レク ト

リ である場合には、 リ ビルドの完了時に元のファ イルは削除

されます。

DefaultDB w/ DB security: [名前付きデータベースの管理] で

指定したデータベースのファイル ロケーシ ョ ン以外ではリ ビ

ルドできません。

「ファ イルを リ ビルドするには」

ログ ファ イル リ ビルド ログ ファイルのロケーシ ョ ンを指定します (デフォ

ルトのロケーシ ョ ンは現在の作業ディレク ト リです)。パスに

は、 ワイルドカード文字を使用し ないで く だ さい。

「ファ イルを リ ビルドするには」

「ログ ファイル」

GUI オブジ ェ ク ト 説明 関連情報

287

Page 304: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

Rebuild 進行状況画面

この画面を使用する と、 リ ビルドの進行状況を知るこ とができます。 また、 リ ビルド処理完了後にログ ファ イル

を表示するこ とができます。

図 42 Rebuild ユーテ ィ リ テ ィ の進行状況

GUI オブジ ェ ク ト 説明 関連情報

メ ッセージ領域 リ ビルド中のファイルについての情報が表示されます。 リ ビルドが完了

した場合には操作の要約が表示されます。

「ログ ファイル」

ログ ファイルの表示 各ファ イルの リ ビルド処理に関する情報を表示する こ とができます。

[ロ グ フ ァ イルの表示] を ク リ ッ クする と、 デフ ォル ト のテキス ト

ビューアーを使用して リ ビルド ログを表示します。

「ログ ファイル」

288

Page 305: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Rebuild ユーテ ィ リ テ ィ の作業

Rebuild ユーテ ィ リ テ ィ の作業

以下の Rebuild の作業が行えます。

GUI Rebuild : 「GUI 操作」

コマンド ラ イン Rebuild : 「CLI 操作」

GUI 操作

「GUI Rebuild ユーティ リ ティ を開始するには」

「Rebuild ユーティ リ ティのヘルプを入手するには」

「ファ イルを リ ビルドするには」

GUI Rebuild ユーテ ィ リ テ ィ を開始するには

Pervasive PSQL Control Center のメニューから [ツール| Rebuild] を選択するか、 オペレーティング システムの

[ス ター ト ] メニューまたはアプ リ画面から Rebuild にアクセスします。

Rebuild ユーテ ィ リ テ ィ のヘルプを入手するには

どの GUI (グラフ ィカル ユーザー インターフェイス) でも、 [ヘルプ] をク リ ッ クする とヘルプ ファ イルにアク

セスできます。

フ ァ イルを リ ビルド するには

1 Rebuild の開始画面で [次へ] をク リ ッ クする と、 フ ァ イルの選択画面が表示されます。

2 [追加] をク リ ッ ク して リ ビルドするデータ ファ イルまたは辞書ファイルを選択します。 複数のファイルを

一度に選択するこ と もできます。

図 43 フ ァ イルの選択用ダイアログ ボ ッ クス

元のファイルと同じディ レク ト リでファ イルを リ ビルドする場合、 元のファイルはリ ビルド完了後に削除さ

れます。 新しいファイルを別のディ レク トに置く場合は、 元のファイルは削除されません。

3 目的のファイルを追加したら、 [次へ] をク リ ッ ク します。

4 リ ビルド オプシ ョ ンを指定します。 「Rebuild オプシ ョ ンの画面」 を参照してください。

5 [次へ] をク リ ッ ク して リ ビルド処理を開始します。

このユーティ リ ティは処理に関する情報をレポート します。 リ ビルド処理が完了する と、 成功か失敗かが表

示され [ログ フ ァ イルを表示する] ボタンが有効になり ます。

289

Page 306: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

図 44 リ ビルド処理

6 結果を表示するには、 [ログ フ ァ イルを表示する] をク リ ッ ク します。 ログ ファ イルの内容は、 オペレー

ティング システムのデフォルトのテキス ト エディ ターで表示されます。

Rebuild ユーティ リ テ ィでは、 変換を試みたすべてのファ イルについてログ ファ イルに書き込みます。 [エ

ラー時続行] の設定を無効にした場合、 ログ ファ イルには、 エラーが発生した時点までの情報が記録されま

す。 リ ビルドが失敗した場合、 ログ ファ イルにはそのエラーの原因を説明する メ ッセージが記録されます。

7 ファ イルのリ ビルドが完了してログ ファ イルを見終わったら、 [完了] をク リ ッ ク します。

CLI 操作

Rebuild コマンド ライン ユーティ リ ティの名前は、 Windows の場合は rbldcli.exe、 Linux の場合は rbldcli です。 以

下のコマンド ライン Rebuild ユーティ リ ティ作業が行えます。

「Rebuild を Linux で実行するには」

「Rebuild を Windows で実行するには」

「 リ ビルド中のファイルの進行状況を見るには」

CLI Rebuild ユーティ リ ティのコマンド ラ イン パラ メーターについては、 次のセクシ ョ ンを参照して くださ

い。

コ マン ド ラ イ ン パラ メ ーター

parameter オプシ ョ ンには、 このユーティ リ ティで使用するパラ メーターを指定します。パラ メーターはどのよ う

な順序でも使用できます。 各パラ メーターの前にはハイフン (-) を付けます。 ハイフンの後、 または、 1 文字の

パラ メーターおよびパラ メーター値の後にスペースを入れないでください。

メ モ Linux プラ ッ ト フォームに限り、 パラ メーターで大文字小文字が区別されます。

290

Page 307: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Rebuild ユーテ ィ リ テ ィ の作業

parameter は以下のよ うに定義されています。

-c エラーが発生しても、 次のデータ フ ァ イルまたは辞書フ ァ イルの リ ビルド を続行する よ う に、

Rebuild に指示します。 ユーティ リ ティによ り、 MicroKernel データ ファ イル以外のファイルである

こ とや MicroKernel ファ イルでエラーが発生したこ とが通知されますが、 データ ファ イルのリ ビル

ドは続行されます。エラーはログ ファ イルに書き出されます。「ログ ファ イル」を参照して ください。

ヒ ン ト : このパラ メーターは、 混合するファ イルのセッ トに対してワイルドカード文字 (*.*) を指

定した場合に特に便利です。混合ファ イルのセッ ト とは、MicroKernel ファ イルと非 MicroKernel ファ

イルの組み合わせです。Rebuild は非 MicroKernel ファ イルを処理するたび(または MicroKernel ファ

イルのエラー時) にエラーを報告しますが、 処理を続行します。

-d -d を指定する と、バージ ョ ン 6.0 よ り前の補助インデッ クス (重複が可能) を 6.x、 7.x または 8.x のリ ンク重複キーのあるインデッ クスに変換します。

このパラ メーターを指定しないと、 Rebuild はインデッ クスを繰り返し重複キーと して保持します。

ト ランザクシ ョナル インターフェイスを介してのみデータ ファ イルにアクセスし、かつファ イルに

比較的多数の重複キーがある場合には、 -d パラ メーターを使用して Get Next オペレーシ ョ ンや GetPrevious オペレーシ ョ ンのパフォーマンスを向上させるこ とができます。

-m<0 | 2> 'm' パラ メーターは method (方法) を表します。 Rebuild はこのパラ メーターが指定されているかど

うかによって処理方法を選択します。 このパラ メーターを指定しない場合、 Rebuild は以下のよ うに

処理します。

十分な使用可能メモ リがある場合には、 -m2 をデフォルトの処理方法と します。

使用可能メモ リが十分でない場合はも う 1 つの方法の -m0 を使用します。

選択した方法によって影響を受ける メモ リの量については、 「メモ リ量」 を参照してください。

0 インデッ クスの削除や置き換えを行う こ とな くデータ ファ イルまたは辞書ファ イルの複製を作成

してコピーします。 この方法は -m2 の方法に比べて時間がかかり ます。 インデッ クスを リ ビルド し

ない場合には、 この方法が使用できます。

-m0 を使用する と、 各キー ページの使用率が 55% から 65% のファイルが作成されます。 このファ

イルは書き込み用によ り 適化されていて、 読み取りには 適化されていません。 状況によ り ます

が、 リ ビルドにかける時間の余裕がある場合は、 書き込み用に 適化される リ ビルドを行うのが望

ましいでし ょ う。

「Rebuild 処理の 適化」 も参照してください。

2 データ ファイルまたは辞書ファイルの複製を作成し、 インデッ クスを削除して新しいファ イルにレ

コードをコピーした後、 インデッ クスを リ ビルド します。 この方法は、 -m0 の方法よ り も短時間で

リ ビルドでき、 ファ イルのサイズも小さ くな り ます。

-m2 の方法では、 元のファ イルとは異なる物理順序のレコードを含む新規ファ イルが作成されるこ

とがあ り ます。

-m2 の方法を使用して作成されるファイルのキー ページは 100% 使用済みです。 こ うする と、 ファ

イルを読み取りに 適化するこ とができます。

291

Page 308: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

-p<D | P | bytes> ページ サイズをディ スク ス ト レージまたは処理に 適化します。 またはリ ビルドするファ イル

に特定のページサイズを指定します。

このパラ メーターを指定しないと、 Rebuild は元のファ イルのページ サイズを使用します。 元の

ファイルのページ サイズでは現在のデータベース エンジンで動作しない場合、Rebuild はページ

サイズを変更し、 変更したこ とを示す情報メ ッセージを表示します。 たとえば、 5.x などの古い

ファ イル形式ではページ サイズが 1024 でキーを 24 個持つファ イルをサポート していました。

8.x のファ イル形式では、 ページ サイズ 1024 で 23 個のキーしかサポート しません。 したがっ

て、 Rebuild は 8.x ファ イルを作成する場合、 異なるページ サイズを選択します。

データベース エンジンでは、 指定されたページ サイズを無視してそのサイズを自動的に更新す

るこ とがあ り ます。 たとえば、 バージ ョ ン 9.5 のファイル形式の場合、 1536 や 3072 などの奇数

ページ サイズはサポート されません。 データベース エンジンでは効率を良くするために、 ペー

ジ サイズを次の有効なページ サイズへ自動的に更新します。 旧バージ ョ ンのファイル形式の場

合、 データベース エンジンは別の条件に基づいてページ サイズを更新するこ とができます。

「インデッ クス ページ サイズ」 も参照して ください。

D ページ サイズをディ スク ス ト レージに 適化します。

開発者リ ファレンス 『Pervasive PSQL Programmer's Guide』 の 「ページ サイズの選択」 を参照してく

ださい。

P 処理に対して 適化します (つま り、 そのデータにアクセスするアプリ ケーシ ョ ンのための 適化

です)。 -pP では、 Rebuild はデフォルトのページ サイズ 4096 バイ ト を使用します。

「Rebuild 処理の 適化」 を参照

bytes 新しいファイルのページ サイズをバイ ト単位で指定します。 9.0 よ り前のファ イル バージ ョ ンの場

合、 有効な値は 512、 1024、 1536、 2048、 2560、 3072、 3584 および 4096 です。 9.0 のファイル バー

ジ ョ ンの場合、 上記と同じ値に 8192 が加えられます。 9.5 以上のファイル バージ ョ ンの場合、 有効

な値は 1024、 2048、 4096、 8192 および 16384 です。

-bdirectoryname リ ビルド したファ イルに別のロケーシ ョ ンを指定します。 別のサーバー上のロケーシ ョ ンも指定で

きます。 デフォルトのロケーシ ョ ンは、 データ ファイルのあったディ レク ト リです。 必ず存在する

ロケーシ ョ ンを指定して ください。 Rebuild はディ レク ト リ を作成しません。 また、 そのディ レク ト

リは Pervasive PSQL データベース エンジンが起動しているマシン上のディ レク ト リでなければなり

ません。

完全に修飾したパスまたは相対パスのいずれも使用できます。 directoryname にはワイルドカード文

字を使用しないでください。

ローカル サーバーの場合は、 MicroKernel Database エンジンと メ ッセージ ルーターがロード されて

いる必要があ り ます。 リモート サーバーの場合は、MicroKernel Database エンジンと通信コンポーネ

ン トがロード されている必要があ り ます。

このパラ メーターを指定しないと、 リ ビルド されたファイルによって元のデータ ファ イルが置き換

えられます。 元のファ イルのコピーは保持されません。

このパラ メーターを指定する と、リ ビルド されたファイルは指定のロケーシ ョ ンに置かれ、元のファ

イルが保持されます。 これに関する例外があ り ます。 指定したロケーシ ョ ンに同じ名前のデータ

ファ イルが既に存在する場合です。 元のファ イルと同じ名前のファ イルが指定されたロケーシ ョ ン

に含まれていた場合、 Rebuild ではエラーが起こ り ます。 たとえば、 folder1 というディ レク ト リ

にある mydata.mkd を リ ビルド しよ う とする と します。 リ ビルド されたファ イルを foder2 という

ディ レク ト リに保存したいと します。folder2 にも mydata.mkd が存在していた場合 (おそら く気

付かないうちに)、 Rebuild ではエラーになり、 ログ ファ イルを調べるよ う通知があ り ます。

メモ:指定したロケーシ ョ ン(このパラ メーターを指定しなかった場合は元のファイルのロケーシ ョ

ン) に対して、 ファ イルを作成するアクセス権があるこ とを確認して ください。

-knumber キー番号を指定します。Rebuild はこれを使って元のファ イルを読み、 リ ビルド したファイルを並べ

替えます。 このパラ メーターを指定しないと、 Rebuild はも とのファ イルを物理順に読み、 リ ビルド

したファ イルも物理順で作成します。

「Rebuild 処理の 適化」 も参照してください。

292

Page 309: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Rebuild ユーテ ィ リ テ ィ の作業

-s[D | K] リ ビルド したファ イルに、 元のファ イルの既存のシステム データ とキーを保持します。 このパラ

メーターを指定しないと、 Rebuild はシステム データ とキーを リ ビルド したファ イルに含めません。

「システム データ」 も参照して ください。

D リ ビルド したファイルにシステム データを含めます。システム データにはインデッ クスが作成され

ません。 「システム データ」 も参照して ください。

K リ ビルド したファイルにシステム データ とキーを含めます。システム データにはインデッ クスが作

成されます。 「システム データ」 も参照して ください。

-lfile Rebuild のログ ファ イルにファイル名を指定します。 オプシ ョ ンでパス ロケーシ ョ ンを指定するこ

とができます。デフォルトのファイル名は、Windows および Linux では rbldcli.log です。Windows および Linux では、 デフォルトのロケーシ ョ ンは現在の作業ディレク ト リです。

以下の条件が適用されます。

パス ロケーシ ョ ンは既に存在している必要があ り ます。Rebuild はパス ロケーシ ョ ンを作成しま

せん。

ファ イル名を指定しないでパス ロケーシ ョ ンを指定した場合、 Rebuild はこのパラ メーターを無

視してデフォルトのファイル名と ロケーシ ョ ンを使用します。

パス ロケーシ ョ ンを指定しないでファ イル名を指定した場合、 Rebuild はデフォルトのロケー

シ ョ ンを使用します。

指定したロケーシ ョ ンに対する読み取りおよび書き込みのアクセス権を持っている必要があ り

ます。 ファ イルのアクセス権のためにログ ファイルを作成できなかった場合、 Rebuild はデフォ

ルトのロケーシ ョ ンを使用します。

「ログ ファ イル」 も参照してください。

-pagecompresson 「file」 のページ圧縮をオンにする と、 以下の条件が設定されます。

Pervasive PSQL データベース エンジンのバージ ョ ンは Pervasive PSQL 9.5 以上

作成ファ イルのバージ ョ ン設定は 0950 (9.5) 以上。

-pagecompressoff 「file」 のページ圧縮をオフにします。 このパラ メーターは、 「file」 にページ圧縮が指定されていない

場合は無効です。

-recordcompresson 「file」 のページ圧縮をオンにします。

-recordcompressoff 「file」 のレコード圧縮をオフにします。 このパラ メーターは、 「file」 にレコード圧縮が指定されてい

ない場合は無効です。

293

Page 310: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

File および @command_file は次のよ うに定義されます。

-f<6 | 7 | 8 | 9 | 95> リ ビルド後のデータ ファ イルまたは辞書ファ イルのファ イル形式を指定します。 ファ イル形式は、

バージ ョ ン 6.x、 7.x、 8.x および 9.x が使用できます。 次の例ではファ イルを 9.0 形式にリ ビルド し

ます。

rbldcli -f9 file_path\class.mkd

次の例ではファ イルを 9.5 形式にリ ビルド します。

rbldcli -f95 file_path\class.mkd

このパラ メーターを指定しないと、 Rebuild は MicroKernel の [作成ファ イルのバージ ョ ン] 設定オ

プシ ョ ンに指定されている値を使用します。 「作成ファイルのバージ ョ ン」 を参照して ください。

メモ 1 : 現在のデータベース エンジンでサポート されているバージ ョ ンよ り新しいファイル形式を

指定した場合、 Rebuild はそのエンジンでサポー ト されている 新のファ イル形式を使用します。

Rebuild はこれに関してはエラーも メ ッセージも報告しません。

メモ 2 :Rebuild はインデッ クスのデータ型を変換しません。 ファ イルを古いデータベース エンジン

で使用するために古いファ イル形式にリ ビルドする場合、 エンジンが使用されているデータ型をサ

ポート しているかど うかを確認して ください。 必要に応じ、 アプ リ ケーシ ョ ン とそのデータベース

エンジンによって、 手作業でデータ型を調整する必要があ り ます。

例 1. データ ファ イルに WZSTRING データ型を使用するインデッ クス フ ィールドが含まれていま

す。データ ファ イルを 6.x 形式にリ ビルドする場合、 WZSTRING データ型は変換されません。 この

データ ファ イルを Btrieve 6.15 エンジンで使用するこ とはできません。 このエンジンは WZSTRINGデータ型をサポート しません。

例 2. データ ファ イルに NULL が含まれています。 データ ファイルをを 7.x ファイル形式にリ ビル

ド します。 真の NULL は変換されません。 このデータ ファ イルを Pervasive PSQL 7 エンジンで使用

するこ とはできません。 このエンジンは 真の NULL をサポート しません。

-uiduname セキュ リ ティが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定し

ます。

-pwdpword uname で識別されるユーザーのパスワードを指定します。 uname が指定された場合、 pword は必ず

指定する必要があ り ます。

-dbdbname セキュ リティが設定されたデータベース名を指定します。

file 変換するデータ ファ イルおよび辞書ファ イルを指定します。 元のファ イルが現在の作業ディ レク

ト リにない場合は、完全修飾パスまたは相対パスのいずれかを使用してロケーシ ョ ンを含めてくだ

さい。 ファ イル名にはアスタ リ スク (*) ワイルドカード文字を使用して、 複数のファイルを指定

するこ とができます。

メモ : 元のファ イルにオーナー ネームが含まれている場合、 Rebuild はリ ビルド したファ イルに

オーナー ネームとレベルを適用します。

@command_file Rebuild で実行されるコマンド ファ イルを指定します。 1 つのコマンド ファ イルに複数の項目を指

定できます。 コマンド ファイルの各項目には、 コマンド ライン パラ メーター (ある場合) と変換

するファイルのセッ ト を指定し、 その後に <end> または [end] を続けます。

変換するファ イルを指定する場合には、完全なディ レク ト リ名を使用します。ファ イル名にはアス

タ リ スク (*) ワイルドカード文字を使用できます。

次に、 Rebuild コマンド ファイルの例を示します。

-c d:\mydir\*.* <end>-c -p1024 e:\dir\*.* <end>-m0 -k0 d:\ssql\*.* <end>

294

Page 311: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

Rebuild ユーテ ィ リ テ ィ の作業

Rebuild を Linux で実行するには

1 ログインするアカウン トが Pervasive PSQL ユーティ リ ティ を実行する権限を持っているこ とを確認して くだ

さい。

デフォルトでは、ユーティ リ ティ を実行するには psql ユーザーと してログインする必要があ り ます。 psql

ユーザーにはパスワードがあ り ません。su コマンドを使用するこ とによって root アカウン トでのアクセス

のみを行 う こ と ができ ます。 psql 以外のアカウ ン ト から このユーテ ィ リ テ ィ を使用するには、 まず

.bash_profile を変更する必要があ り ます。『Getting Started with Pervasive PSQL』 の 「Linux での PervasivePSQL のアカウン ト管理」 を参照してください。

2 /usr/local/psql/bin ディ レク ト リに移動します。

3 プロンプ トに、 次のどちらかのコマンドを入力します。

rbldcli [-parameter ...] file

または

rbldcli @command_file

parameter、 file および @command_file は、 「コマンド ライン パラ メーター」 に定義されています。

使い方の例

以下の例はエラー時も処理を続けます。ページ サイズは 4096 バイ トに設定され、リ ビルド されたファイルはサー

バー上の別のディレク ト リに保存します。

rbldcli -c -p4096 -b/usr/local/psql/tmp /usr/local/psql/data/DEMODATA/*.mkd

Rebuild を Windows で実行するには

1 Pervasive PSQL がインス トールされているマシンで、 コマンド プロンプ ト を開きます。

2 状況によ り、 \bin ディ レク ト リ をプログラム ファ イルをインス トールしたディ レク ト リに変更します。 そ

の場所が Path システム変数に含まれている場合は、 この操作は不要です。

3 プロンプ トに、 次のどちらかのコマンドを入力します。

rbldcli [-parameter ...] file

または

rbldcli @command_file

parameter、 file および @command_file は、 「コマンド ライン パラ メーター」 に定義されています。

使い方の例

以下の例はエラー時も処理を続けます。ページ サイズは 4096 バイ トに設定され、リ ビルド されたファイルはサー

バー上の別のディレク ト リに保存します。

rbldcli -c -p4096 -bc:\dbtemp c:\datafiles\*.mkd

リ ビルド中のフ ァ イルの進行状況を見るには

Rebuild は、ファ イルごとに処理されたレコード数を画面上に表示します。1 度に 50 レコードずつ増加します。 さ

らに、 Rebuild はこれらの情報をテキス ト ログ ファ イルに書き込みます。 「ログ ファ イル」 を参照して ください。

295

Page 312: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

データ フ ァ イルの変換

296

Page 313: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

A

デ ィ スク リ プシ ョ ン フ ァ イル

ディ スク リプシ ョ ン ファ イルを使用して Btrieve ファ イル情報を保存する

ディ スク リプシ ョ ン ファ イルは、 Maintenance ユーティ リ ティがデータ ファ イルやインデッ クスの作成に使用す

るファイル スペッ ク とキー スペッ クの記述を含む ASCII テキス ト ファ イルです。 作成したファイルの情報を保

存するための媒体と してディ スク リプシ ョ ン ファ イルを使用するこ と もできます。ディ スク リプシ ョ ン ファ イル

は、 Scalable SQL 4.0 や ODBC インターフェイスで使用されるデータ辞書ファイル (DDF) とは異なり ます。

ディ スク リプシ ョ ン ファ イルには 1 つ以上の要素が含まれます。 1 つの要素は、 キーワード、 等号 (=)、 それに

値がスペースなしで続く形式で構成されます。ディ スク リプシ ョ ン ファ イルの各要素は、データ ファイルまたは

キー スペッ クの特性に対応しています。

メ モ ディ スク リプシ ョ ン ファ イルを使用する前に、 Btrieve の基本について熟知しておく必要があ り ます。

これらの項目の詳細については、 『Pervasive PSQL Programmer's Guide 』 を参照してください。

この付録では以下の項目について説明します。

「ディ スク リプシ ョ ン ファ イルの規則」

「ディ スク リプシ ョ ン ファ イルの例」

「ディ スク リプシ ョ ン ファ イルの要素」

297

Page 314: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

デ ィ スク リ プシ ョ ン フ ァ イル

デ ィ スク リ プシ ョ ン フ ァ イルの規則

ディ スク リプシ ョ ン ファ イルを作成する際は、 以下の規則に従います。

要素は、 大文字または小文字のいずれかで入力する。

要素を区切る場合は、 以下の例のよ うに、 区切り文字 (スペース、 タブ、 またはキャ リ ッジ リ ターン / ライ

ン フ ィード) を使用する。

record=4000

key=24

ディ スク リプシ ョ ン ファ イルの要素を適切な順序で指定する。表 66 に要素の適切な順序が示されています。

要素の依存関係は、 すべて指定する。 たとえば、 ディ スク リプシ ョ ン ファ イルで nullkey=allsegs を指

定した場合は、 value= という要素の値も指定します。

キーには、キー数要素で指定した数と同じ数のキーを定義する。たとえば、key=12 を指定した場合は、ディ

スク リプシ ョ ン ファ イルでも 12 個のキーを定義します。

キーに複数のセグメン トがある場合は、 各キー セグメン トに以下の要素を定義する。

キー ポジシ ョ ン

キー長

重複キー値 変更可能キー値 キー タイプ

各セグメン トの降順ソー ト要素は、 省略可能です。

ファ イル中のキーで ACS を使用している場合は、ACS ファ イル名、 カン ト リ ID と コード ページ ID、または

ISR テーブル名を指定する。 この情報は、 キーの 後の要素 (現在のキーのみに適用) またはディ スク リプ

シ ョ ン ファ イルの 後の要素 (データ ファ イル全体に適用) と して含めるこ とができます。

1 つのキーに対して指定できる ACS は 1 つのみで、 ACS ファ イル名、 カン ト リ ID と コード ページ ID、

または ISR テーブル名も指定します。同一ファイル中の異なるキーには、異なる形式の ACS が使用でき

ます。 たとえば、 キー 0 に ACS ファ イル名、 キー 1 にカン ト リ ID およびコード ページ ID を使用でき

ます。

同一キーの異なるセグメン トに、 異なる ACS を使用するこ とはできません。

ディ スク リプシ ョ ン ファ イルの 後に ACS を指定した場合は、その ACS がデフォルト と して使用され

ます。 たとえば、 alternate=y を指定し、 ACS ファ イル名、 カン ト リ ID と コード ページ ID、 または

ISR テーブル名を指定しない場合、データベース エンジンでは、 ファ イルの 後に指定されている ACSファ イル名、 カン ト リ ID と コードページ ID、 または ISR テーブル名を使用します。

新しいキーを作成する際に alternate=y を指定し、 ACS ファ イル名、 カン ト リ ID と コード ページ

ID、 または ISR テーブル名を指定しない場合、 データベース エンジンでキーは作成されません。

デ ィ スク リ プシ ョ ン フ ァ イルの要素がオプシ ョ ンの場合は、 それを省略するこ とができる。

ディ スク リプシ ョ ン ファ イルには、書式設定文字列を使用しない。一部のワード プロセッサでは、テキス ト

ファ イルに書式設定文字列が埋め込まれます。

298

Page 315: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

デ ィ スク リ プシ ョ ン フ ァ イルの例

デ ィ スク リ プシ ョ ン フ ァ イルの例

このセクシ ョ ンにあるディ スク リプシ ョ ン ファ イルのサンプルは、データ ファ イルの説明です。このデータ ファ

イルのページ サイズは 512 バイ トで、 キーは 2 つです。 レコードの固定長部分は 98 バイ トです。 ファ イルで可

変長レコードは使用可能ですが、 ブランク ト ランケーシ ョ ンは使用できません。

ファ イルはレコード圧縮を使用します。 また、 可変長部割り当てテーブル (VAT) を許可し、 空きスペース スレッシ ョルドは 20 % に設定されています。 MicroKernel Database エンジンは、 ファ イルを作成する際に 100 ペー

ジ、 つま り 51,200 バイ ト をプリ アロケート します。 ファ イルには、 キー 0 およびキー 1 の 2 つがあ り、 キー 0 には 2 つのセグメン トがあ り ます。

図 45 では、 同一の ACS ファ イル名 (upper.alt) が両方のキーで使用されています。 図 46 では、 同一のカン ト リ

ID (-1) およびコード ページ ID (-1) が両方のキーで使用されています。 図 47 では、 キー 0 (lower.alt) および

キー 1 (upper.alt) で、 異なる ACS ファ イル名を使用しています。 図 48 のファイルには、 ログに使用されるシス

テム定義キーのみが含まれています。

図 45 キー セグ メ ン ト に ACS のフ ァ イル名を使ったデ ィ スク リ プシ ョ ン フ ァ イルのサンプル

図 46 ACS ID を使ったデ ィ スク リ プシ ョ ン フ ァ イルのサンプル

record=98 variable=y truncate=n compress=ykey=2 page=512 allocation=100 replace=nfthreshold=20 vats=y

position=1 length=5 duplicates=ymodifiable=n type=string alternate=ynullkey=allsegs value=20 segment=y

position=6 length=10 duplicates=ymodifiable=n type=string alternate=ynullkey=allsegs value=20 segment=n

position=16 length=2 duplicates=nmodifiable=y type=numeric descending=ynullkey=n segment=n

name=c:\myacsfiles\upper.alt

フ ァ イル仕様

キー 0セグ メ ン ト 1

キー 0セグ メ ン ト 2

キー 1

record=98 variable=y truncate=n compress=ykey=2 page=512 allocation=100 replace=nfthreshold=20 vats=y

position=1 length=5 duplicates=ymodifiable=n type=string alternate=ynullkey=allsegs value=20 segment=y

position=6 length=10 duplicates=ymodifiable=n type=string alternate=ynullkey=allsegs value=20 segment=n

position=16 length=2 duplicates=nmodifiable=y type=numeric descending=ynullkey=n segment=n

countryid=-1 codepageid=-1

フ ァ イル仕様

キー 0セグ メ ン ト 1

キー 0セグ メ ン ト 2

キー 1

299

Page 316: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

デ ィ スク リ プシ ョ ン フ ァ イル

図 47 キー セグ メ ン ト に ACS のフ ァ イル名を使ったデ ィ スク リ プシ ョ ン フ ァ イルのサンプル

図 48 システム定義キーをログに使用するデ ィ スク リ プシ ョ ン フ ァ イルのサンプル

record=98 variable=y truncate=n compress=ykey=2 page=512 allocation=100 replace=nfthreshold=20 vats=y

position=1 length=5 duplicates=ymodifiable=n type=string alternate=ynullkey=allsegs value=20 segment=y

position=6 length=10 duplicates=ymodifiable=n type=string alternate=ynullkey=allsegs value=20 segment=n

position=16 length=2 duplicates=nmodifiable=y type=numeric descending=ynullkey=n segment=nname=c:\myacsfiles\upper.alt

フ ァ イル仕様

キー 0セグ メ ン ト 1

キー 0セグ メ ン ト 2

キー 1

name=sys:\pvsw\demodata\lower.alt

name=c:\myacsfiles\lower.alt

record=98 variable=y truncate=n compress=ykey=2 page=512 allocation=100 replace=nfthreshold=20 vats=y sysdataonrecord=loggable

300

Page 317: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

デ ィ スク リ プシ ョ ン フ ァ イルの要素

デ ィ スク リ プシ ョ ン フ ァ イルの要素

ディ スク リプシ ョ ン ファ イルの要素は特定の順序で並べる必要があ り ます。 表 66 は、 ディ スク リプシ ョ ン ファ

イルの要素を適切な順序で示しています。 この表では、 各要素に必要な書式および指定可能な値の範囲を示しま

す。

アスタ リ スク (*) は、 その要素が省略可能であるこ とを意味します。

シャープ記号 (#) は、 その要素が以前のバージ ョ ンの MicroKernel にのみ適用されるこ とを意味します。

パーセン ト記号 (%) は、 その要素が現バージ ョ ンの MicroKernel にのみ適用されるこ とを意味します。

表 66 デ ィ スク リ プシ ョ ン フ ァ イルの概要

要素 キーワードとフォーマット 範囲 解説

ファイル スペ ッ ク情報

コ メン ト ブロ ッ ク * /*. . . . . . . . . . . . */ 5,120 バイ ト なし。

レコード長 record=nnnn 4 - 8,184 なし。

可変長レコード variable=<y|n> 適用外 キー オン リー ファ イルには適用で

きません。

予約重複ポインター * dupkey=<nnn> 0 - 119 リ ン ク重複キーを追加する フ ァ イ

ルにのみ適用できます。

ブランク トランケーション * truncate=<y|n> 適用外 レ コード圧縮が使用される フ ァ イ

ルには適用できません。

レコード圧縮 * compress=<y | n> 適用外 キー オン リー ファ イルには適用で

きません。 「レ コードおよびページ

圧縮」 も参照して ください。

キー数 key=nnn 0 - 119 データ オン リー ファ イルを作成す

る場合は、 0 を指定します。

キー カウン ト がゼロの場合、 [デー

タのインクルード] および [システ

ム データの使用] は "no" に設定す

るこ とはできません。

ページ サイズ page=nnnn 512 - 9.0 よ り前のファ イル

バージ ョの場合は 4096 バイ

ト (512 バイ トの倍数で 大

4096 バイ ト )

512、1024、1536、2048、2560、3072、3584、4096 または 8192バイ ト (フ ァ イル バージ ョ

ンが 9.0 の場合)

1024、 2048、 4096、 8192 また

は 16384 バイ ト (フ ァ イル

バージ ョ ンが 9.5 以上の場

合)

ページ プリアロケーション * allocation=nnnnn 1 - 65,535 なし。

既存ファイルの置き換え *# replace=<y|n> 適用外 なし。

301

Page 318: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

デ ィ スク リ プシ ョ ン フ ァ イル

データのインクルード * data=<y|n> 適用外 キー オン リー ファ イルを作成する

場合は、 n を指定します。 重複を許

可し、 システム定義のキーを使用す

るキー オン リー ファ イルを作成す

るこ とはできません。

空きスペース スレ ッシ ョ

ルド *fthreshold=<5|10|20|30> 適用外 可変長レ コードのある フ ァ イルの

みに適用できます。 デフォルト値は

5 です。

可変長部割 り 当てテーブ

ル (VAT)huge=<y|n> #vats=<y|n>

適用外 可変長レ コードのある フ ァ イルの

みに適用できます。

インデックス バランス * balance=<y|n> 適用外 なし。

キー番号の使用 * usekeynum=<y|n> 適用外 キー番号の要素と併用されます。

1 システム データの使用 *% sysdataonrecord=<n|loggable>

適用外 要 素 が 指 定 さ れ な い 場 合 は、

MicroKernel の設定が使用されます。

キー オン リーのフ ァ イルを作成す

る場合は、MicroKernel の設定が使用

され、 この要素は無視されます。

ページ圧縮 * pagecompress=<y | n> 適用外 「レコードおよびページ圧縮」 も参

照してください。

キー スペ ッ ク情報

キー番号 * keynum=nnn 0 - 118 ファ イル内で重複せず、 昇順に指定

され、ファ イルのページ サイズに有

効であるこ とが必要です。 ファイル

を作成する場合のみに適用されま

す。

キー ポジシ ョ ン position=nnnn 1 - 8,184 レコード長を超えてはいけません。

キー長 length=nnn キー タイプの制限 キー タ イプが指示する制限を超え

てはいけません。 バイナ リ キーの

キー長は、 偶数であるこ とが必要で

す。キー ポジシ ョ ンとキー長の合計

が、 ファ イルのレコード長を超えて

はいけません。

重複キー値 duplicates=<y|n> 適用外 重複を許可し、 システム定義のキー

を使用するキー オン リー ファ イル

を作成するこ とはできません。

変更可能キー値 modifiable=<y|n> 適用外 なし。

キー タイプ type=validMKDEKeyType

適用外 名前全体 (例、 「float」 ) または 初

の三文字 (例、「flo」) を入力します。

降順ソート * descending=<y|n> 適用外 なし。

表 66 デ ィ スク リ プシ ョ ン フ ァ イルの概要

要素 キーワードとフォーマット 範囲 解説

302

Page 319: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

デ ィ スク リ プシ ョ ン フ ァ イルの要素

オルタネー ト コレーテ ィ

ング シーケンス (ACS)alternate=<y|n> 適用外 大文字小文字を区別する STRING や

LSTRING、WSTRING、WZSTRING、

ZSTRING キーのみに適用できます。

既存フ ァ イルにイ ンデッ ク スを追

加作成する際に、 そのインデッ クス

でデータ フ ァ イルの 初にあ る

ACS 以外の ACS を使用する場合は、

caseinsensitive=y と共に使

用します。

大文字小文字無視のキー * caseinsensitive=<y|n> 適用外 ACS が使用されない STRING、

LSTRING、 または ZSTRING キーの

みに適用できます。

繰り返し重複 * repeatdup=<y|n> 適用外 キー オン リーのフ ァ イルを作成す

る場合は、 繰り返し重複を使用しま

す。 こ の要素を使用する場合は、

duplicates=y を使用します。

ヌル セグメン ト * nullkey=<allsegs | n |anyseg |>

適用外 なし。

ヌル キーの値 value=nn 16 進の 1 バイ ト ヌル セグ メ ン ト 要素に使用されま

す。

セグメン ト キー segment=<y|n> 適用外 なし。

オルタネー ト コレーテ ィ

ング シーケンス のファ イ

ル名と ID

name=sequenceFile また

は countryid=nnn およびcodepageid=nnnisr=table name (%)

有効なパス、つま り、使用中

のオペレーテ ィ ング システ

ムで有効な値、 または -1

オルタネー ト コレーテ ィ ング シー

ケンス要素と共に使用されます。

1 データベース エンジンがシステム キーを追加する場合、 結果レコードがファイルの既存ページ サイズを超えるこ とがあ り

ます。 その場合、 データベース エンジンは、 ファ イルのページ サイズを自動的に次の適切な大きさに調整します。

表 66 デ ィ スク リ プシ ョ ン フ ァ イルの概要

要素 キーワードとフォーマット 範囲 解説

303

Page 320: Advanced Operations GuideAdvanced Operations Guide Procedures and References for Advanced Users 免責事項 Pervasive Software Inc. は、本ソフトウェアおよびドキュメントの使用を、利用者また

デ ィ スク リ プシ ョ ン フ ァ イル

304