gpt4 book ai didi

MySQL 在 Debug模式下连接失败

转载 作者:行者123 更新时间:2023-11-30 00:41:02 25 4
gpt4 key购买 nike

我在 MySQL 连接方面遇到了一个奇怪的问题。我的环境是

OS - Microsoft Windows Home Basic
IDE - SharpDevelop 4.3.3.9663

MySQL Server - 5.5
MySQL Connector - 6.8.3

我创建了一个示例程序,用于连接到我的计算机中的 MySQL 服务器。

using System;
using MySql.Data.MySqlClient;

namespace TestBed
{
class Program
{
private static MySql.Data.MySqlClient.MySqlConnection conn;
public static void Main(string[] args)
{
Console.WriteLine("Hello World!");

connect();

Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}

public static void connect()
{

string myConnectionString;

//myConnectionString = "Server=localhost; Port=3306; Database=test; Uid=root; Pwd=Welcome01;"; //works fine in rel mode
myConnectionString = "Server=127.0.0.1; Port=3306; Database=test; Uid=root; Pwd=Welcome01;";

try
{
conn = new MySql.Data.MySqlClient.MySqlConnection(myConnectionString);
conn.Open();
Console.WriteLine("opened");
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
Console.WriteLine(ex.Message);
}
}
}
}

我一开始就收到以下错误。

MySql.Data.MySqlClient.MySqlException: Unable to connect to any of the specified MySQL hosts.
at System.Void MySql.Data.MySqlClient.NativeDriver.Open()
at System.Void MySql.Data.MySqlClient.Driver.Open()
at static Driver MySql.Data.MySqlClient.Driver.Create(MySql.Data.MySqlClient.MySqlConnectionStringBuilder settings)
at Driver MySql.Data.MySqlClient.MySqlPool.CreateNewPooledConnection()
at Driver MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()
at Driver MySql.Data.MySqlClient.MySqlPool.TryToGetDriver()
at Driver MySql.Data.MySqlClient.MySqlPool.GetConnection()
at System.Void MySql.Data.MySqlClient.MySqlConnection.Open()
at static System.Void TestBed.Program.method() in ...\TestBed\Program.cs:line 36
at static System.Void TestBed.Program.Main(System.String[] args) in ...\Program.cs:line 19

我从此链接( Cant connect to MySQL when using Debug mode )得到了提示,并尝试使用 Release模式。令人惊讶的是它能够打开连接!

我进一步分析了一下,发现了以下内容。

  1. 只有当我使用“调试”->“单步执行”(使用 F10 键逐步调试)时,才会抛出错误!
  2. 如果我只是在 Debug模式下启动应用程序,它就会连接。
  3. 我能够在“connect()”方法上方和下方设置断点
  4. 我还可以使用单步执行(使用 F10 键)来调试应用程序的其他部分,但如果我使用单步执行此方法,则会花费很长时间并引发相同的错误。

我不确定我是否做错了什么,或者这是 MySQL 或 SharpDevelop 的错误。有人遇到过这种问题吗?如果可能的话,有人请解释一下吗?

谢谢,加内什·佩里亚萨米

最佳答案

试试这个..

"Persist Security Info=False;server=127.0.0.1;database=xx;uid=yy;password=zz"

关于MySQL 在 Debug模式下连接失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21769117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com