2016-10-03 107 views
1

我在我的電腦中創建了一個postgres數據庫。 (Linux Mint 17) 然後,我製作了一個前端腳本,用於管理它在pyqt。在這個腳本中,我使用localhost設置主機名,如下所示:設置遠程服務器的主機名pyqt

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

它可以正常工作。

現在,我已經將其他計算機上的數據庫安裝到本地局域網中,使用Windows 10. 如果通過PgAdminIII,QGIS(是一個空間數據庫)或psql連接它,我沒有任何問題。我的本地局域網中的服務器IP地址是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)

我的錯誤是因爲我格式化Linux的PC,我不記得那些庫

0

你可能需要設置listen_addresses在你的配置,使其接受來自其他IP地址的連接。對於您的應用類型,將其設置爲*是相當典型的。

+0

謝謝你,但它不是問題。正如我所說,我可以從這臺PC與pgAdmin,psql和QGIS連接,設置服務器的IP地址,如192.168.1.102。無論如何,我已閱讀postgresql.conf和「listen_addresses」設置'*' – user3733164