 |
User's Guide (v11) |
 |
|
一般的なトラブルシューティング
ここでは、発生した問題の原因を特定するのに役立ついくつかの基本的なトラブルシューティングの手順を提供します。このセクションでは、以下の項目について説明します。
データにアクセスしようとしたときに、1114 というエラーを受け取りました。
または
接続文字列に ServerDSN または DBQ が見つからなかったというエラー メッセージを受け取りました。
PCC では、クライアント DSN なしの接続を使用してリモート サーバー データ ソース(DSN)にアクセスできます。Microsoft Excel および Access などの多くのデスクトップ アプリケーションではこれが行えません。ローカル コンピューター上でクライアント DSN を作成し、リモート サーバー DSN を使用してサーバー上のデータにアクセスできるようにします。クライアント DSN を再作成するには、Windows クライアントからのクライアント アクセスの設定の手順に従ってください。最初に、アクセスするサーバー上にサーバー DSN が存在していることを確認する必要があります。
エンジン コンポーネントのバージョンがクライアント コンポーネントのバージョンと異なっているというメッセージを受け取りました。
クライアントのリクエスターが初めてエンジンに接続すると、クライアントのリクエスターは内部ルーター バージョンと Btrieve Version (26) 呼び出しで返された値を比較します。クライアントのバージョンがエンジンのバージョンよりも古い場合は、"エンジンのコンポーネントのバージョンがクライアントと異なります" というメッセージ ボックスがクライアント システム上で表示され、Pervasive System Analyzer(PSA)を実行するよう提示します。同じメッセージがクライアントの PVSW.LOG ファイルのログにも記録されます。
これは警告メッセージです。この状況では、クライアントはエンジンへの接続を妨げられることはありません。ただし、Pervasive Software が互換性を保証するのは、クライアントがデータベース エンジンと同じバージョンの場合のみです。このメッセージが表示されたときに、PSA の実行を行わずに古いクライアント コンポーネントを保持し、新しいクライアントをインストールした場合は、クライアントのバージョンがエンジンのバージョンと同じになるまで、製品が予期しない動作をすることが考えられます。
メモ
Pervasive は、データベース エンジンと同じバージョンのクライアント リクエスターを使用することをお勧めします。通信するデータベース エンジンより古いバージョンのクライアント リクエスターを使用することもできます。ただし、アプリケーションで使用する SDK アクセス方法のタイプによっては、古いバージョンのリクエスターがデータベース エンジンで動作しないこともあります。アプリケーションはデータベース エンジンと通信できなくなります。そのような状況の場合は、データベース エンジンと同じバージョンのクライアント リクエスターを使用する必要があります。
データベース エンジンよりも新しいバージョンのクライアント リクエスターの場合、正しく機能するかどうかはわかりません。Pervasive では、新しいバージョンのクライアント リクエスターが古いバージョンのエンジンで正しく動作することを保証しません。このため、新しいバージョンのクライアント リクエスターと古いバージョンのエンジンを一緒に使用しないようにしてください。
サーバー エンジン上のデータを取得することができません。
サーバー エンジン上のデータを取得できないときは、ほとんどの場合以下のことが原因です。
- サーバー コンピューターがダウンしているか、またはネットワークが中断されています。
- サーバーへアクセスするオペレーティング システム権限を持っていないか、正しいネットワークにログインしていません。
- クライアント リクエスターが有効ではありません。
- データベース サーバー エンジンがインストールされていないか、実行されていません。
- データベース サーバーがリモート接続を受け付けません。
- リモート データベースが DSN セット アップをネットワーク上に通知していません。
- ローカル クライアントがサーバーにアクセスするための DSN を持っていません。
- クライアントまたはサーバー ネットワーク設定が間違っています。
問題の実際の原因を調べるには
以下の手順に従って、基本的な設定に問題がないかどうかを確認しながら原因を特定してください。
- 接続するサーバー コンピューターを見つけることができる場合は、Windows クライアント上のオペレーティング システムからネットワーク情報にアクセスして表示します。サーバーを表示することができる場合は、そのサーバーがダウンしていない、またはネットワークから切断されていないことが確認できます。
- 次に、あるドライブをファイル サーバーにマップ、またはサーバー上の共有ファイルを開いてみます。ファイル サーバーへ接続し、マップされたドライブ上にファイルを作成することができた場合、オペレーティング システム権限を持っていることが確認できます。また、正しいネットワークにログインしていることも確認することができます。特定のネットワークにログインしていない場合、そのネットワーク上のサーバーにはまったくアクセスすることはできません。
メモ
サーバー上に新しいデータベースを作成する場合にリモート サーバー エンジンに対して Monitor を使用したり、またはリモート サーバーを設定するには、サーバー上での管理者権限を持っているか、あるいは Pervasive_Admin のメンバーである必要があります。単純なドライブのマッピングや共有ファイルの読み込みでは、管理者権限を持っているかどうかわかりません。つまり、ファイル サーバーへ接続することは可能でも、設定プロパティ、Monitor、またはデータベース作成ウィザードを使ってデータベース エンジンに接続することはできない場合があるということです。
- 次に考えられる原因は、クライアント リクエスターが無効である可能性です。
- [スタート]メニューの[Pervasive PSQL]グループから PCC を起動します。お使いのローカル クライアント コンピューターを示すアイコンを右クリックし、次に[プロパティー]をクリックします。[アクセス]をクリックし、[リモート MicroKernel エンジンの使用]が選択されていることを確認します。
- これにより、リクエスターには問題がないことが確認できます。
- 次に、Pervasive PSQL がターゲット サーバー上にインストールされ、起動しているかどうかを調べます。
- Windows で、[管理ツール]の[サービス]を開きます。Pervasive PSQL Transactional Engine および Pervasive PSQL Relational Engine が開始されていることを確認します。停止していた場合は、これらのサービスを開始します。
- Linux では、データベース エンジンがインストールされているサーバー上の Linux プロンプトで以下のコマンドを入力します。
- コマンドからの出力で、テキスト "mkde" を含む最低 1 行が返された場合、Pervasive PSQL が起動しています。この行が表示されない場合、root アカウントにログインし、以下のように入力してデータベース エンジンを起動する必要があります。
/etc/init.d/psql start
- これで、サーバー エンジンがインストールされ、起動していることが確認できます。
- 次の手順では、サーバー エンジンがリモート通信リクエストを受け付けているかどうかを確認します。
- PCC で、リモート データベース エンジンがリモート リクエストを受け付けるよう設定されていることを確認します。リモートで Windows 32 ビット サーバー エンジンにアクセスすることが困難な場合は、サーバーで直接設定を確認する必要があります。これを行うには、サーバーでの管理者権限を持っている(または、Pervasive_Admin グループのメンバーである)必要があります。PCC でサーバーを右クリックし、次に[プロパティー]をクリックします。[アクセス]をクリックし、[リモート リクエストの受付]が選択されていることを確認します。
- これにより、サーバーがリモート リクエストを受け付けていることが確認できます。
- メモ:アプリケーションで ODBC を使わず単に Btrieve アクセスのみを使用していた場合は、この手順を省きます。
- 今までの確認事項を満たした上で、まだデータをアクセスできない場合は、ターゲット データのサーバー DSN が設定されているかどうかを確認します。PCC を使用してサーバーの[データベース]ノードを開き、存在するデータベースを調べることができます。データベースの中で、アクセスするデータが存在することを確認します。そうであれば、サーバー DSN はデータ用に作成されています。
- アクセスしたいデータは見つからないが、サーバー上にそのデータが存在していることがわかっているときは、ほとんどの場合、そのデータ用の DSN を設定する必要があります。これを行うには、サーバーでの管理者権限を持っている(または、Pervasive_Admin グループのメンバーである)必要があります。
- ODBC データベース アクセスの設定の手順に従い、既存のデータ ファイル用の DSN を設定します。
- これにより、サーバー DSN には問題がないことが確認できます。
- メモ:アプリケーションで ODBC を使わず単に Btrieve アクセスのみを使用していた場合は、この手順を省きます。
- 上述のすべての手順を実行した上で、まだデータにアクセスできない場合は、次にリモート データのローカル クライアント DSN が設定されているかどうかを確認します。
- PCC では、クライアント DSN なしの接続を使用してリモート サーバー データ ソース(DSN)にアクセスできます。Microsoft Excel および Access などの多くのデスクトップ アプリケーションではこれが行えません。ローカル コンピューター上でクライアント DSN を作成し、リモート サーバー DSN にアクセスできるようにします。クライアント DSN を再作成するには、Windows クライアントからのクライアント アクセスの設定の手順に従ってください。最初に、アクセスするサーバー上にサーバー DSN が存在していることを確認する必要があります。
- これにより、クライアント DSN には問題がないことが確認できます。
- 最後に、クライアントとサーバーが適切なネットワーク プロトコル上で通信しているかどうかを確認します。デフォルトで、Pervasive PSQL ではすべてのネットワーク プロトコルを有効にして送るため、すべてのプロトコルの試行によって接続時間は遅くなりますが、最終的には接続します。アプリケーションで通常使用しないプロトコルを無効にするアプリケーション ベンダーもあります。
- 最初に、ネットワーク上で使用しなければならないプロトコルを決定します。Linux ネットワークまたは 完全な Microsoft ネットワークの場合、適切なプロトコルは TCP/IP です。
- 適切なプロトコルがわかれば、サーバーがそのプロトコルを使用していることを確認する必要があります。サーバー オペレーティング システムでの管理者権限を持っている(または、Pervasive_Admin グループのメンバーである)必要があります。PCC でサーバー名を右クリックし、次に[プロパティー]をクリックします。[通信プロトコル]をクリックします。[サポート プロトコル]の一覧に正しいプロトコルが表示されていて、TCP/IP が選択されていることを確認します。
- クライアントが同じプロトコルを使用していることを確認します。PCC を使用し、ローカル クライアントを右クリックし、次に[プロパティー]をクリックします。[通信プロトコル]をクリックし、[サポート プロトコル]で正しいプロトコルが選択されていることを確認してください。
- 以上のすべてのタスクを行っても、まだデータにアクセスできない場合は、Pervasive PSQL のリソースおよび問い合せ先で、その他の方法を参照してください。
PCC は大きなレコード セットを取得する際に処理速度が低下したりハングしたりします。
このような問題が起きた場合は、PCC の起動時に使用できるメモリを増やしてみてください。指定できるメモリ量は、お使いのマシン上にインストールされている物理メモリによってのみ制限されます。最小および最大メモリ量を指定できます。たとえば、最小および最大に 256 メガバイトを指定するには、PCC を以下のコマンドで起動します。
pcc.exe -vmargs -Xms256M -Xmx256M
パラメーター -vmargs
は、その他のパラメーターを指定する場合に必要です。
パラメーター -Xms
は PCC に割り当てるメモリの最小量を指定します。パラメーター -Xmx
は PCC に割り当てるメモリの最大量を指定します。-Xms
パラメーターを指定した場合は、-Xmx
パラメーターも指定する必要があります。
 Pervasive PSQL メッセージ ログ |
 PCC からのエラー メッセージ |
|