我只是在设置一个新的VPS来学习设置我自己的Web服务器,并停留在这个非常基本的步骤中。
PHP 5.3.3
MySQL 5.1.61
CentOS release 6.2 (Final)
我可以在命令行中使用 mysql 连接到服务器,也可以使用 Navicat 远程连接到服务器,而不会出现问题。我将主机设置为"%"进行测试,因为本地主机也不起作用。我尝试过使用"本地主机"、IP 等。
Connect failed: Access denied for user 'stats'@'localhost' (using password: YES)
用户:
+-----------+---------+
| Host | User |
+-----------+---------+
| % | stats |
| 127.0.0.1 | root |
| localhost | root |
+-----------+---------+
我的代码:
<?php
$mysqli = new mysqli("localhost", "user", "db", "pw");
?>
直接从命令行运行 php 脚本时出错(无 Web 服务器):
PHP Warning: mysqli::mysqli(): (28000/1045): Access denied for user 'stats'@'localhost' (using password: YES) in /xxx/db.php on line 5
Connect failed: Access denied for user 'stats'@'localhost' (using password: YES)
在运行 Apache 时也会返回相同的结果。
提前谢谢。
这一行:
$mysqli = new mysqli("localhost", "user", "db", "pw");
应该是:
$mysqli = new mysqli("localhost", "user", "pw", "db");
密码位于数据库名称之前
你混合了mysql
和mysqli
编辑
检查您尝试与之连接数据库的用户的权限。
您输入的密码是否正确?检查密码