对于我的Django项目,我使用'postgresql_psycopg2',我的数据库驻留在网络上的公共服务器上。如何使用IP地址作为“主机”连接到该数据库,就像我们在MySQL中一样?我试过但它总是显示以下错误:
> / _的操作错误 无法连接到服务器:连接被拒绝 服务器是否在主机“”上运行并接受端口5432上的TCP / IP连接?
答案 0 :(得分:2)
您的问题与Django无关,您只需将数据库服务器的ip放在DATABASES['default']['host']
中,就像您一样。
问题是postgresql默认拒绝远程访问。您必须首先编辑数据库服务器上的pg_hba.conf
文件,并在其中添加如下所示的行:
host db_name user_name 192.168.1.1/32 md5
您放置目标数据库和用户(与您在django设置中输入的数据库和用户相同),并指定允许主机通过该用户连接到该数据库的IP范围。然后重新启动postgresql,现在可以远程连接到您的数据库。还要检查是否有任何防火墙阻止您访问数据库服务器上的该端口。