MySQL安装可参考:

MySql 8.0.18安装

此参考文章后面涉及到的密码修改,对本标题碰到的错误同样适用。

本文先讲如何安装,在讲碰到的1251问题。要直接看解决方案的朋友可以直接通过目录链接跳转到后面查阅(三、连接测试 处)。

相关安装包可去链接提取:https://pan.baidu.com/s/1zjeDzH0sc5j9vLLYWMmV3Q

提取码:da3h

目录

一、MySql 8.0.18安装
二、配置环境变量
三、连接测试

一、MySql 8.0.18安装

1.百度搜索windows for mysql

2.选择MySQL :: Download MySQL Installer

3.选择下载第二(mysql-installer-community-8.0.18.0.msi)

4.不用注册,直接开始下载

5.下载完成后鼠标右键安装

6.点击运行

7.勾选同意点击next

8.勾选Custom自定义,点击next

9.选择MySQL Servers >MySQL Server>MySQL Server 8.0.18 - X64 到右侧,点击next

10.点击Execute ,点击next

11.点击Execute

12.点击next

13.点击next

14.点击next

15.点击next

16.点击next

17.设置root密码(一定要记住此密码)设置完成后点击next

18.点击next

19.选择Execute

20.等所有的按钮变绿后点击finish

21.点击next

22.点击finish安装完成

二、配置环境变量

1.鼠标右击我的电脑属性选择高级系统设置

2.点击环境变量

3.选择系统变量中的Path(路径)点击编辑

4.点击新建

5.然后点击浏览

6.选择安装好的MySQL bin目录,系统默认目录一般为(C:\Program Files\MySQL\MySQL Server 8.0\bin)点击确定环境变量设置完成

如果找不到,双击运行之前下载的安装包,能看到我们所安装的产品。 选中MySQL Server会出现路径信息

安装完成后,接下来启动 MySQL 数据库进行测式:

以管理员身份打开 cmd 命令行工具,切换目录到安装目录下的bin(以我为例是):

C:\WINDOWS\system32>cd C:\Program Files\MySQL\MySQL Server 8.0\bin

于是会出现:

C:\Program Files\MySQL\MySQL Server 8.0\bin>

接着初始化数据库:输入下述指令

mysqld --initialize --console

 执行完成后,会输出 root 用户的初始默认密码,如:

...
2018-04-20T02:35:05.464644Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: APWCY5ws&hjQ
...

  APWCY5ws&hjQ 就是初始密码,后续登录需要用到,你也可以在登陆后修改密码。(注:但此处的密码是刚才安装时输入的密码,这只是它默认的密码。所以我们登录时要输入的还是刚才安装时输入的密码)

输入以下安装命令:

mysqld install

若安装成功会出现安装成功的提示

启动MySQL输入以下命令即可:

net start mysql

若用此命令不能启动服务器,且服务器无报错,则将最后的mysql改为mysql80,因为上述安装时的Windows Service Name默认名为MYSQL80。

登录本机的 MySQL 数据库,只需要输入以下命令即可:

mysql -u root -p

按回车确认, 如果安装正确且 MySQL 正在运行, 会得到以下响应:

Enter password:

若密码存在, 输入密码登录, 不存在则直接按回车登录(此处输入的密码是刚才安装时输入的密码!!!)。登录成功后你将会看到 Welcome to the MySQL monitor... 的提示语。

然后命令提示符会一直以 mysq> 加一个闪烁的光标等待命令的输入, 输入 exit 或 quit 退出登录。

测试完成后,就可以进行连接测试了。

三、连接测试

1.打开Navicat点击连接下的MySQL

2.输入以下内容(连接名随便取,主机名IP地址在本机的输入localhost,端口为安装时默认3306,用户名为root,密码是安装时的密码),输入完成点击连接测试

3.如果如下显示连接成功则说明MySQL可以正常连接使用

4.如果出现如下错误(1251-Client does not support authentication protocol requested by server)

原因:

mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password。

解决方法:

一、升级navicat驱动。

二、将mysql用户登录密码加密规则还原成mysql_native_password。

此处采用第二种方式 ,解决方法如下:

1、以管理员身份打开cmd命令行窗口,进入到MySQL的bin目录下。

执行命令:

mysql -u root -p

登录方式同上述测式MySQL的步骤一致。

2、执行下面的命令:

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

注意末尾有个分号‘;’否则会出错!!

成功会出现如下反应:

3、刷新权限,执行命令:

FLUSH PRIVILEGES;

末尾同样有个分号!

操作成功会出现如下界面:

4、 重置完成后重复第三步连接测试,将会连接成功。

参考

https://www.runoob.com/mysql/mysql-install.html

https://blog.csdn.net/Luyanc/article/details/80965423

https://blog.csdn.net/qq_35448165/article/details/103487090(此篇给出了MySQL官方网站的此错误相关说明)

在此对以上参考文章的作者表示感谢!

MySQL安装教程及Navicat连接MySQL报错:1251-Client does not support authentication protocol requested by server的更多相关文章

  1. Navicat连接Mysql报错:Client does not support authentication protocol requested by server;

    Navicat连接Mysql报错:Client does not support authentication protocol requested by server: 刚安装Mysql,想用Nav ...

  2. egg 连接 mysql 的 docker 容器,报错:Client does not support authentication protocol requested by server; consider upgrading MySQL client

    egg 连接 mysql 的 docker 容器,报错:Client does not support authentication protocol requested by server; con ...

  3. Navicat连接Mysql8.0失败:Client does not support authentication protocol requested by server...

    今天Mysql服务无法启动,看着网上的教程稀里糊涂的就用命令mysqld --initialize给初始化了,结果就是以前的表都没了,重新安装后,Navicat无法连接数据库 解决方法如下: 意思是直 ...

  4. Navicat连接mysql报错1251 -client does not support authentication protocol

    原文https://blog.csdn.net/qq_35654080/article/details/82588188 详解请参考https://blog.csdn.net/chszs/articl ...

  5. django.db.utils.OperationalError: (1251, 'Client does not support authentication protocol requested by server; consider upgrading MySQL client')

    1.打开MySQL: cmd里 net start mysql mysql -hlocalhost -uroot -p回车 进入mysql数据库 2. 命令如下: 1.use mysql; 2.alt ...

  6. 报错1251 - Client does not support authentication protocol 解决办法

    # 1.容器中登录mysql,查看mysql的版本 status; # 2,进行授权远程连接(注意mysql 8.0跟之前的授权方式不同) GRANT ALL ON *.* TO 'root'@'%' ...

  7. node mysql问题:Client does not support authentication protocol requested by server; consider upgrading MySQL client!

    node后台 mysql处理模块(版本:2.16.0) 执行connect方法时报错: Client does not support authentication protocol requeste ...

  8. navicat 连接 mysql 出现Client does not support authentication protocol requested by server解决方案

    安装了navicat 和 mysql,结果最后在navicat中连接mysql时,出现了如下错误提示: Client does not support authentication protocol ...

  9. navicat连接远程数据库报错'client does not support authentication protocol requested by server consider ...'解决方案

    [1.cmd终端连接远程mysql数据库方法] mysql -uhello -pworld   -h192.168.1.88 -P3306 -Dmysql_oa mysql -u用户名 -p密码 -h ...

随机推荐

  1. 吴裕雄--天生自然TensorFlow2教程:高阶操作

    import tensorflow as tf a = tf.random.normal([3, 3]) a mask = a > 0 mask # 为True元素,即>0的元素的索引 i ...

  2. mysql第三篇:表操作

    第三篇:表操作 一.什么是表 表相当于文件,表中的一条记录就相当于文件的一行内容,不同的是,表中的一条记录有对应的标题,称为表的字段 二.创建表 语法 CREATE TABLE 表名( 字段名1 类型 ...

  3. UVA - 10118 Free Candies(免费糖果)(dp---记忆化搜索)

    题意:桌上有4堆糖果,每堆有N(N<=40)颗.佳佳有一个最多可以装5颗糖的小篮子.他每次选择一堆糖果,把最顶上的一颗拿到篮子里.如果篮子里有两颗颜色相同的糖果,佳佳就把它们从篮子里拿出来放到自 ...

  4. STL库中的equal_range()

    equal_range根据键值,返回一对迭代器的pair对象.如果该键值在容器中存在,则pair对象中的第一个迭代器指向该键关联的第一个实例,第二个迭代器指向该键关联的最后一个实例的下一位置.如果找不 ...

  5. UVA 11987 - Almost Union-Find 并查集的活用 id化查找

    受教了,感谢玉斌大神的博客. 这道题最难的地方就是操作2,将一个集合中的一个点单独移到另一个集合,因为并查集的性质,如果该点本身作为root节点的话,怎么保证其他点不受影响. 玉斌大神的思路很厉害,受 ...

  6. springcloud之Eureka上

    0 环境 系统环境:win10 编辑器:IDEA 1 注册中心 Eureka是springcloud中的注册中心.原因: 当是单体应用 类似一条直线 随着项目越来越大 系统拆分 类似那个藕(模块间相互 ...

  7. 阿里云-容器服务之集群服务 k8s(Jenkins+gitlab+k8s的devops)- 03

    ------------恢复内容开始------------ 1.安装gitlab,选择阿里云提供的编排模板,点击确定:配置域名访问,与jenkins设置一致:这里不再重复赘述: 2.如图,需要给je ...

  8. 微信小程序之组件常见的问题

    小程序自定义的组件: (1)组件的结构 自定义的组件和普通的页面定义没有什么区别,也包含了四个文件:xxx.wxml(组件的视图层),xxx.json,xxx.js,xxx.wxss 组件的xxx.w ...

  9. spyder.app制作图标

    安装了 anaconda3, 自带spyder, 但是只能在terminal 中打开, 非常不友好. 模仿 anaconda3/目录下 Anaconda-Navigator.app, 制作了 spyd ...

  10. 4. git目录探秘

    HEAD当前指向的分支信息.cconfig,当前仓库的配置信息,core,用户,远程,分支等信息.(命令操作其实就是修改当前config文件)refs---heads,其实就是分支,里面包含所有的分支 ...