PostgreSQL远程数据库连接

时间:2022-12-11 15:42:49

由于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);
}