作者nconqd (希望一切顺利...)
看板Database
标题[SQL ] PostgreSQL的连线问题
时间Sun Dec 13 22:19:58 2009
各位先进 大家好:
小弟这几天在设定一台主机,环境为Fedora12。
在安装apache和postgresql後,我直接写一支测试资料库连结的程式,其中发现一个问题
我的程式码如下:
$testDb=pg_connect("host=localhost dbname=template1 user=postgres
password=123456");
if(!$testDb){
echo "连线失败";
}else{
echo "连线成功";
}
如果以以上程式码去执行,会有error出现
php warning:Pg_connect:unable to connect to PostgreSQL server:could not
connect to server: Permission denied Is the server running on host
"127.0.0.1" and accepting TCP/IP connections on port 5432
但如果我把程式码第一行改为
$testDb=pg_connect("dbname=template1 user=postgres password=123456");
程式就可成功执行
不过这样的设定应该是有问题的吧!!
怎在db连线的时候,指定host会有问题,而如不指定host就可成功
我在pg_hba.conf的设定为
# TYPE DATABASE USER CIDR-ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all password
# IPv4 local connections:
host all all 127.0.0.1/32 password
host all all 127.0.0.1 255.255.255.0 password
# IPv6 local connections:
host all all ::1/128 md5
我想请问各位先进,小弟在哪边的设定有问题???
烦请各位先多多指教罗!!!
先说谢谢了.....^^
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.137.115.41
1F:→ jlovet:没有指定的时候会连线unix socket 12/13 23:18
2F:→ jlovet:把localhost改成127.0.0.1呢? 12/13 23:22
3F:→ nconqd:我有试着把host设为"127.0.0.1"....不过问题还是一样... 12/14 09:10
4F:→ nconqd:所以才想说是不是主机上的哪边设定有问题??? 12/14 09:16
5F:→ jlovet:用psql去连线的话可以嘛? 12/14 22:33
6F:→ nconqd:恩恩...只有网页会连线错误...不过pgadmin都正常连线... 12/14 22:46
7F:→ nconqd:我有找到一个方法...就是修改/etc/selinux底下的config.... 12/14 22:54
8F:→ nconqd:SELINUX=enforcing改为SELINUX=disable...就可正常运作了.. 12/14 22:58
9F:→ nconqd:只是不知道这样会有甚麽影响.... 12/14 23:11
10F:→ nconqd:发现不用关掉selinux,把其中连接database的部分打开就可以 12/14 23:35