2016-10-03 2 views
1

내 컴퓨터에 postgres 데이터베이스를 만들었습니다. (리눅스 민트 17) 그럼, 그것을 관리하기위한 프론트 엔드 스크립트를 만들었습니다. pyqt. 이 스크립트에서는 다음과 같이 localhost를 사용하여 호스트 이름을 설정했습니다.원격 서버 pyqt에 대한 호스트 이름 설정

self.conexion=QtSql.QSqlDatabase.addDatabase("QPSQL") 
self.conexion.setHostName('localhost') 
self.conexion.setPort(5432) 
........... 

문제없이 작동합니다.

이제 Windows 10을 사용하여 다른 컴퓨터의 데이터베이스를 로컬 LAN에 설치했습니다. Linux PC 물마루 PgAdminIII, QGIS (우주 데이터베이스) 또는 psql에서 문제가 없습니다. 서버의 IP는 내 로컬 LAN에서 192.168.1.102입니다.

하지만 물마루 스크립트를 연결할 수 없습니다. 호스트 이름 만 변경했습니다 :

self.conexion=QtSql.QSqlDatabase.addDatabase("QPSQL") 
self.conexion.setHostName('192.168.1.102') 
self.conexion.setPort(5432) 
......................... 

그러나 작동하지 않습니다. ¿ 아이디어가 있으십니까?

답변

0

마지막으로 해결했습니다. 나는 그것이 실수 였기 때문에 사과하고 싶다. 내가 설치하지 않은 libqt4-SQL-psql의 드라이버 (여기에 비슷한 질문 : QtSQL - QMYSQL driver not loaded (Ubuntu)는) 그것을 내가 리눅스 PC를 포맷하고 난

0

다른 ip 주소에서 연결을 허용하도록 구성에 listen_addresses을 설정해야 할 수도 있습니다. 자신의 응용 프로그램 유형에 맞게 *으로 설정하는 것이 일반적입니다.

+0

감사합니다 그 라이브러리를 기억하지 못했지만, 때문에

내 실수입니다 문제가되지 않습니다. 내가 말했듯이이 PC에서 pgAdmin, psql 및 QGIS로 연결할 수 있으며 192.168.1.102와 같은 서버 IP를 설정합니다. 어쨌든 나는 postgresql.conf를 읽었고 "listen_addresses"는 '*'를 설정하고있다. – user3733164

관련 문제