警告:mysql_select_db()用户''@ localhost'拒绝访问(使用密码:NO)

时间:2013-03-20 18:11:50

标签: php mysql mysql-workbench

我是网络开发人员的新手,我需要帮助才能找出问题所在。我安装了MySQL 5.6.10并且我被赋予了一项任务来更新目前过去5年的网站的src。没有任何代码已更改,它适用于其他开发人员本地计算机。服务器正在运行5.0.51b,我只是降级到5.5.30,试图让语法错误消失。错误是SET OPTION SQL_BIG_SELECTS = 1在某个版本中被弃用到SET SQL_BIG_SELECTS。由于服务器运行的版本,我无法更改语法。所以我选择将版本降至5.5.30。

低年级之后的问题是:

Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user
''@'localhost' (using password: NO) in C:\Program Files (x86)\Apache Software
Foundation\Apache2.2\htdocs\****\src\www\include\func\func.db.php on line 47

我使用MySQL Workbench进行连接,没有任何连接或用户拥有与之关联的密码。我有另一个不是从localhost工作正常的项目。我的vhost和主机文件都具有正确的语法,可以使用(通过其他项目验证)。这一切都运作正常,并能够通过vhost提起页面昨天很好。拉动索引页面的所有设置都没有任何问题。唯一的问题是MySQL版本问题。我该怎么做才能解决这个问题?我尝试在工作台中重新创建连接,甚至删除所有实例并重新创建它们。我很难过。任何帮助将不胜感激。

4 个答案:

答案 0 :(得分:4)

您可以看到此错误,因为您没有正确连接mysql数据库。

mysql_connect("HOST","USER","PASSWORD")

确保主机,用户名和密码是正确的

答案 1 :(得分:2)

MySQL是你升级的唯一东西吗?您是否有机会升级PHP,现在不再使用register_globals?如果你把它关掉并且你的同事都有,那么这可以解释你所看到的差异。

http://php.net/manual/en/security.globals.php

答案 2 :(得分:1)

从我在返回的错误中看到的内容,您没有传递连接用于连接MySQL的用户名。

答案 3 :(得分:1)

仔细查看您的错误,您可以看到它告诉您哪些是错误的(通常是错误报告的用途):

Access denied for user
''@'localhost' (using password: NO)

具体看:

''@'localhost'
^^

您看到没有指定用户。您需要指定要连接的用户。

mysql_connect("HOST","USER","PASSWORD")

mysql_select_db来电之前。

MySQL Connect  &安培; MySQL Select DB

注意:不推荐升级到PHP 5.5 for MySQL_ *函数。我这样说是因为你不想改变任何代码。