我在我的电脑里制作了一个postgres数据库。 (Linux Mint 17) 然后,我制作了一个前端脚本,用于在 pyqt 中管理它。在这个脚本中,我使用localhost设置主机名,如下所示:
self.conexion=QtSql.QSqlDatabase.addDatabase("QPSQL")
self.conexion.setHostName('localhost')
self.conexion.setPort(5432)
...........
没有问题。
现在,我已将其他计算机中的数据库安装到Windows 10的本地局域网中。 如果我通过PgAdminIII,QGIS(是一个空间数据库)或psql从我的Linux PC连接它,我没有问题。服务器的ip在我的本地局域网中是192.168.1.102。
但我不能通过我的脚本连接。我只更改了主机名:
self.conexion=QtSql.QSqlDatabase.addDatabase("QPSQL")
self.conexion.setHostName('192.168.1.102')
self.conexion.setPort(5432)
.........................
但它不起作用。 ¿有什么想法吗?
答案 0 :(得分:0)
您可能需要在配置中设置listen_addresses
,以便它接受来自其他IP地址的连接。对于您的应用类型,将其设置为*
非常典型。
答案 1 :(得分:0)
最后我解决了。我想道歉,因为这是我的错误。 我没有安装 libqt4-sql-psql驱动程序(类似问题:QtSQL - QMYSQL driver not loaded (Ubuntu))
我的错误是因为我格式化Linux PC并且我不记得那些库