2016-12-14 16 views
0

WindowsクライアントからリモートPostgreSQLサーバに接続しようとしました。 "Dbeaver"を使用してデータベースに接続すると、ネットワーク接続(SSH)を満たして、OKに接続します。.NETのSSHトンネルでpostgresqlに接続

私はVB.NETでアプリケーションを開発していますが、データベースに接続する必要がありますが、そのアプリケーションをポスティングすることはできません。

私はDevart dllを使用してデータベースに接続し、Renci.SshNet dllを使用してサーバーに接続しています。

ログが言うので、私はそれがエラーをスローDDBBに接続しようとしたとき、私は明らかにSSH経由で、サーバに接続するために管理している

no hay una línea en pg_hba.conf para "xx.xx.xx.xxx", usuario "xxx", base de datos "xxxx", SSL inactivo

接続コードは次です:

真=
Dim connectionInfo As New PasswordConnectionInfo(IP, USER, PASS) 
    connectionInfo.Timeout = TimeSpan.FromSeconds(30) 
    client = New SshClient(connectionInfo) 
    client.Connect() 
    Dim portFwld As New ForwardedPortLocal("127.0.0.1", Convert.ToUInt32(PORT_SSH), IP, Convert.ToUInt32(5432)) 
    client.AddForwardedPort(portFwld) 
    portFwld.Start() 
    Log(client.IsConnected) 
    Log(portFwld.IsStarted) 

client.IsConnected =真とportFwld.IsStarted

エラーはここにある(ときオープン):

Dim myConnection As PgSqlConnection = New PgSqlConnection() 
       Try     
        myConnection.ConnectionString = "Server=" & IP & ";Port=5432;Database=" & BBDD_Postgre & ";User Id=" & USER & ";Password=" & PASS & ";" 
        myConnection.Open() 

私は多くの組み合わせを試しましたが、どれも有効ではありませんでした。それ以外に何を見なければ、私は迷っています。私は "Dbeaver"が私のPCから接続できれば、なぜ私のアプリケーションはできないと思いますか?私のサーバがpg_hba.confに自分のIPを追加しなければならないのはなぜですか? "Dbeaver"が実行されていないのですか?

答えて

0

(OPの代わりに掲示)

それは「127.0.0.1」されなければならないときに私のエラーは、接続文字列でのリモートIPを入れた。

myConnection.ConnectionString = "Server=127.0.0.1;Port=5432;Database=" & BBDD_Postgre & ";User Id=" & USER & ";Password=" & PASS & ";" 
関連する問題