C# mysql 链接 遇到 异常 Authentication with old password no longer supported, use 4.1 style passwords.

用最新版的 mysql connector 去链接 远程的mysql服务器.  

遇到 异常 Authentication with old password no longer supported, use 4.1 style passwords.

上网搜, 官方说是服务器的密码版本新,  客户端的版本太低, 连不上. 要更新我的客户端.   但是我的connector 是刚从官方下载的最新的啊. 这不科学啊.

还有人说是去服务器上服务器上的密码存储方式 改成旧版本,这样就可以了.  但是服务器不是我的,  我没有权限去改服务器的配置.

 

最后发现 一个帖子http://stackoverflow.com/questions/13706463/authentication-method-mysql-old-password-not-supported

里面说 MysqL Connector/NET 6.6.x (as of 6.6.2) dropped support for old password style authentication (it was deprecated due to being insecure and there were documented ways to attack it).

其实就是说 .net的connector 已经抛弃了旧的密码方式, 只支持新的密码方式.   突然明白了.   应该是客户端的密码认证方式太新, 而服务器的密码是旧的方式存储的. 

所以就要去把服务器的密码存储方式改成新的.  怎么改呢. 找到这个地址  http://writecodepeople.blogspot.com/2013/03/mysql-41-style-password.html

在服务器端只提供了phpmyadmin, 没有console啊.   我记得有个地方可以执行sql语句

于是去服务器上打开phpmyadmin.  打开数据库.  打开Sql tab, 这里可以执行 sql语句.哈哈

执行这两句:

SET old_passwords=FALSE;

SET PASSWORD = PASSWORD('重设密码');

之后, 在用c# connector 去连.  成功.

reffer: http://byNeil.com

posted @   -Neil  阅读(4442)  评论(5编辑  收藏  举报
编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示