c#连接MySQL8.0.18

本文讲述了如何在遇到MySQL caching_sha2_password问题后,通过修改my.ini文件将default_authentication_plugin设置为mysql_native_password,并演示了ALTER USER语句的使用,以及尝试加入SslMode=None未果的解决方案过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

版本:安装 MySql.Data 6.7.9(安装最新版本,我出现了问题)

连接测试:caching_sha2_password问题,

在navicat中通过

SHOW GLOBAL VARIABLES;

查看到default_authentication_plugin = caching_sha2_password(注:以下图片已经是修改后的了)

通过以下方式找到my.ini文件

打开后更改成

default_authentication_plugin=mysql_native_password

最后在navicat新建查询中执行

ALTER USER root IDENTIFIED WITH mysql_native_password BY '你的密码';

到此,我的问题解决;

有人说要在连接语句后加上

SslMode=None (我试了一下没成功)
 public MySqlConnection OpenConn()
        {
            
            string MyConStr = "server=127.0.0.1;port=3307;user=root;password=1234;database=shalegasids;";
      
            MySqlConnection conn = new MySqlConnection(MyConStr);
            if (conn.State == System.Data.ConnectionState.Closed)
                conn.Open();       
            return conn;
        }

 

MySQL Connector/Net 版本所需的 .Net Framework 版本 不同的版本 MySQL Connector/Net 所需的 .Net Framework 版本也是不同的: MySQL Connector/Net 6.9.12 需要 .Net Framework 4.0 或更高版本支持。(2018-04-30, General Availability) MySQL Connector/Ne 6.10.1 需要 .Net Framework 4.5.1 或更高版本支持。 MySQL Connector Net 6.10.2 到最新的 MySQL Connector Net 8.0.20 需要 .Net Framework 4.5.2 或更高版本。 MySQL Connector/NET 6.9.12 支持与 MySQL Server 8.0.3 以及之前版本的MySQL Server连接。 从官方网站下载mysql-connector-net-8.20.0.msi安装之后,安装目录下的Assemblies中只有v4.5.2的MySql.Data.dll,也就是说它需要 v4.5.2 以上版本的 .Net Framework 支持。如果VS项目的目标框架是.NET Framework 4.5.2或更高版本,则引用正常;将项目的目标框架改为.NET Framework 4 再进行编译就会报错,提示“ 未能解析主引用“MySql.Data, Version=...... 该程序集是针对 .NETFramework,Version=v4.5.2 框架生成的......该框架版本高于当前目标框架 .NETFramework,Version=v4.0”。这表明这个 MySQL Connector/Net 的 MySql.Data.dll 需要 .Net Framework v4.5.2 的支持。 如果项目的目标框架是 .Net Framework v4.0 则最高只能使用 MySQL Connector/Net 6.9.12 的 MySql.Data.dll 。而需要注意的是 MySQL Connector/Net 6.9.12 的 MySql.Data.dll 是在2018-04-30发布的,官方文档显示支持与 MySQL Server 8.0.3 及之前的版本的MySQL Server连接C#通过MySql.Data.dll连接MySql数据库 在项目中引用组件:MySql.Data.dll (记得复制到本地中选择为true / 或直接把MySql.Data.dll复制到debug文件夹下) 在代码中 using MySql.Data.MySqlClient; ......接下来这里就看你表演了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值