首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >拒绝用户“root”@“localhost”的访问

问拒绝用户“root”@“localhost”的访问
EN

Stack Overflow用户
提问于 2016-07-11 15:45:04
回答 3查看 8K关注 0票数 1

我经历了所有类似或相同的问题(这和这,for ex)。但还是解决不了问题。

我在Xenial上,有MySQL 5.7.12。我不记得在安装过程中设置了任何密码(如果它要求的话,我提供了一个空密码)。

我尝试使用--skip-grant-tables进行密码重置,正如这里所描述的,它更新了数据库行,但我仍然无法登录。

用sudo dpkg-reconfigure mysql-server-5.7重新配置什么都不起作用,我明白如下:

代码语言:javascript
复制
Checking if update is needed.
This installation of MySQL is already upgraded to 5.7.12, use --force if you still need to run mysql_upgrade
$ sudo dpkg-reconfigure --force mysql-server-5.7
Checking if update is needed.
This installation of MySQL is already upgraded to 5.7.12, use --force if you still need to run mysql_upgrade

有什么想法吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-07-12 11:12:17

正确的重新安装有帮助。删除所有相关的内容(本指令,但重要的是指定mysql的版本,例如apt-get --yes purge mysql-server-5.7 mysql-client-5.7,我还删除了mysql-必须确保所有的依赖关系)。

然后重新安装(apt-get install mysql-server mysql-client),当它询问密码时,这次我给了它一个密码。现在起作用了。

票数 1
EN

Stack Overflow用户

发布于 2016-07-11 16:06:04

MySQL 5.7在安装时自行生成一个随机根密码。

这是MySQL 5.7.4中的一个新变化,并在发布说明:https://dev.mysql.com/doc/relnotes/mysql/5.7/en/news-5-7-4.html中进行了描述。

安装过程只创建一个根帐户,即' root '@'localhost',自动为该帐户生成一个随机密码,并标记密码过期。MySQL管理员必须使用随机密码以根用户身份连接,并使用SET密码选择新密码。(在运行脚本的有效用户的主目录中的.mysql_secret文件中可以找到随机密码。)

我从未找到.mysql_secret文件,但随机密码也输出在MySQL错误日志中(例如/var/ log /mysqld.log )。通知如下:

代码语言:javascript
复制
2016-07-11T15:59:54.922316Z 1 [Note] A temporary password is generated for root@localhost: f14_W1lN7FfP
票数 5
EN

Stack Overflow用户

发布于 2017-01-06 05:11:41

你可以重新安装所有东西,就像我做的那样。我最初是使用macos软件包安装程序安装的。我什么都没得到。

所以卸载所有东西,然后升级brew,然后通过brew安装。运行mysql shell被证明是一件很麻烦的事情。最终起作用的是mysql -u root -p。

我在localhost上运行它,所以不需要root密码。奇怪的是,mysql -u root -p <password>发出了“拒绝访问”的消息。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38311094

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档