我正在设置一个新的VPS学习来设置我自己的Web服务器并坚持这个非常基本的步骤。
PHP 5.3.3
MySQL 5.1.61
CentOS release 6.2 (Final)
我可以在命令行使用mysql连接到服务器,也可以使用Navicat远程连接到服务器而不会出现问题。我把主机作为'%'进行测试,因为localhost也不能正常工作。我尝试过“localhost”,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运行时会返回相同内容。
提前致谢。
答案 0 :(得分:2)
这一行:
$mysqli = new mysqli("localhost", "user", "db", "pw");
应该是:
$mysqli = new mysqli("localhost", "user", "pw", "db");
密码出现在数据库名称
之前答案 1 :(得分:0)
您正在混合mysql
和mysqli
修改强>
检查您尝试连接数据库的用户的权限。
答案 2 :(得分:0)
您输入了正确的密码吗?检查密码