mysql 8.1 Access denied for user 'root'@'localhost'
时间: 2023-09-16 10:12:29 浏览: 182
当您在MySQL 8.1中尝试使用用户'root'@'localhost'登录时,可能会遇到"Access denied"错误。这通常是因为默认情况下,MySQL的root用户使用了auth_socket插件进行验证,该插件只允许本地连接。
要解决此问题,您可以按照以下步骤更改root用户的身份验证方式:
1. 打开MySQL命令行或任何MySQL客户端。
2. 使用以下命令以root用户身份登录MySQL:
```
mysql -u root -p
```
3. 输入您当前的root密码以登录。
接下来,您可以选择执行以下两种方法之一:
方法一:使用ALTER USER命令更改root用户的身份验证方式:
4. 在MySQL命令行中,使用以下命令更改root用户的身份验证方式,并设置一个新密码:
```
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new-password';
```
请将'new-password'替换为您想要设置的新密码。
方法二:使用UPDATE语句手动更改root用户的身份验证方式:
4. 在MySQL命令行中,使用以下命令更改root用户的身份验证方式,并设置一个新密码:
```
UPDATE mysql.user SET authentication_string=PASSWORD('your-password'), plugin='mysql_native_password' WHERE user='root';
```
请将'your-password'替换为您想要设置的新密码。
5. 执行以下命令以使更改生效:
```
FLUSH PRIVILEGES;
```
现在,您应该能够使用新密码成功登录MySQL的root用户。请确保将'your-password'替换为您实际设置的新密码。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [mysql连接时出现ERROR1698(28000):Access denied for user root@localhost错误解决方法](https://blog.csdn.net/qq_42393859/article/details/120527739)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [解决mysql连接Error 1698: Access denied for user ‘root‘@‘localhost‘ 问题](https://blog.csdn.net/temptationnnnn/article/details/130822908)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文