Zac*_*zer 6 mysql-workbench windows-subsystem-for-linux
我在 Windows Subsystem for Linux(WSL2 版本)上设置了 MySQL。我对 MySQL 比较陌生,但我已经确认了以下内容:
ps ax | grep mysqld
返回一个值)127.0.0.1
3306
要登录到 mysql shell,我使用命令sudo mysql -u root -p
. 没有 sudo,我无法登录 shell。
我认为这个问题与运行 MySQL 服务的主机有关,但我不知道如何更改它并正确连接。下面是 MySQL Workbench 中连接设置的屏幕截图。
下面是我在使用显示的设置和我的root
用户密码时遇到的错误。
事实证明,这与 WSL 完全无关,而是与 MySQL 用户的身份验证方法有关。
从 MySQL 5.5.10 版本开始,用户可以使用auth_socket 身份验证。就我而言,我使用 Linuxapt
存储库来配置和安装 MySQL,并将其设置为默认身份验证方法,如以下命令的输出所示:
SELECT user,authentication_string,plugin,host FROM mysql.user;
Run Code Online (Sandbox Code Playgroud)
MySQL Workbench 不支持这种类型的身份验证,因此,您必须恢复到旧的身份验证方法mysql_native_password
.
为此,请在以root
或您尝试连接到 MySQL Workbench 的任何用户身份登录时运行以下命令:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new-password';
Run Code Online (Sandbox Code Playgroud)
这样做之后,MySQL 工作台连接正常。
归档时间: |
|
查看次数: |
9629 次 |
最近记录: |