psycopg2.OperationalError: could not connect to server: Connection refused
Is the server running on host "45.32.1XX.2XX" and accepting
TCP/IP connections on port 5432?
远程数据库端口已经打开了:
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 11516/postgres
tcp6 0 0 ::1:5432 :::* LISTEN 11516/postgres
网上查说要修改pg_hba.conf
,但是我在postgresql
根目录找不到这个文件,而且在我另一台我可以连接成功服务器上,也不存在这个文件。
求大神解答!感谢~
PHP中文网2017-04-18 09:45:52
공식 문서를 읽어보는 것이 좋습니다:
https://www.postgresql.org/do...
일반적으로 postgresql의 기본 규칙은 매우 비정상적으로 설정되어 있어 localhost 연결만 허용합니다. 귀하의 경우 pg_hba.conf를 수정해야 합니다. 이 파일의 경로는 Linux 배포판과 설치에 따라 다릅니다. 인원의 선호도가 존재하지만, 분명 존재하는 것은 확실하므로 그 경로만 검색하면 됩니다
locate pg_hba.conf
또는 find / -type f -iname "pg_hba.conf" 2>/dev/null
찾은 후 보안 정책을 수정하세요. 기본적으로 간단한 설명이 있어서 이해하기 쉽습니다(로컬 IP 주소 허용)
수정이 완료된 후 postgresql 서비스를 다시 시작하면 괜찮습니다
PHPz2017-04-18 09:45:52
pg_hba.conf
파일 수정만으로는 충분하지 않으며, postgresql.conf
의 listen_addresses
구성 항목
postgresql의 PGDATAshow data_directory;
는
高洛峰2017-04-18 09:45:52
mysql -uroot -p - P -h
을 사용하여 원격으로 mysqld에 로그인할 수 있는지 확인해 보세요.
참고 질문 Linux 터미널은 mysql 데이터베이스에 연결할 수 있지만 php 프로그램을 통해 mysql에 연결할 수 없습니다.