php - 在 Mac 上的 XAMPP 中连接到 MySQL 数据库

标签 php mysql xampp

我正在使用 cakePHP 连接到 XAMPP phpMyAdmin 中的数据库。我添加了一个新用户,设置了密码并设置了权限。我一生都无法在本地主机上创建与数据库的连接。到目前为止我所做的......我有一个带有数据库的实时网络服务器。我可以毫无问题地连接到该数据库。我有一个数据库在本地主机上的 MySQL 工作台中运行。我可以连接到这个没问题。这告诉我,我的连接代码没有任何问题,问题必须出在 XAMPP 中的 phpMyAdmin 上。我创建了一个简单的连接 PHP 脚本来尝试连接到数据库,但它不起作用。相同的脚本可以连接到我的实时 Web 服务器和本地主机 MySQL 工作台数据库,但不能连接到我的 XAMPP 数据库。我的连接脚本如下:

<?php

   $con= mysqli_connect("localhost","root","","test");
   // Check connection
   if (mysqli_connect_errno())
   {
      echo "Failed to connect to MySQL: " . mysqli_connect_error();
   }

   // Perform a query, check for error
   if (!mysqli_query($con,"INSERT INTO Persons (FirstName) VALUES ('Glenn')"))
   {
        echo("Error description: " . mysqli_error($con));
   }

   mysqli_close($con);

?>

我收到的错误消息是;

Failed to connect to MySQL: Access denied for user 'root'@'localhost' (using password: NO)Error description:

如果我转到 XAMPP 中的 phpMyAdmin 并转到测试数据库,我可以清楚地看到该用户具有完全访问权限。我尝试使用主机名 127.0.0.1、localhost 和::1。似乎什么都不起作用。我只是不明白为什么 XAMPP 不允许我连接到数据库。我希望我没有遗漏一些明显的东西,因此我们将不胜感激任何帮助。 here is a screen shot of the users and their privilleges for the database test

最佳答案

这是为什么人们永远不应该使用“root”的第二个原因,除非人们确切地知道自己在做什么。只有少数过期的人真正知道他们每时每刻在做什么......

在本地主机上添加特定的用户帐户(例如“data”),并授予其数据库所需的权限。

关于php - 在 Mac 上的 XAMPP 中连接到 MySQL 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39151731/

相关文章:

php - 激活 pcntl_fork() ubuntu xampp

php - 使用 MySQL 进行土耳其语字符编码

mysql - GlassFish 无法连接到 mysql (XAMPP)

php - 由于 Apache2.4,XAMPP Apache 未启动

javascript - PHP中如何动态持续增加html表的数量

php mysql 提供独特的凭证

php - 搜索 3 个表及其相关表的最有效方法是什么?

mysql - 如何优化我的数据库?

mysql - 启用 MySQL 性能监视器

php - 使用准备好的语句进行 ORDER BY