我想使用 mysqli() 使用 PHP(PHP 7.2.24-0ubuntu0.18.04.6 (cli))连接到 Linux 机器上的数据库。但每当我尝试访问它时,都会收到此错误:
Warning: mysqli_connect(): (HY000/1698): Access denied for user 'root'@'localhost' in /var/www/html/connect_DB.php on line 9
Connected Success!
我安装了 MySQL(mysql Ver 14.14 Distrib 5.7.30,适用于 Linux (x86_64),使用 EditLine 包装器),并使用 Apache2 服务器。我没有安装 XAMPP。
我的代码:
error_reporting(E_ALL); ini_set('display_errors', '1');
$mysql_host = 'localhost'; //server
$mysql_user = "root";
$mysql_pass = "root";
$conn = mysqli_connect($mysql_host, $mysql_user, $mysql_pass, "tests");
echo "Connected Success!<br>";
表(“测试”)属于 root 用户...我不知道这是否与它有关,但要打开 mysql,我执行以下操作:
sudo mysql -u root -p
我确实检查过了警告:mysqli_connect():(HY000/1045):拒绝用户“username”@“localhost”访问(使用密码:是)但并没有什么帮助……
答案1
我的问题是 PHP 没有连接到用户 root 的权限,所以我必须创建一个新用户...