为什么我不能从PHP中选择MySQL数据库?我得到“访问被拒绝”

时间:2011-12-23 19:55:30

标签: php mysql database

我使用root用户从PHP连接到MySQL。连接对象为$con。连接成功。

我想选择一个特定的数据库,因此我使用了mysql_select_db('database', $con),但我收到了'Access denied for user '@'localhost' to database'错误。

我无法理解为什么我收到拒绝访问错误,因为我使用的是root用户。我仔细检查了root的授权,它拥有的所有权限。我可以通过命令行客户端使用root对此特定数据库执行查询。我在本地机器上运行所有东西。

2 个答案:

答案 0 :(得分:3)

您没有使用root帐户(无论您尝试做什么,这都是一个不好的想法)。错误消息明确指出... for user ''@localhost:那里没有用户名,因此您根本没有用户名。

答案 1 :(得分:1)

基本上,在您的mysql_connect(host, username, password)中,您输入了错误的详细信息。

您通常需要密码才能进行安全托管。这可以从您的托管服务提供商处获得,用户名也可以从您的托管服务提供商或您定义。主机通常是localhost。

您必须将此mysql_connect添加到使用带有mysql数据库的php函数的每个页面。