MySQL8连接上不上的

问题描述:

 使用mysql的可是工具(MySQLWorkbench除外)和使用Java代码都无法连接;

解决方法:

对于使用MySQL的可视化工具,可以使用MySQL自带的MySQLWorkBench进行操作;

通用解决方案:

第一步:采用cmd命令进入MySQL;

第二步:输入命令select user,host,authentication_string from mysql.use;

结果:

+------------------+-----------+-----------------------+------------------------------------------------------------------------+
| user             | host      | plugin                | authentication_string                                                  |
+------------------+-----------+-----------------------+------------------------------------------------------------------------+
| mysql.infoschema | localhost | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.session    | localhost | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
| mysql.sys        | localhost | caching_sha2_password | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED |
Snv7qHH9fV79VoexkoU4rGTkcu5GdiDXX9somh5bMHOhq1 |rd | $A$005$\]TQM!c#W

出现连接不上的原因:是因为MySQL8对root账号密码配置默认使用caching_sha2_password插件;

第三步:输入命令:ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

进行修改加密的规则;结果:

Query OK, 0 rows affected (0.32 sec)

 

第四步:输入命令: ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

更新一下root的密码;结果:

Query OK, 0 rows affected (0.25 sec)

第五步:输入命令:FLUSH PRIVILEGES;更新一下权限;结果:

Query OK, 0 rows affected (0.11 sec)

就可以了。

你可能感兴趣的:(mysql)