PHP的 – MySQL访问被拒绝的错误 – 在其他程序工程

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

是的,这个错误太常见了,我花了很多时间研究它。 然而没有解决问题。

当我尝试在我正在开发的PHP脚本中的第一个连接时出现此错误。 如果有帮助的话,我正在运行Linux Mint,LAMPconfiguration详见http://community.linuxmint.com/tutorial/view/486 。

事情是,任何其他应用程序与连接工作。 以根用户身份login到PhpMyAdmin,或者以root用户身份login到mysql客户端都能够完美地工作。 MySQL网站本身说,这可能是我的代码有问题,但我还没有弄清楚…我有点新东西,所以请原谅我,如果这是一个非常nooby的错误。

我在不同的页面上使用外部函数(使用require_once导入)。 这是不好的做法? 无论如何,这里是:

 global $sql_conn, $sql_addr, $sql_user, $sql_pass, $sql_datb; $config=app_readconfig(); echo "<p>".$sql_addr." ".$sql_user." ".$sql_pass." ".$sql_datb."</p>";//DEBUG, shows values are read if($config==FALSE) { echo "<p>Error: Missing values in darkace_config.txt!</p>"; return FALSE; } $sql_conn=mysql_connect($sql_addr,$sql_user,$sql_pass); if(!$sql_conn) { echo "<p>MYSQL Error: ".mysql_error()."</p>"; return FALSE; } if(!mysql_select_db($sql_datb,$sql_conn)) { echo "<p>MYSQL Error selecting database: ".mysql_error()."</p>"; return FALSE; } return TRUE; 

该函数被调用,并且我返回的消息是:MYSQL错误:拒绝访问用户'root'@'localhost'(使用密码:是)

你有'根[SPACE]'作为用户名。 尝试“根”没有空间?

您的凭据有问题

验证:

  • 用户名
  • 密码
  • 主办

此外,请停止使用mysql_*函数,因为它们现在已被弃用 。 改用MySQLi或PDO 。

你的连接应该是这样的

 $link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password'); 

不包括http,添加示例中的端口号,检查用户名和密码。

如果会激怒你,但每次使用mysql_ *函数,你都会得到一个PDO建议。 我也推荐PDO,PHP也推荐PDO,你可以查看mysql文档中的mysql_connect