Can';无法连接到VM(Ubuntu)中的postgreSQL:对数据库的访问被拒绝
我使用的是一台装有Virtualbox 5.0.16的Windows 10机器,其中运行着Ubuntu 15.10。网络适配器是一个桥接适配器,名称设置为Intel(R)双频无线AS 3165。混杂模式设置为允许所有虚拟机和主机,并选中基础复选框(电缆连接) 在这个Ubuntu中,我运行了一个PostgreSQL 9.4.5实例,其中配置了PostgreSQL.conf和pg_hba.conf文件 在postgresql.conf文件中,我很好地设置了这一行:Can';无法连接到VM(Ubuntu)中的postgreSQL:对数据库的访问被拒绝,postgresql,ubuntu,ssh,virtual-machine,virtualbox,Postgresql,Ubuntu,Ssh,Virtual Machine,Virtualbox,我使用的是一台装有Virtualbox 5.0.16的Windows 10机器,其中运行着Ubuntu 15.10。网络适配器是一个桥接适配器,名称设置为Intel(R)双频无线AS 3165。混杂模式设置为允许所有虚拟机和主机,并选中基础复选框(电缆连接) 在这个Ubuntu中,我运行了一个PostgreSQL 9.4.5实例,其中配置了PostgreSQL.conf和pg_hba.conf文件 在postgresql.conf文件中,我很好地设置了这一行: listen_addresses
listen_addresses = '*'
在pg_hba.conf中,我在底部有以下几行:
# TYPE DATABASE USER ADDRESS METHOD
# IPv4 local connections:
host all all 127.0.0.1/32 md5
host all all 0.0.0.0/0 md5
host all all ::1/128 md5
host all all ::/0 md5
host all all 192.168.1.13 md5
host all all 0.0.0.0/0 md5
目前,我的主机的ip地址是(ipconfig命令和无线)192.168.1.13,来宾机的ip地址是(ifconfig命令)192.168.1.4
当从主机使用pgadmin连接到来宾机时,我收到以下消息:致命:主机“192.168.1.13”没有pg_hba.conf条目,用户“postgres”,数据库“postgres”,SSL关闭
我试图通过ssh连接到我的主机到来宾,但收到一条“网络错误:连接被拒绝”消息。也许这是我对这个问题的一个重要见解
ping在两个方向都起作用。多亏了@DanielVérité
命令
show hba_file
显示我实际编辑的pg_hba不是正确的。我编辑了/etc/postgresql/9.4/main
文件夹中的一个,而postgresql使用的是/opt/postgresql/9.4/data
,这要感谢@DanielVérite
命令
show hba_file
显示我实际编辑的pg_hba不是正确的。我编辑了/etc/postgresql/9.4/main
文件夹中的一个,而postgresql使用的是/opt/postgresql/9.4/data
telnet是否连接到postgres端口telnet 192.168.1.45432
@IldarMusin telnet works。感谢您在更改pg_hba.conf后没有提到重新加载。这是强制性的。为您的操作系统/软件包使用service postgresql reload
或同等版本。@DanielVérité非常感谢您的贡献!我确实重新加载了服务,并使用您提供的命令重新启动了服务。该消息仍然出现。通常无法使用问题中显示的pg_hba.conf获取问题中显示的错误消息。另一个错误来源是在错误的位置编辑pg_hba.conf,或者编辑的pg_hba.conf与正在运行的实例不一致。使用显示hba\u文件来检查。telnet是否连接到postgres端口telnet 192.168.1.45432
@IldarMusin telnet works。感谢您在更改pg_hba.conf后没有提到重新加载。这是强制性的。为您的操作系统/软件包使用service postgresql reload
或同等版本。@DanielVérité非常感谢您的贡献!我确实重新加载了服务,并使用您提供的命令重新启动了服务。该消息仍然出现。通常无法使用问题中显示的pg_hba.conf获取问题中显示的错误消息。另一个错误来源是在错误的位置编辑pg_hba.conf,或者编辑的pg_hba.conf与正在运行的实例不一致。使用显示hba\u文件来检查这一点。