Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.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
Database 与数据库的连接失败-服务器意外关闭了连接。这可能意味着服务器异常终止_Database_Postgresql_Lazarus - Fatal编程技术网

Database 与数据库的连接失败-服务器意外关闭了连接。这可能意味着服务器异常终止

Database 与数据库的连接失败-服务器意外关闭了连接。这可能意味着服务器异常终止,database,postgresql,lazarus,Database,Postgresql,Lazarus,其余的错误是“处理请求之前或期间” 我有一台CentOS服务器在内部网络方案上运行Postgres192.168.11.0/24,我还为其安装并运行了pgAdmin4。pgAdmin正在通过本地主机连接,我可以成功连接到我的数据库 我在192.168.11.100上运行windows 10客户端,Lazarus正在尝试连接TPQConnection对象。当我单击“Connected”属性并填写所有连接信息时,会出现此错误 服务器正在192.168.11.25上运行 我提取了Postgres客户端

其余的错误是“处理请求之前或期间”

我有一台CentOS服务器在内部网络方案上运行Postgres192.168.11.0/24,我还为其安装并运行了pgAdmin4。pgAdmin正在通过本地主机连接,我可以成功连接到我的数据库

我在192.168.11.100上运行windows 10客户端,Lazarus正在尝试连接TPQConnection对象。当我单击“Connected”属性并填写所有连接信息时,会出现此错误

服务器正在192.168.11.25上运行

我提取了Postgres客户端库,并将其保存在我运行的Postgres版本(12.5)的系统路径(bin目录)中

我的pg_hba.conf文件设置为允许连接-以下是相关行:

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
host    all             all             192.168.11.0/24         md5
# IPv6 local connections:
host    all             all             ::1/128                 md5
我已经为postgres用户设置了密码,并验证了该帐户与pgAdmin一起工作

我不确定这是否与Lazarus有关,或者这是否是postgres客户端库的问题

我还尝试安装Postgres ODBC客户端,并尝试创建DSN,但也没有成功。我猜这可能是服务器上的配置问题,但不确定


里奇

我终于明白了——我为此挣扎了两天!默认情况下,Postgres只在本地主机上侦听

我必须编辑postgresql.conflisten_addresses参数,并将其设置为
'*'
或等效的IP地址,如果我想更严格一些的话。由于pg_hba.conf限制了可以从哪些地址登录,因此对侦听地址使用
'*'
似乎就足够了

从那以后,我就可以和拉撒路联系了


里奇

一定是别的原因。如果
listen\u addresses
错误,您将得到“连接被拒绝”。查看服务器日志。@LaurenzAlbe您可以通过端口转发看到这一点。网络设备看到端口转发已配置,并首先接受连接,然后尝试转发。当它收到“连接被拒绝”响应时,它拒绝上游请求已经太迟了,所以它只是挂断了它。它给出了相同的错误,不管是本地的还是通过互联网的。本地将没有端口转发,我收到了相同的错误。