Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用.NET中的SSH隧道连接到postgresql_.net_Postgresql_Ssh_Tunneling - Fatal编程技术网

使用.NET中的SSH隧道连接到postgresql

使用.NET中的SSH隧道连接到postgresql,.net,postgresql,ssh,tunneling,.net,Postgresql,Ssh,Tunneling,我尝试从Windows客户端连接到远程PostgreSQL server。 当我使用“Dbeaver”连接到数据库时,我需要填充网络连接(SSH),它连接正常 我正在VB.NET中开发一个应用程序,它必须连接到数据库,但我不能使它成为可能 我使用Devart dll连接到数据库,使用Renci.SshNet dll连接到服务器 我已成功连接到服务器,显然是通过SSH连接的,因为日志显示,但当我尝试连接到DDBB时,它会抛出一个错误: 没有关于pg_hba.conf第“xx.xx.xx.xxx”段

我尝试从Windows客户端连接到远程PostgreSQL server。 当我使用“Dbeaver”连接到数据库时,我需要填充网络连接(SSH),它连接正常

我正在VB.NET中开发一个应用程序,它必须连接到数据库,但我不能使它成为可能

我使用Devart dll连接到数据库,使用Renci.SshNet dll连接到服务器

我已成功连接到服务器,显然是通过SSH连接的,因为日志显示,但当我尝试连接到DDBB时,它会抛出一个错误:

没有关于pg_hba.conf第“xx.xx.xx.xxx”段、通常为“xxx”段、基准为“xxxx”段、SSL不活动段的说明

连接代码是下一个:

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=true和portFwld.IsStarted=true

错误在此处(打开时):

我尝试了很多组合,但没有一个是有效的,我不知道还能看什么,我迷路了。我想如果“Dbeaver”可以从我的PC连接,为什么我的应用程序不能?如果没有“Dbeaver”运行,为什么我的服务器必须在pg_hba.conf中添加我的IP?

(代表OP发布)

当远程IP必须为“127.0.0.1”时,我的错误被放入连接字符串中:

(代表OP发布)

当远程IP必须为“127.0.0.1”时,我的错误被放入连接字符串中:

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