2017-03-27 13 views
0

PSQLデータベースへの接続に問題があります。私はC#でプログラムを作りました。私はそれを公開して別のPCに置いていました(アプリケーションをプログラミングしたPC上のデータベースからデータを取得するように設定されていました)。今私は24/7を実行する別のPCにそのデータベースを転送したい、と私はそれをやっている闘争があったが、私は(手動で最後に)それを作った。今、dbがその24/7 PCに設定されていると、私はそれを接続することはできません。 例:私はプログラミングのために使用さラップトップから私のプログラムを起動すると、私はこれを取得:PSQLデータベースにリモートで接続できません。

string Connectionstring = "Server=192.168.130.240;Port=5433;User Id=postgres;" + 
"Password=password;Database=postgres;"; 
NpgsqlConnection conn = new NpgsqlConnection(Connectionstring); 
conn.Open(); 

P.S.:

enter image description here

私の接続文字列は次のようになります私が気づいた違いの1つは、自分のラップトップで私の接続文字列をプログラムしていたのは、IP:127.0.0.1でのみ同じで、PSQLを開くと自動的に起動し、既にログインしていますが、 psql.exeを起動すると起動してシャットダウンしますが、SQL Shell(PSQL)を起動すると、起動するたびにサーバー、データベース、ポート、ユーザー名とパスワードを入力する必要があります。

誰かがこの問題を解決するためにどのように任意のアイデアを持っている場合、これは私のプロジェクトの最終段階であり、私はそれが仕事を得ることができないので、助けてください...

+0

マシンが同じネットワーク上にあり、お互いを見ることができると仮定すると、ポートは通常5432ですので、試してみてください。運がなければ、サーバー上でファイアウォールにポートが着信するようにルールを設定します。 –

+0

@AlexK。私は何かが間違っていた5433 cozにプログラミングしていたときにポートを切り替えましたが、私は両方のソリューションを試してみましょう。 –

+0

1つの可能性のある問題は、非ローカル接続を受け入れるようにpostgresqlを設定する必要があるということです。これを行うには、自分のアドレスをpg_hba.confに追加します。 https://www.postgresql.org/docs/current/static/auth-pg-hba-conf.html – mlinth

答えて

1

はPgSQLのデータベースの着信TCP接続のためのファイアウォールの例外を追加します。ポート。 デフォルトでは、5432ポートです。 これは、データベースがリモートマシン上に保持される場合に必要です。

関連する問題