我已经安装了lamp,phpmyadmin
2.https://www.linuxbabe.com/ubuntu/install-phpmyadmin-apache-lamp-ubuntu-20-04
3 . https://tec admin . net/how-to-install-PostgreSQL-in-Ubuntu-20-04
之后,我做了以下操作
1.php中未注释的扩展pgsql和pdoggsql。ini文件
2.给出了pg_hba中的信任方法。conf文件
3.GRANT数据库上的所有权限my_dbpostgres;
我已经成功地在 pgadmin4 中建立了我的数据库。但我无法连接到它。下面是我的连接文件。拒绝访问用户“postgres”@“localhost”(使用密码:否)错误。我不知道我错过了什么?
<?php
$host = "localhost";
$db_name = "my_db";
$db_username = "postgres";
$db_password = "";
try {
$dbConnection = new PDO("mysql:dbname=$db_name;host=$host;charset=utf8", "$db_username", "$db_password");
$dbConnection->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$dbConnection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $e){
echo $e->getMessage();
}
?>
通过运行此命令 sudo apt-get install php-pgsql 解决
您将< code>mysql放在连接字符串中,这显然不适用于PostgreSQL。您应该改用< code>pgsql:
$dbConnection = new PDO("pgsql:dbname=$db_name;host=$host", $db_username, $db_password);