今天心血来潮,看到mysql有8.0版本了,据官方说性能是5.7版本的两本,所以就在自己的电脑上试了一下,不试不知道,一试吓一跳的呦,好多的问题,比较常见的问题是2059异常,如图:
这个原因是由于8.0版本的加密规则和之前版本不一样了,所以不能用同样的方式进行连接,解决这个问题有三种方式,
第一种:
卸载mysql,重新安装,当安装出现如下界面时,
选择第二种加密方式,也就是使用之前版本的加密规则,这样就可以解决上述的问题。
第二种:
不用卸载mysql,重新点击mysql安装包文件,或者选择 程序-->MYSQL-->MYSQL Installer-Community-->MYSQL Installer-Community程序,启动出现如下界面:
选择MYSQL server记录,然后点击Reconfigure按钮,出现一个mysql的安装界面,点击next下一步,直到出现下图:
选择第二个选型,使用之前版本的加密规则,然后点击下一步,出现密码校验,输入你之前的设置的密码,点击check按钮,校验成功之后,点击netx,直到最后finish。然后就可以使用之前的方式进行连接了呢,不过这样会有一个问题,就是会将root的密码重置为空,所以需要重新修改root的密码。
第三种:
如果不想进行界面操作的话,可以使用sql语句修改加密规则,并修改相应的密码来实现同样的功能,如下:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'yourpassword' PASSWORD EXPIRE NEVER; 修改加密规则
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpassword'; 修改root用户密码
FLUSH PRIVILEGES; 刷新权限
分别执行以上sql之后,便可以进行相关的链接操作了;
以上属于个人时间得到的一些经验,如果有些不足的地方,敬请大家多多请教。