asp.net(C#)接MYSQL8.0版本报错的处理方法
由于新的操作系统没有安装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版本报错的处理方法的更多相关文章
- 安装docker17.06.0版本报错和解决方法
本人在自己电脑的虚拟机里安装docker ce 17.06.0版本的时候报如下错误: [root@manager2 yum.repos.d]# yum install docker-ce-17.06. ...
- CentOS7安装mysql8.0编译报错集合
以下都是我安装mysql8.0遇到的一些报错和解决方法 1.does not appear to contain CMakeLists.txt. 原因:mysql下载的源码包不对 解决方法:下载正确的 ...
- Idea下的springboot mysql8.0等报错解决随笔
cannot load jdbc class path:mysql8.0装载失败,可能原因,驱动名称错误,连接字符串中需要加入时区UTC,否则8.0一定会报错无法连接,关闭SSL 在applicati ...
- win10 压缩包安装mysql8.0.11报错:Access denied for user 'root'@'localhost'
按这篇:https://blog.csdn.net/Myuhua/article/details/84792121#commentsedit 这里精简下,还有update语句中authenticati ...
- 未能加载文件或程序集 Newtonsoft.Json, Version=4.5.0.0 的报错,解决方法
使用httpclient测试webapi的时候客户端报错: {"未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, P ...
- MySQL8.0 caching_sha2_password报错问题
在bin目录下执行mysql -uroot -p123456 登录后执行: use mysql; select host, user, plugin from user; 打印: +--------- ...
- windows 链接 MySQL8.0.28 报错: SSL connection error: unknown error number 解决办法
找到 My.ini文件,以管理员身份打开并在 [mysqld] 节点下 增加 skip_ssl 选项并保存,重启 MySQL 服务 执行SQL语句 SHOW VARIABLES L ...
- 使用mysql5.7版本的mysqldump备份mysql8.0版本的数据库报错解决办法
使用mysql5.7版本的mysqldump命令执行备份mysql8.0版本的数据库时会报错: mysqldump: Couldn't execute 'SET SQL_QUOTE_SHOW_CREA ...
- Spring Cloud Alibaba(6)---Nacos持久化Mysql8.0版本
Nacos持久化Mysql8.0版本 有关Nacos之前写过三篇文章. Spring Cloud Alibaba(3)---Nacos概述 Spring Cloud Alibaba(4)---Naco ...
- dotfuscator 在混淆.Net Framework 4.0以上版本的时候报错的解决方法
dotfuscator 在混淆.Net Framework 4.0以上版本的时候报错的解决方法 在混淆的时候报错了,错误描述大致如下: Could not find a compatible vers ...
随机推荐
- 在鸿蒙NEXT开发中实现一个语音识别组件
鸿蒙系统发布以后都不知道叫它5.0版本还是NEXT版本了,哈哈,反正是最新版本就对了.对于语音转换文字,鸿蒙系统提供了离线语音识别模型speechRecognizer,语种目前支持中文,识别效果非常不 ...
- Python内置数据结构操作VS sqlite3操作
1.摘要 在同一数据库中查询某值,内置数据结构的查询速度快还是数据库sqlite3的查询速度快?针对这一问题,通过构建一个包含2500个随机数的列表,并将其插入sqlite3数据库中,利用timeit ...
- C#中无法将文件”obj\debug\XXX.dll复制到“bin\Debug\XXX.dll” 拒绝访问
较为方便有效的方法就是,把项目属性中的"应用程序集"的"程序集名称"修改为另一个名称即可.
- 实战:Dify智能体+Java=自动化运营工具!
我们在运营某个圈子的时候,可能每天都要将这个圈子的"热门新闻"发送到朋友圈或聊天群里,但依靠传统的实现手段非常耗时耗力,我们通常要先收集热门新闻,再组装要新闻内容,再根据内容设计海 ...
- Vue 学习笔记 [Part 5]
作者:故事我忘了¢个人微信公众号:程序猿的月光宝盒 目录 一. webpack 1.1. webpack的loader 1.1.1 bable的使用--ES6语法处理 1.2. webpack中配置V ...
- Caddy自编译
转载自我的个人博客:Caddy自编译 配置 Golang 环境 需要先配置 Golang 环境:Download and install - The Go Programming Language w ...
- P8842 [传智杯 #4 初赛] 小卡与质数2
传送门 变态数学题(主考位运算与素数筛). 读完题看起来有点难做,因为质数的出现是根本没有可以使用的规律.暴力的话也很好想,枚举 $y$.但是肯定会超时.我们也可以换个方向枚举.对,筛出素数,再返过去 ...
- qt激光加工软件开发——日志模块
本篇主要介绍该加工软件的日志模块 实现的功能: 主界面日志栏显示 分级显示 本地保存 简单的调用机制 目前选择的是qInstallMessageHandler,毕竟是qt亲儿子(Qt 5.0以上版本) ...
- ChatMoney能根据剪纸来进行AI绘画,你见过吗?
本文由 ChatMoney团队出品 剪纸,听起来就很有画面感,承载着中国几千年的文化.一把剪刀.一张红纸,轻轻剪几剪,就能幻化出各种栩栩如生的图案.这门艺术不仅仅是视觉上的享受,更是一种感情的传递,一 ...
- Office 2024 专业增强版超详细下载安装教程(附安装包)
目录 一.Office 2024 专业增强版软件简介 二.Office 2024 专业增强版安装准备 三.Office 2024 专业增强版安装步骤 下载Office 2024安装包: 运行Offic ...