【发布时间】:2017-05-03 20:56:36
【问题描述】:
这是我的代码:
<html>
<body>
<?php
$servername = "localhost";
$username = "guest";
$password = "#Guest123";
$database = "My_first_Database";
$conn = new mysqli($servername, $username, $password, $database);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>
</body>
</html>
上传到我的网络服务器后,页面显示:
连接失败:用户 'guest'@'localhost' 的访问被拒绝(使用 密码:是)
我知道这样的问题通常是由于 'guest' 没有正确的权限,但 'guest' 拥有此数据库的所有权限。所以我不明白为什么我不能用这个用户访问数据库。
很抱歉,如果以前在这里问过这个问题,但是每个人都说要授予用户权限(我已经这样做了)。
已解决:mysql 在使用 GRANT ALL 时没有正确授予所有权限。必须手动授予权限
【问题讨论】:
-
您使用的密码是否正确? PS:在公共论坛上发布您的密码是一种非常糟糕的做法。
-
好吧,我真的希望“#Guest123”不是他的密码。但是,此错误通常是因为密码不正确或其他一些身份验证问题。 ;)
-
那是相当虚伪的......如果相同的凭据在端口 3306 上工作怎么办?在公开发布凭据时,通常最好对凭据进行编辑。
-
让您的数据库管理员确保您已获得“用户名”@“本地主机”的凭据。 FlamingGenius,我明白你的意思,但那是“默默无闻的安全”,因此不应该鼓励,尽管如此。