我怎样才能克服这个错误?错误:用户“root”@“localhost”(sql:select count(*)as aggregate from)的sqlstate[hy000][1698]访问被拒绝 users 哪里 email = email@gmail.com我在用ubuntu请帮忙
users
email
dly7yett1#
先以root用户身份登录:
$ sudo mysql -u root
然后创建或更改非根用户(如果需要,请使用“127.0.0.1”而不是“localhost”):
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'adminspassword'; GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost'; FLUSH PRIVILEGES;
退出并重新启动:
exit $sudo service mysql restart $sudo service apache2 restart
并编辑.env文件:
DB_CONNECTION=mysql DB_HOST=localhost DB_PORT=3630 DB_DATABASE=yourdbname DB_USERNAME=admin DB_PASSWORD=adminspassword
np8igboo2#
mysql将使“localhost”和“127.0.0.1”有所不同。可能不允许“root”@“localhost”,因为用户表中有一个条目只允许从127.0.0.1进行root登录。这也可以解释为什么服务器上的某些应用程序可以连接到数据库,而有些应用程序不能,因为连接到数据库的方式不同。您当前不允许通过“localhost”执行此操作。
f45qwnt83#
我知道已经很晚了,但是我找不到答案,最后我得到了这个答案。
$sudo mysql -u root [mysql] use mysql; [mysql] update user set plugin='' where User='root'; [mysql] flush privileges; [mysql] \q
现在您应该可以以root身份登录。谢谢@matekisto在这个帖子里
3条答案
按热度按时间dly7yett1#
先以root用户身份登录:
然后创建或更改非根用户(如果需要,请使用“127.0.0.1”而不是“localhost”):
退出并重新启动:
并编辑.env文件:
np8igboo2#
mysql将使“localhost”和“127.0.0.1”有所不同。
可能不允许“root”@“localhost”,因为用户表中有一个条目只允许从127.0.0.1进行root登录。
这也可以解释为什么服务器上的某些应用程序可以连接到数据库,而有些应用程序不能,因为连接到数据库的方式不同。您当前不允许通过“localhost”执行此操作。
f45qwnt83#
我知道已经很晚了,但是我找不到答案,最后我得到了这个答案。
现在您应该可以以root身份登录。谢谢@matekisto在这个帖子里