这可能是一个微不足道的问题,但我可能会弄清楚为什么我无法使用PHP连接到postgresl数据库。
当我通过终端连接到数据库时,我使用命令:
$ psql dbname username
然后我直接进入db
dbname=#
我没有被要求输入密码。
因此,当我使用任何其他编程语言或软件时,我想要说明一个密码来建立与数据库的连接?
修改
我正在使用PHP,我正在关注此示例:http://www.techrepublic.com/blog/how-do-i/how-do-i-use-php-with-postgresql/
特殊连接中没有密码:
$dbh = pg_connect("host=localhost dbname=test user=newbie");
我得到错误:
fe_sendauth no password supplied
检查sudo nano /etc/hosts
以上的主机:
127.0.0.1. localhost
127.0.1.1. ubuntu
与
相同<?php
$dbuser = 'newbie';
$dbpass = '';
$host = 'localhost';
$dbname='test';
$dbh = new PDO("pgsql:host=$host;dbname=$dbname", $dbuser, $dbpass);
}catch (PDOException $e){
echo "Error : " . $e->getMessage() . "<br/>";
die();
}
?>
错误
Error: SQLState[08006] [7] fe_sendauth: no password supplied