【mysql】使用Navicat连接数据库

时间:2023-03-09 23:03:38
【mysql】使用Navicat连接数据库

1 连接数据库

【mysql】使用Navicat连接数据库

【mysql】使用Navicat连接数据库

点击左下角测试一下

【mysql】使用Navicat连接数据库

提示

【mysql】使用Navicat连接数据库

输入

select host,user,plugin,authentication_string from mysql.user;

查看用户信息

【mysql】使用Navicat连接数据库

注意这里我们的密码是空的,Navicat不能无密码登录。

2 修改密码

使用

alert user 'root'@'localhost' identified by '123456';

将密码修改为123456

【mysql】使用Navicat连接数据库

如果你报1064错误,注意有没有缺少空格,user后面和identified 前面要有空格。

mysql 5.7以后的password属性已经取消,所以你用带password的命令修改密码也可能会报错。

改完了以后登录Navicat,还是提示

【mysql】使用Navicat连接数据库

这就很有问题了,重新输入

select host,user,plugin,authentication_string from mysql.user;

查看一下

【mysql】使用Navicat连接数据库

可以看到这里已经显示有密码了,但是还是不能登录,有人说是因为mysql 8.0的加密方式(plugin)不一样,所以需要修改加密方式。

3 更改加密方式:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

【mysql】使用Navicat连接数据库

更改密码:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';

【mysql】使用Navicat连接数据库

刷新:

FLUSH PRIVILEGES;

【mysql】使用Navicat连接数据库

再看看加密方式:

【mysql】使用Navicat连接数据库

plugin都是一样的了。

4 再尝试连接:

【mysql】使用Navicat连接数据库

连接成功!看一下里面有什么

【mysql】使用Navicat连接数据库

随便写着玩吧

【mysql】使用Navicat连接数据库

保存,再用workbench打开,也能看到一样的内容:

【mysql】使用Navicat连接数据库