使用 LAMP 时,MySQL 访问被拒绝用户“root”

使用 LAMP 时,MySQL 访问被拒绝用户“root”

我只是想正常安装 lamp server + phpmyadmin 以防设置的时候mysql我收到此错误:

ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

我不知道这是什么。
我不知道如何在 ubuntu 中运行 php 代码,因为这是我第一次接触 linux。

答案1

以下是对我有用的方法:

只需附加“须藤“到该 mysql 命令的开头:

sudo mysql -uroot -p

请注意该命令开头的“sudo”

答案2

  1. 设置密码mysql

    sudo dpkg-reconfigure mysql-server-5.x
    
  2. 现在打开终端并输入:

    mysql -uroot -p
    

输入密码并按Enter

答案3

我认为在这篇旧文章中需要注意的是,MySQL 在过去 5 年中发生了一些变化。Digital Ocean 在他们的教程中陈述了以下内容如何在 Ubuntu 18.04 上安装 MySQL

在运行 MySQL 5.7(及更高版本)的 Ubuntu 系统中,root MySQL 用户默认设置为使用auth_socket插件进行身份验证,而不是使用密码。

因此,请运行以下命令以正确且安全地进行安装:

sudo apt update
sudo apt install mysql-server
sudo mysql_secure_installation

我亲自回答了y中的每个提示mysql_secure_installation并创建了一个强密码(选项2,如果您设置了 VALIDATE PASSWORD 插件)。但是,这里的特定选择由您自己决定。无论哪种方式,您都将在其中一个提示下设置密码。尽管您将看到,您不一定需要密码。

提示mysql_secure_installation完成后,您只需输入以下内容即可登录:

sudo mysql

这是因为 MySQL 5.7 及更高版本中的本机身份验证方法已被取代,auth_socketmysql_native_password提高安全性。无需密码,因为您只能从安装它的机器登录。

如果你需要使用密码从其他来源登录,或者想要了解更多信息,我建议阅读如何在 Ubuntu 18.04 上安装 MySQL全部内容。

相关内容