美文网首页
安装mysql8.0.12及以上 开启远程连接,用Navicat

安装mysql8.0.12及以上 开启远程连接,用Navicat

作者: 丶Assassin丨 | 来源:发表于2018-11-22 15:51 被阅读0次

1.7.查询用户密码:

查询用户密码命令:mysql> select host, user, authentication_string, plugin from user

这是成功后

host: 允许用户登录的ip‘位置’%表示可以远程;

user:当前数据库的用户名;

authentication_string: 用户密码(后面有提到此字段);

1.8.设置(或修改)root用户密码:

默认root密码为空的话 ,下面使用navicat就无法连接,所以我们需要修改root的密码。

这是很关键的一步。此处踩过N多坑,后来查阅很多才知道在mysql 5.7.9以后废弃了password字段和password()函数;authentication_string:字段表示用户密码。

下面直接演示正确修改root密码的步骤:

  一、如果当前root用户authentication_string字段下有内容,先将其设置为空,否则直接进行二步骤。

use mysql;  

update user set authentication_string=' ' where user='root'

下面直接演示正确修改root密码的步骤:

  二、使用ALTER修改root用户密码,方法为 ALTER user 'root'@'localhost' IDENTIFIED BY '新密码'。如下:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpassword';

  此处有两点需要注意:1、不需要flush privileges来刷新权限。2、密码要包含大写字母,小写字母,数字,特殊符号。

  修改成功; 重新使用用户名密码登录即可;

注意: 一定不要采取如下形式该密码:

use mysql;  

update user set authentication_string="newpassword" where user="root";  

这样会给user表中root用户的authentication_string字段下设置了newpassword值;

当再使用ALTER USER 'root'@'localhost' IDENTIFITED BY 'newpassword'时会报错的;

因为authentication_string字段下只能是mysql加密后的41位字符串密码;其他的会报格式错误;

*THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE

至此,安装mysql和修改root密码告一段落。开始navicat for mysql篇。

时间有限,navicat的下载和破解注册就不多讲了 有需要的下面留邮箱,发给你们,下面说说出问题的地方。

账号密码都正确,连接报错1251。OK 我们先来看看这个改动:

在MySQL 8.04前,执行:SET PASSWORD=PASSWORD('[新密码]');但是MySQL8.0.4开始,这样默认是不行的。因为之前,MySQL的密码认证插件是“mysql_native_password”,而现在使用的是“caching_sha2_password”。

so,我们这里需要再次修改一次root密码。

先登录进入mysql环境:执行下面三个命令。(记得带上分号)

1、use mysql;

2、ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码';

3、FLUSH PRIVILEGES;

OK.现在再去重连。perfect!

相关文章

网友评论

      本文标题:安装mysql8.0.12及以上 开启远程连接,用Navicat

      本文链接:https://www.haomeiwen.com/subject/lkmlqqtx.html