今天逮着我家后端帮我做一个小系统的查询,数据我爬出来,他需要连我的数据库,我们都在同一局域网下,但是他连接报错2059,
网上百度了一堆办法,以下操作成功解决:
1. win+r输入cmd进入mysql
先确定win+r,输入cmd进入命令行界面后输入mysql会不会报错。
如果不会报错,请看第二点。
如果报错,先找到你的mysql安装路径。
什么?你忘记你安装在哪了?
那navicat你该有吧
什么?navicat你也没有?
放弃吧,孩子,回家种红薯吧,这一行对你来说太难了!
*寻找mysql安装路径
打开你刚装好的14天试用期的navicat,点击【新建查询】,在出现的页面输入:show variables like "%char%";
再回车,就会出现下面这个东西:
红色的这个就是你的安装路径,现在我们打开这个文件夹,找到bin文件夹,打开,复制路径,例如我的就是C:\Program Files\MySQL\MySQL Server 8.0\bin
然后复制这一串,打开你的桌面的【此大脑】,右键点击【属性】,左侧【高级系统设置】,【环境变量】,然后环境变量分两大块,一块用户变量,一块系统变量,找到系统变量里面的Path点编辑,在编辑里面点【新建】,然后把它给我粘进去
接下来一路点确定,然后再次win+r
输入cmd
进入,键入mysql -u root -p
,再瞅瞅是不是不报错了?
2.键入mysql -u root -p
进入mysql后,重头戏来了。
3.重头戏
先键入use mysql;
这句话不用我解释吧
再键入select user,plugin from user where user='root';
这句话也不用我解释吧
可以看到当前用户的加密方式为caching_sha2_password
然后,分别执行
#修改加密规则
ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;
#修改密码为123456
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'
完美解决~ 撒花~~
得,如果连navicat也没有咋办,看看这个行不行(win10)。
-
点击电脑左下角开始菜单,按字母排序一个个找,找到
-
打开后,输入密码,再输入
show variables like "%char%";
,就可以接着回上面看文档了