由于新的操作系统没有安装mysql,项目中需要使用到,于是安装了最新版本的mysql8.0.28(我安装的是社区版),如果你的项目是老项目,使用的mysql插件是比较老的版本,安装的时候要注意一下,配置mysql的时候会有如下图的提示,如果是比较老的版本请选择下面的选项,否则使用第一个选项的话有可能会导致项目连接不上数据库

安装完成后,运行项目发现连接不上数据库,提示如下错误信息

System.Security.Authentication.AuthenticationException: 调用 SSPI 失败,请参见内部异常。 ---> System.ComponentModel.Win32Exception: 接收到的消息异常,或格式不正确。
--- 内部异常堆栈跟踪的结尾 ---
在 System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, Exception exception)
在 System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
在 System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)
在 System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)
在 System.Net.Security.SslState.CheckCompletionBeforeNextReceive(ProtocolToken message, AsyncProtocolRequest asyncRequest)
在 System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)
在 System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)
在 MySql.Data.MySqlClient.NativeDriver.StartSSL()
在 MySql.Data.MySqlClient.NativeDriver.Open()
在 MySql.Data.MySqlClient.Driver.Open()
在 MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder settings)
在 MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection()
在 MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()
在 MySql.Data.MySqlClient.MySqlPool.TryToGetDriver()
在 MySql.Data.MySqlClient.MySqlPool.GetConnection()
在 MySql.Data.MySqlClient.MySqlConnection.Open()
在 Dapper.SqlMapper.ExecuteCommand(IDbConnection cnn, CommandDefinition& command, Action`2 paramReader)
在 Dapper.SqlMapper.ExecuteImpl(IDbConnection cnn, CommandDefinition& command)
在 Dapper.SqlMapper.Execute(IDbConnection cnn, String sql, Object param, IDbTransaction transaction, Nullable`1 commandTimeout, Nullable`1 commandType)

百度查询了一下,说是要升级项目中的mysql插件,我尝试升级Mysql插件,但是升级失败了,所有这个解决方案pass掉了,大家可以尝试一下参考文档:https://blog.csdn.net/wqq1027/article/details/119764268 
于是我就继续问了度娘,有人说连接字符中中加上SslMode=None;于是我尝试了一下,还是连接失败,但是报错信息不一样了,错误信息如下:

Authentication to host 'xxx' for user 'root' using method 'caching_sha2_password' failed with message

看到这个错误,我就猜想应该是mysql 8.0密码验证机制问题导致,之前在其他文章上面看到过修改方法,修改一下my.ini文件如下:

如果安装目录下找不到my.ini文件 windows系统下处理如下,打开C盘 查看选项中,查看隐藏文件,如果不出意外在programeData下(C:\ProgramData\MySQL\MySQL Server 8.0)找到my.ini

加入这一项 default_authentication_plugin=mysql_native_password

[mysqld]
default_authentication_plugin=mysql_native_password

然后在服务中重启MySql服务

Linux 下可以修改在/etc/my.cnf文件

重启MySql服务后,再重试发现数据库连接成功了。记录一下,以免后面再遇到这种问题,到处找解决方法

asp.net(C#)接MYSQL8.0版本报错的处理方法的更多相关文章

  1. 安装docker17.06.0版本报错和解决方法

    本人在自己电脑的虚拟机里安装docker ce 17.06.0版本的时候报如下错误: [root@manager2 yum.repos.d]# yum install docker-ce-17.06. ...

  2. CentOS7安装mysql8.0编译报错集合

    以下都是我安装mysql8.0遇到的一些报错和解决方法 1.does not appear to contain CMakeLists.txt. 原因:mysql下载的源码包不对 解决方法:下载正确的 ...

  3. Idea下的springboot mysql8.0等报错解决随笔

    cannot load jdbc class path:mysql8.0装载失败,可能原因,驱动名称错误,连接字符串中需要加入时区UTC,否则8.0一定会报错无法连接,关闭SSL 在applicati ...

  4. win10 压缩包安装mysql8.0.11报错:Access denied for user 'root'@'localhost'

    按这篇:https://blog.csdn.net/Myuhua/article/details/84792121#commentsedit 这里精简下,还有update语句中authenticati ...

  5. 未能加载文件或程序集 Newtonsoft.Json, Version=4.5.0.0 的报错,解决方法

    使用httpclient测试webapi的时候客户端报错: {"未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, P ...

  6. MySQL8.0 caching_sha2_password报错问题

    在bin目录下执行mysql -uroot -p123456 登录后执行: use mysql; select host, user, plugin from user; 打印: +--------- ...

  7. windows 链接 MySQL8.0.28 报错: SSL connection error: unknown error number 解决办法

    找到 My.ini文件,以管理员身份打开并在  [mysqld]   节点下 增加   skip_ssl   选项并保存,重启 MySQL 服务 执行SQL语句    SHOW VARIABLES L ...

  8. 使用mysql5.7版本的mysqldump备份mysql8.0版本的数据库报错解决办法

    使用mysql5.7版本的mysqldump命令执行备份mysql8.0版本的数据库时会报错: mysqldump: Couldn't execute 'SET SQL_QUOTE_SHOW_CREA ...

  9. Spring Cloud Alibaba(6)---Nacos持久化Mysql8.0版本

    Nacos持久化Mysql8.0版本 有关Nacos之前写过三篇文章. Spring Cloud Alibaba(3)---Nacos概述 Spring Cloud Alibaba(4)---Naco ...

  10. dotfuscator 在混淆.Net Framework 4.0以上版本的时候报错的解决方法

    dotfuscator 在混淆.Net Framework 4.0以上版本的时候报错的解决方法 在混淆的时候报错了,错误描述大致如下: Could not find a compatible vers ...

随机推荐

  1. 在鸿蒙NEXT开发中实现一个语音识别组件

    鸿蒙系统发布以后都不知道叫它5.0版本还是NEXT版本了,哈哈,反正是最新版本就对了.对于语音转换文字,鸿蒙系统提供了离线语音识别模型speechRecognizer,语种目前支持中文,识别效果非常不 ...

  2. Python内置数据结构操作VS sqlite3操作

    1.摘要 在同一数据库中查询某值,内置数据结构的查询速度快还是数据库sqlite3的查询速度快?针对这一问题,通过构建一个包含2500个随机数的列表,并将其插入sqlite3数据库中,利用timeit ...

  3. C#中无法将文件”obj\debug\XXX.dll复制到“bin\Debug\XXX.dll” 拒绝访问

    较为方便有效的方法就是,把项目属性中的"应用程序集"的"程序集名称"修改为另一个名称即可.

  4. 实战:Dify智能体+Java=自动化运营工具!

    我们在运营某个圈子的时候,可能每天都要将这个圈子的"热门新闻"发送到朋友圈或聊天群里,但依靠传统的实现手段非常耗时耗力,我们通常要先收集热门新闻,再组装要新闻内容,再根据内容设计海 ...

  5. Vue 学习笔记 [Part 5]

    作者:故事我忘了¢个人微信公众号:程序猿的月光宝盒 目录 一. webpack 1.1. webpack的loader 1.1.1 bable的使用--ES6语法处理 1.2. webpack中配置V ...

  6. Caddy自编译

    转载自我的个人博客:Caddy自编译 配置 Golang 环境 需要先配置 Golang 环境:Download and install - The Go Programming Language w ...

  7. P8842 [传智杯 #4 初赛] 小卡与质数2

    传送门 变态数学题(主考位运算与素数筛). 读完题看起来有点难做,因为质数的出现是根本没有可以使用的规律.暴力的话也很好想,枚举 $y$.但是肯定会超时.我们也可以换个方向枚举.对,筛出素数,再返过去 ...

  8. qt激光加工软件开发——日志模块

    本篇主要介绍该加工软件的日志模块 实现的功能: 主界面日志栏显示 分级显示 本地保存 简单的调用机制 目前选择的是qInstallMessageHandler,毕竟是qt亲儿子(Qt 5.0以上版本) ...

  9. ChatMoney能根据剪纸来进行AI绘画,你见过吗?

    本文由 ChatMoney团队出品 剪纸,听起来就很有画面感,承载着中国几千年的文化.一把剪刀.一张红纸,轻轻剪几剪,就能幻化出各种栩栩如生的图案.这门艺术不仅仅是视觉上的享受,更是一种感情的传递,一 ...

  10. Office 2024 专业增强版超详细下载安装教程(附安装包)

    目录 一.Office 2024 专业增强版软件简介 二.Office 2024 专业增强版安装准备 三.Office 2024 专业增强版安装步骤 下载Office 2024安装包: 运行Offic ...