.net连接MySql:Unable to connect to any of the specified MySQL hosts

此问题扰民大发了。

最终毙之:

2011-11-2 16:24:56:MySql.Data.MySqlClient.MySqlException: Unable to connect to any of the specified MySQL hosts. ---> System.Net.Sockets.SocketException: 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 127.0.0.1:3307
   在 System.Net.Sockets.Socket.EndConnect(IAsyncResult asyncResult)
   在 MySql.Data.Common.StreamCreator.CreateSocketStream(IPAddress ip, Boolean unix)
   在 MySql.Data.Common.StreamCreator.GetStream(UInt32 timeout)
   在 MySql.Data.MySqlClient.NativeDriver.Open()
   --- 内部异常堆栈跟踪的结尾 ---
   在 MySql.Data.MySqlClient.NativeDriver.Open()
   在 MySql.Data.MySqlClient.Driver.Open()
   在 MySql.Data.MySqlClient.Driver.Create(MySqlConnectionStringBuilder settings)
   在 MySql.Data.MySqlClient.MySqlConnection.Open()
   在 PubFun.ConData.ExcSQL(String sql, Int32 timeOut)
在网上搜索了很多原因:

1. mysql.data.dll 服务器端和客户端版本不对应。 别人说的我没有明白,mysql.data.dll版本好像只有应用程序这一端才会用吧。其他地方不用啊。

    mysql安装在服务器端后,有这个东东吗?不知道。再议。

    也有人说,换个mysql.data.dll的版本就好了,但是我用.net framework3.5,试了几个版本后,发现编译不过去。所以,再议。


2.  mysql 链接字符串

    最初链接:

   

 ConstPar.mysqlconstr = "server=" + ConXML.GetNodeValue("//DataBase", "ip") + ";user id=" + ConXML.GetNodeValue("//DataBase", "user") + ";password=" + ConXML.GetNodeValue("//DataBase", "psd") + ";pooling=false;Port=" + ConXML.GetNodeValue("//DataBase", "port");

  修改为:

 ConstPar.mysqlconstr = "server=" + ConXML.GetNodeValue("//DataBase", "ip") + ";user id=" + ConXML.GetNodeValue("//DataBase", "user") + ";password=" + ConXML.GetNodeValue("//DataBase", "psd") + ";pooling=false;Port=" + ConXML.GetNodeValue("//DataBase", "port")+";CharSet=utf8;Allow Zero Datetime=true";


  具体行不行不知道,反正在我这里没有行通。


3. mysql链接字符串。

   最终修改为:

 ConstPar.mysqlconstr = "server=" + ConXML.GetNodeValue("//DataBase", "ip") + ";user id=" + ConXML.GetNodeValue("//DataBase", "user") + ";password=" + ConXML.GetNodeValue("//DataBase", "psd") + ";pooling=true;Port=" + ConXML.GetNodeValue("//DataBase", "port")+";CharSet=utf8;Allow Zero Datetime=true";

 有朋友该说了,这不和2中修改后的一样吗?

 请注意:pooling=true;

 最后,修改这个后,再也没有出现上面的问题了。


  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值