在过去的一天左右,我无法通过PHP连接到数据库。下面是连接到数据库的代码
$con = mysqli_connect("localhost","root","password","database");,这是一个奇怪的错误。
PHP警告: mysqli_connect():(HY000/1045):第2行中用户' user '@'localhost‘(使用密码: YES)被拒绝访问
如果凭据不正确,我通常会得到该错误,但我使用了GUI并测试了与确切凭证的连接,因此这意味着这不是问题所在。我刚刚开始随机地获取这个错误,重新启动了我的计算机,重新安装了MySQL,并重新配置了我也尝试过的127.0.0.1而不是localhost的服务器,所以我可以完全控制几乎所有的事情,并且我没有干扰导致这个问题的任何事情。有什么想法吗?
发布于 2014-04-24 21:17:39
由于某些原因,该函数试图使用" user“用户而不是"root”连接。
可以通过添加错误链接进一步调试:
$con= mysqli_connect("myhost","myuser","mypassw","mybd") or die("Error " . mysqli_error($con));
发布于 2014-04-24 21:19:50
也许问题在于mysql服务器的配置。
您可以尝试更改密码和刷新后的特权。
而不是重新启动mysql!
希望这能有所帮助!再见。
发布于 2014-04-24 21:44:45
我和这个问题的标题有同样的问题,所以如果其他人在这个问题上搜索,并且想要在Windows上以‘跳过-授予表’模式启动MySql,我就是这样做的。
通过管理员工具服务停止MySQL服务。
修改my.ini配置文件(假设默认路径)
C:\Program Files\MySQL\MySQL Server 5.5\my.ini在“服务器”部分的mysqld下,添加以下行:
skip-grant-tables所以你有
# SERVER SECTION
# ----------------------------------------------------------------------
#
#The following options will be read by the MySQL Server. Make sure that
# you have installed the server correctly (see above) so it reads this
# file.
#
[mysqld]
skip-grant-tables再次启动服务,您应该能够在没有密码的情况下登录到数据库。
https://stackoverflow.com/questions/23279934
复制相似问题