我正在使用 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/