“连接失败:访问被拒绝用户’root’@’localhost'(使用密码:YES)”来自php函数
作者:互联网
参见英文答案 > MySQL ERROR 1045 (28000): Access denied for user ‘bill’@’localhost’ (using password: YES) 33个
我写了一些php网页使用的函数,以便与mysql数据库进行交互.当我在我的服务器上测试它时,我收到此错误:
"Connect failed: Access denied for user 'root'@'localhost' (using password: YES)"
我可以在我的电脑上使用它们(使用XAMPP),我可以使用服务器中的命令行浏览数据库的表格.但是,网页无法连接.我已经检查了密码但没有结果.这是正确的(否则我无法从命令行登录到mysql).
该函数的调用如下:
$conn = new mysqli("localhost", "root", "password", "shop");
我必须在我的服务器中设置一些东西吗?谢谢
编辑:
PHP版本5.3.3-7 squeeze1
mysql版本:5.1.49-3
都是在debian上
解决方法:
我这样解决了:
我用root用户名登录
mysql -u root -p -h localhost
我创建了一个新用户
CREATE USER 'francesco'@'localhost' IDENTIFIED BY 'some_pass';
然后我创建了数据库
CREATE DATABASE shop;
我为此数据库授予了新用户的权限
GRANT ALL PRIVILEGES ON shop.* TO 'francesco'@'localhost';
然后我注销root并登录新用户
quit;
mysql -u francesco -p -h localhost
我使用脚本重建了我的数据库
source shop.sql;
就是这样..现在从php工作没有问题的电话
$conn = new mysqli("localhost", "francesco", "some_pass", "shop");
感谢您的所有时间:)
标签:access-denied,php,mysql 来源: https://codeday.me/bug/20190911/1804556.html