新鲜mysql-服务器安装不要求密码

Fresh mysql-server installation does not ask for password

我正在 debian 上安装软件包 mysql-server(实际上是 Raspbian,raspberry pi 的 Debian 版本)。我正在使用以下命令安装它

sudo apt-get install mysql-server

在安装过程中我没有被要求输入根密码。如果我尝试使用以下命令连接到 mysql:

mysql -u root

mysql -u root -p

并且使用系统root密码,我得到了以下错误:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

我很困惑,因为显然 我应该在安装过程中被要求提供 root 密码

我该怎么办?

此致。

您可能有兴趣阅读 this question and aswers

默认密码不是空字符串吗?

试试这个:

安装后,运行MySql安全安装:

pi@raspberrypi:~ $ sudo mysql_secure_installation

系统会询问您一系列与安全相关的配置问题,包括设置 root 密码。

设置root密码后,您需要以root身份登录(或使用sudo)才能登录。这是 MySql 如何使用基于 process uid

的凭据的结果

我遇到了同样的问题,导致我无法访问 mysql 在 运行 宁 sudo apt install mysql-server 无效后使用 mysql_secure_installation 的所有答案。这是有效的方法

  1. 转到 official mysql installation guide 并逐行跟踪
  2. 您需要从 here 下载一个 .deb 文件来配置您要安装的 mysql 版本和其他配置
  3. 配置完成后运行sudo apt-get update && sudo apt-get install mysql-server这次你会被要求输入密码。

希望对您有所帮助。干杯!

从 mysql 官方网站下载 apt 存储库 https://dev.mysql.com/downloads/repo/apt/

Select 你的版本然后点击下一步 select 确定然后点击下一步。

现在

sudo apt-get update  

sudo apt-get install mysql-server

安装时会要求输入密码。

给你:

在新的my-sql中如果安装时密码为空那么它是基于auth_socket插件。

正确的方法是使用 sudo 权限登录我的-sql。

$ sudo mysql -u root -p

然后使用以下方式更新密码:

$ ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new-password';

完成后 stop and start mysql 服务器。

$  sudo service mysql stop
$  sudo service mysql start

有关完整的详细信息,您可以参考 this link

如有任何疑问,请发表评论。

如果有人在 Ubuntu 18.04 中安装 MYSQL 时遇到此问题。

Ubuntu 18.04 使用套接字进行授权而不是密码!!

(https://websiteforstudents.com/mariadb-installed-without-password-prompts-for-root-on-ubuntu-17-10-18-04-beta/)

对我来说,登录非常简单:

sudo  mysql -u root      

别忘了sudo

我真的希望应该有一条消息说明 Ubuntu 在尝试 运行 mysql 时不再使用密码。这是功能上的一个非常大的变化。

在我的例子中,这里提到的没有任何效果,以下对我有用。 如此处所述: https://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html

超级用户帐户 'root'@'localhost 已创建。超级用户的密码已设置并存储在错误日志文件中。要显示它,请使用以下命令:

shell> sudo grep 'temporary password' /var/log/mysqld.log

在我的例子中,mysql root 密码是我的超级用户密码。