php-无法使用PDO连接到数据库

时间:2019-03-16 11:39:37

标签: php mysql pdo

我在连接到本地数据库时遇到问题。 由于某些原因,当我尝试连接时,它显示以下错误:

连接失败:SQLSTATE [HY000] [1045]用户'root'@'localhost'的访问被拒绝(使用密码:NO)

我设法与用户连接到我的phpmyadmin,并使用命令行,但是当我尝试使用我的php脚本时,我无法。但是我以前确实做到了。

我使用一个简单的PDO连接代码:

<?php
define('DB_USER', "root");
define('DB_PASSWORD', "");
$DB_SERVER = "localhost";
$DB_DATABASE = "app-db";

try {
    $conn = new PDO("mysql:host=$DB_SERVER;dbname=$DB_DATABASE", DB_USER, DB_PASSWORD);
    // set the PDO error mode to exception
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
    echo "Connection failed: " . $e->getMessage();
}

我也尝试过使用“新的mysqli(主机,用户,密码)”和“ mysqli_connect(主机,用户,密码,数据库)”以及相同的响应,拒绝用户访问。

任何帮助都会很棒。

已解决:

显然我有2个mysql进程正在运行,而我使用的进程不在默认端口上。

1 个答案:

答案 0 :(得分:0)

您确定数据库引擎已打开吗?该用户没有密码?也许是root root?

小提示: 如果不应该解释您的字符串,请使用'相反',它将更快。 例如:

define('DB_USER', 'root'); 
define('DB_PASSWORD', ''); 
$DB_SERVER = localhost';
$DB_DATABASE = 'app-db';