zoukankan      html  css  js  c++  java
  • .net core 3.1连接 mysql失败,提示 SSL身份验证错误

    配置文件中定义连接字符串:

    "db": "server=10.0.0.0;database=Test;uid=sa;pwd=123456;Allow User Variables=true;default command timeout=120;Pooling=true;Max Pool Size=1000;"

    建立数据库连接:

    public override IDbConnection GetConnection()
            {
                IDbConnection conn = new MySqlConnection(_config["db"]);
                if (conn.State != ConnectionState.Open)
                    conn.Open();
    
                return conn;
            }

    报错:

    Message: "SSL Authentication Error", InnerException: AuthenticationException { TargetSite: Void Throw(), StackTrace: "   at System.Net.Security.SslStream.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, ExceptionDispatchInfo exception

    问题原因:如果MySQL.Data.dll是高版本(8.0.8或者以上),并且MySQL也是5.7.78或者以上的版本,MySQL.Data.dll数据库驱动程序中新增了SSL安全模式,默认情况下是开启的。所以,我们需要在.NET的数据库连接字符串中显式关闭SSL模式

    解决方案:

    "db": "server=10.0.0.0;database=Test;uid=sa;pwd=123456;Allow User Variables=true;default command timeout=120;Pooling=true;Max Pool Size=1000;SslMode=none;"

  • 相关阅读:
    JavaScript 获得今天的日期 (yy-mm-dd)格式
    web前端筛选页面(类似大众点评)
    JS 获取浏览器的名称和版本信息
    java 接收json数据
    指定配置文件启动mongodb
    linux写一个定时任务
    windows杀死占用端口
    mongodb聚合操作汇总
    jpa常用查询
    idea 更换主题
  • 原文地址:https://www.cnblogs.com/yxcn/p/13949716.html
Copyright © 2011-2022 走看看