php - MySQL 错误 1045 访问被拒绝

标签 php mysql mysql-error-1045

早上好

我在本地 Windows 7 PC 上编写了下面的代码块并尝试运行它。不幸的是,我收到了:

Connect Error (1045) Access denied for user 'dbuser'@'myhost(using password: YES)

我已授予 dbuser Insert、Select、Update 和 Execute using localhost 和 % 用于此数据库模式。我也可以从服务器上的命令行执行 mysql -u dbuser -p。

这是代码块:

<?php
/* Set Variables */
$host="serveripaddress";
$db="dbname"; 
$username="dbuser";
$pass="pass";

/* Attempt to connect */
$mysqli=new mysqli($host,$username,$pass,$db);
if (mysqli_connect_error()){
die('Connect Error (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
echo 'Success... ' . $mysqli->host_info . "\n";

$mysqli->close();

}
?>

我很难理解是上述代码块导致了我的错误,还是需要在服务器上执行某些操作。谁能建议一些调查领域?

谢谢, 席德

最佳答案

确保如果您在 MySQL 中为 GRANT 使用主机名,MySQL 可以将该主机名正确解析为您连接的 IP。

例如,如果你这样做

GRANT blah ON *.* to user@somehost

您必须记住,MySQL 不会看到“somehost”,它会看到 IP 地址。它必须进行反向查找才能获得主机名,如果 IP 没有反向映射,或者映射到完全不同的东西,MySQL 将不会提供访问权限。

除非你能保证反向映射是稳定的,否则在MySQL中远程访问账户最好使用IP地址。

关于php - MySQL 错误 1045 访问被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3532868/

相关文章:

php - 预览图像在 Jw Player 6 中不起作用

php - 将 HTML 转换为 doc 和 docx 格式时的分页符 - PHP

php - 如何使 Firefox 开发人员工具在控制台中显示 FirePHP 消息?

php - 图片库包含数据库中的缩略图,每个缩略图都与其他图像相关

mysql - 将数据存储在代表各个数据类型的表中 - 为什么这是错误的?

MySQL 错误 1045 (28000) : Access denied for user 'bill' @'localhost' (using password: YES)

mysql - 模拟 row_number() MySQL

MySQL:无法访问根帐户

php - MySQL登录错误警告

mysql - 使用异常密码通过命令行登录MySQL