Postgres无法在Azure中的Windows Server 2016上启动
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Postgres无法在Azure中的Windows Server 2016上启动相关的知识,希望对你有一定的参考价值。
我在Azure VM上的Windows Server 2016上启动Postgres 9.6.6时遇到问题。
当我尝试启动Postgres时,它会生成一个包含以下内容的日志文件:
LOG: could not bind IPv6 socket: Permission denied
HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
LOG: could not bind IPv4 socket: Permission denied
HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry.
WARNING: could not create listen socket for "localhost"
FATAL: could not create any TCP/IP sockets
LOG: database system is shut down
它是一个全新的VM,我修改了postgresql.conf和listen_addresses以包含127.0.0.1但我仍然得到相同的绑定错误。
如果我在VM上运行nslookup,我收到以下内容;
Server: Unknown
Address: 148.43.119.15
*** UnKnown can't find localhost: Non-existent domain
所以我认为查找因localhost而失败的事实可能导致问题。我修改了VM上的hosts文件:
127.0.0.1 localhost
:1 localhost
但是同样的错误正在发生,所以我认为我没有在网络方面设置但不确定在哪里看。
如果我的理解是正确的,148.43.119.15
是你的VM的公共IP。你无法在IP上听postgresql,如果我跟你设置类似,我会得到相同的结果。
请修改postgreqls.conf
listen_addresses = '*'
对于Azure VM,如果要使用Public IP访问postgresql,则需要Azure NSG和Windows防火墙上的开放端口。
以上是关于Postgres无法在Azure中的Windows Server 2016上启动的主要内容,如果未能解决你的问题,请参考以下文章
忘记 Postgres 上的管理员密码(Windows 安装),无法重置
Windows Azure 虚拟机,Server 2012,无法激活 0xC004F074
azure terraform 将 azure 文件共享附加到 Windows 机器
azure VPN无法在Windows Server 2012上运行
无法通过 Spring Boot 将 Docker Desktop Kubernetes (Windows) 服务连接到本地 Postgres db