我在电脑上安装了PostgreSQL 9.3。当我尝试通过pgAdminIII启动数据库时,我收到以下错误。
连接到服务器时出错:收到对SSL协商的无效响应
我通过编辑配置文件中的端口号将端口号设置为5432。 但是,当我安装postgresql时,我输入5432作为端口号,它给了我一条错误信息,"无法连接此端口。港口不可用"我不得不继续使用端口号5433.后来我在配置文件中将端口号更改为5432并重新启动了我的电脑。但我仍然得到同样的错误。请帮忙。
答案 0 :(得分:5)
我遇到了这个问题,花了一段时间才意识到我实际上是在尝试使用psql
客户端连接到 MySQL 服务器。.
答案 1 :(得分:2)
我解决了问题。我杀死了端口号为5432的pid,然后重新安装了端口号为5432的postgresql。我仍然收到端口号为5432的错误。最后转到控制面板 - >管理工具 - >服务 - >右键单击postgresql service->专长 - >登录标签 - >选中单选按钮本地系统帐户,然后单击确定。现在启动服务器。它将开始工作。
答案 2 :(得分:1)
您好我试图检查监听端口并得到以下结果
Proto Local Address Foreign Address State
TCP india:epmap india:0 LISTENING
TCP india:microsoft-ds india:0 LISTENING
TCP india:8162 india:0 LISTENING
TCP india:1085 india:0 LISTENING
TCP india:1563 localhost:1564 ESTABLISHED
TCP india:1564 localhost:1563 ESTABLISHED
TCP india:5152 india:0 LISTENING
TCP india:5432 india:0 LISTENING
TCP india:netbios-ssn india:0 LISTENING
TCP india:2072 74.125.68.125:5222 ESTABLISHED
TCP india:2305 maa03s04-in-f13.1e100.net:http TIME_WAIT
TCP india:2331 maa03s04-in-f25.1e100.net:http TIME_WAIT
TCP india:2352 124.124.252.173:http TIME_WAIT
TCP india:2353 124.124.252.173:http TIME_WAIT
TCP india:2378 maa03s04-in-f26.1e100.net:http ESTABLISHED
TCP india:2396 74.121.141.85:http ESTABLISHED
答案 3 :(得分:0)
在我的情况下(WSL中的Ubuntu 18.04),我得到了相同的错误,结果是运行postgresql的端口号与我的Ruby on Rails应用程序{{ 1}}文件。
您可以通过运行以下命令在Linux中找到postgresql端口:
port
备注:12是postgresql的安装版本,您的情况可以不同。
答案 4 :(得分:0)
psql: error: could not connect to server: received invalid response to SSL negotiation: H
如果我们尝试使用http模式/协议访问通过haproxy / nginx等代理容器服务公开的postgres容器服务,也会遇到上述错误。
我们需要使用tcp模式/协议。
请尝试以下详细信息。
nginx.conf
events {}
stream {
upstream postgres {
server pdb:5432;
}
server {
listen 5432;
proxy_pass postgres;
}
}
haproxy.cfg
global
log 127.0.0.1 local1
maxconn 4096
defaults
mode http
maxconn 2048
frontend postgresDB
bind *:5000
mode tcp
timeout connect 5s
timeout client 5s
timeout server 5s
default_backend postgresDB
backend postgresDB
mode tcp
server pdb pdb:5432 check inter 5s rise 2 fall 3
容器部署
sudo docker run -d --name testdb 'POSTGRES_PASSWORD=123456' postgres
sudo docker run -d --name pdb -e 'POSTGRES_USER=admin' -e 'POSTGRES_DB=testdb' -e 'POSTGRES_PASSWORD=admin123456' postgres
sudo docker run -d --name nginx-TCPreverseProxy -p 5432:5432 --link pdb:pdb -v /home/admin/nginx.conf:/etc/nginx/nginx.conf nginx
sudo docker run -d -p 5000:5000 --name haproxy --link pdb:pdb -v /home/admin/haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg haproxy
#Testing of connection
sudo docker exec -it -u 0 testdb bash
#Inside test postgres container
#checking connection through nginx-proxy
root@34211600c3f7:/# psql -h 192.168.0.2 -p 5432 -d testdb -U admin -W
#checking connection through haproxy-proxy
root@34211600c3f7:/# psql -h 192.168.0.2 -p 5000 -d testdb -U admin -W