1

当社には、いくつかの tomcat Web アプリケーションを実行する古い Linux サーバーがあります。これらのアプリケーションの 1 つが PostgreSQL に接続しています。私は C#.Net/Windows コーダーですが、pGAdmin III (または推奨される同等のもの) を使用して自分のコンピューターからこのデータベースに接続する必要があります。接続を試みると、pgAdmin は Server Not Listening と表示します。

Linux についてあまり知らずに、WinSCP を使用してファイル構造に接続しています。古いアプリ、データ ソース、またはそれらのデータ接続に関するドキュメントはありません。Web アプリの場所が実際に合法であり、実行されていないコピーではないと仮定すると、次のことを確認できました。

PostgreSQL

1 つのアプリの接続情報:

 jdbc:postgresql://localhost:5432/somename

掘り下げた後、サーバーのファイル構造に次の可能性のある postgresql のインスタンスが見つかりました。

\etc\postgresql\8.3\main
\etc\postgresql\8.4\main

非常に異なるタイプのファイルを含む \etc\postgresql-common もあります。

他のインスタンスまたは関連するフォルダーがある場合、私は気づいておらず、どこを見ればよいかわかりません。迷宮の獣です。

構成ファイルで、2 つの修正のうちの 1 つであると想定されていた、listening="*" の両方を確認しました。すでに * に設定されているので、これらのいずれかが正しいと仮定すると、それで問題ないはずです。

古いアプリが実行されてデータをフェッチしているため、postgresql の少なくとも一部のインスタンスがオンになっていることがわかっているため、これが 2 つの修正のうちのもう 1 つです。

pg管理者

ここの別のスレッドで、pgAdmin を再インストールすると問題が解決する可能性があると聞きましたが、解決しませんでした。私はsslの有無にかかわらず試しました。

pgAdmin IIIで接続を設定しようとしている方法は次のとおりです。

名前: ある名前

ホスト: ここでいくつかの組み合わせを試しました。//servername/somename、または単に //servername

ポート: 5432 (予想されたものと一致し、接続からのポートも一致します)

サービス: ブランク

MaintenanceDB: pgadmin、postgres、および接続しようとしている実際のデータベースでデフォルトを試しました。

ユーザー名とパスワード: 古いアプリの接続情報からの資格情報。

サーバーがリッスンしないというメッセージが表示されます。これは、サーバーがオンになっていないことを示唆しています (まあ...一部のデータ ソースがオンで動作しており、WEB-INF のデータはそれが postgresql であることを示唆しています)、または TCP/IP 接続を受け入れていません。これは、私が見つけたpostgresqlのインスタンスによるものです。

ロングストーリーショート

この時点で、次のいずれかが問題であると想定しています...

  1. postgreSQL に入力している接続情報が正しく入力されていませんが、どこが間違っているのかわかりません。

  2. 接続情報 (Web アプリケーション) のソースが悪い/古い/実行中のインスタンスからのものではない (この場合、Linux ではなく、その方法がわからない)。

  3. 私が見つけた postgresql のインスタンスは、それが使用しているインスタンスではなく、見つける方法がわかりません。

  4. ネットワークに関しては怪しいものがありますが、私のコンピューターと Linux サーバーの両方が同じネットワーク上にあるため、あまりありそうにありません。

また、皆さん、将来の貧しい魂のためにあなたのものを文書化してください. 私はあなたが私に提供することができるどんな助けにも感謝します.

4

1 に答える 1