由于postgresql没有正确设置允许的IP导致的,导致我们远程连接一个数据库服务器的时候往往不能连接上
A机器安装PostgreSQL,默认端口5432
想实现B机器通过远程连接A机器的PostgreSQL服务。
1.如果A机器启动Windows防火墙,则在“例外”中“添加端口”加上5432端口。
2.在postgresql.conf中的修改
listen_addresses = '*'
port = 5432
3.在pg_hba.conf中添加
host all all 192.168.1.2/32 trust
在B机器上用phpPgAdmin试试连接A机器192.168.1.1
const char* connInfo = "host=* dbname=postgres user=postgres password=root port=5432 connect_timeout=5";
PGconn *conn = PQconnectStart(connInfo);
//pgui_exec();
ConnStatusType connStatus = PQstatus(conn);
if (connStatus != CONNECTION_OK)
{
fprintf(stderr, "Connection to database failed: %s",
PQerrorMessage(conn));
//exit_nicely(conn);
}