C#和MySQL连接问题:任何可用插件都不支持mysql_clear_password

时间:2013-09-23 15:53:02

标签: c# mysql authentication

我一直在高低搜索,试图找出如何处理我在尝试登录MySQL数据库时遇到的身份验证错误。也许我不知道要问什么问题或者我在寻找什么,但这就是我所拥有的,

 using MySql.Data.MySqlClient;
 using MySql.Data;
 MySqlConnection con;
 MySqlDataAdapter da;

private void button1_Click(object sender, EventArgs e)
        {
            try
            {        
                con = new MySqlConnection();
                con.ConnectionString = "Data Source=SOURCE;port=3306;username=USR;password=PWD";
                con.Open();
                con.Close();
            }
            catch (Exception c)
            {
                MessageBox.Show(c.ToString());
            }
        }

直截了当,只是尝试打开一个连接,然后关闭它以验证我可以继续前进,但它会引发有关身份验证方法的认证错误' mysql_clear_password'任何可用的插件都不支持。

我知道它与明文插件有关,但我不知道如何激活它以解决此错误。

我可以使用MySQL WorkBench连接到服务器并查看表格和所有这些性质,因为它有一个明文插件的选项,但我无法获得C#(或MS Access)就此而言)使用相同的信息连接,减去明文插件,因为我不知道如何在代码或其他地方设置它。

任何帮助都是值得赞赏的。

1 个答案:

答案 0 :(得分:0)

当您连接到以旧密码格式存储密码的MySQL数据库时,会出现此错误消息。较新的MySQL客户端不允许使用旧密码格式与数据库建立连接,因为它不太安全。为避免此类错误,您需要将MySQL密码从旧格式升级到新格式。