我的 MySQL 根密码是什么

我的 MySQL 根密码是什么

我刚刚使用以下命令安装了 mysql-server

$ sudo apt install mysql-server mysql-client mysql-common

然后当我调用该命令时,mysql_secure_installationMySQL 要求输入 root 密码:

韋姆

我还没有为 mysql-server 设置密码,但是它要求我输入密码。

我如何设置正确的密码?有默认密码吗?

答案1

虽然原帖者声称已经找到了解决这个问题的方法在这个答案中,这对我来说毫无意义。但现在我明白了,一些 Debian/Ubuntu 发行版使用基于套接字的身份验证方法。sudo正如他们所描述的那样,这种默认启用的身份验证方法自然需要用户进入 MySQL。

但一般来说,没有理由mysql_secure_installation通过运行sudo。这在大多数情况下没有意义,因为 MySQL 不需要sudo这样的客户端事务……除非基于套接字的身份验证在起作用。 并且mysql_secure_installation只是一个 Bash 脚本,它运行一堆命令,这些命令位于一个漂亮、方便的包中,允许更新一些与 MySQL 相关的安全项目。只需查看源代码看看我的意思。

因此,如果你的系统没有使用基于套接字的身份验证,并且您面临类似的问题,解决方案是旧版本的 MySQL 的密码为空。因此,您只需运行此命令即可进入 MySQL:

mysql -uroot -p

或者在 的情况下,当提示输入密码时,mysql_secure_installation只需点击Return或。Enter

或者对于现代版本的 MySQL — — 我相信是 MySQL 5.7 或更高版本 — — 您需要检查错误日志中是否存在如下消息:

“2016-05-16T07:09:49.796912Z 1 [注意] 为root@localhost生成临时密码:8)13ftQG5OYl”

这是取自的一个例子有关此主题的 Persona 博客条目。至于这个 MySQL 日志条目在哪里,它可能在/var/log/mysqld.logCentOS/RedHat 服务器上,或者它显示为 Ubuntu/Debian 系统上软件包安装的输出。

但是只需检查错误日志中的文本“临时密码”就会为您提供rootMySQL 首次安装时设置的初始密码。

答案2

我找到了解决方案。它需要按如下方式执行superuser

我必须执行$ sudo mysql_secure_installation

mysql另外,如果我想在终端上登录,我sudo必须

相关内容