Error 1042 MySql C#?

本文关键字:MySql 1042 Error | 更新日期: 2023-09-27 18:06:05

我不能通过我的c# cmd连接到我的MySql数据库,它得到我的错误1042这段代码来自:http://social.msdn.microsoft.com/forums/vstudio/en us/67226fe6 - 175 - 4 - f8b - 96 ab - a22fd836617f/inserting -值- - mysql -使用- c

using System;
using System.Diagnostics;
using System.Windows.Forms;
using System.Runtime.InteropServices;
using MySql.Data.MySqlClient;
class MyClass
{
    public static void Main()
    {
        MySqlConnection conn = new MySql.Data.MySqlClient.MySqlConnection();
        MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand();
        string SQL;
    conn.ConnectionString = "server=SERVER; userid=USER;password=PASSWORD;database=DATABASE;";
    try
         {
            conn.Open();
             MessageBox.Show("Files Inserted into database successfully!",
                    "Success!", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
             conn.Close();
        }
        catch (MySql.Data.MySqlClient.MySqlException ex)
        {
            MessageBox.Show("Error " + ex.Number + " has occurred: " + ex.Message,
                "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
}
}

UPDATE - resolved解决了服务器名是一个错误的url我使用db4free.net也许是主机的破折号出了问题

Error 1042 MySql C#?

MySQL服务器无法将客户端IP地址解析为主机名时,报告MySQL错误1042 (HY000)

在我们的MySQL服务器上,我们禁用主机名解析,而使用IP地址。

如果您不想禁用主机名解析,那么您需要确保MySQL可以将您的客户端IP地址解析为主机名,要么通过在/etc/hosts文件(在MySQL服务器主机上)添加适当的条目,要么向DNS服务器添加适当的条目。

否则,您可以通过在MySQL服务器配置文件的[mysqld]部分添加skip-name-resolve(并重新启动MySQL服务器)来禁用主机名解析。注意:任何使用主机名定义的当前用户都将不可用,因为MySQL现在将查找(在MySQL . s中定义)。对于形式为"foo@192.168.1.33"的用户,而不是"foo@tyrion"的用户,MySQL不会找到匹配。(如果您的用户都是用%通配符作为主机名来定义的,这不是问题。)

我正面临同样的问题,我试图连接到remnote mysql服务器使用我的windows 7 os机器,但在我的情况下禁用防火墙解决了我的问题