2012-09-10

MySQL exception: Host 'host_name' is blocked

[環境]

  • client
  1. 數台機器定時向 MySQL database 取得資料。
  2. windows 2008 R2 standard
  3. .net 2.0 sp2
  4. c#
  • db server
  1. MySQL 5.0.45
  2. windows 2008 R2 standard


[狀況]

突然間(about 2am. orz),有一台機器連不到 MySQL,但其他機器仍正常運作。

MySql.Data.MySqlClient.MySqlException: Host 'xxx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'   在 MySql.Data.MySqlClient.PacketReader.CheckForError()
   在 MySql.Data.MySqlClient.NativeDriver.Open()
   在 MySql.Data.MySqlClient.MySqlPool.GetPooledConnection()
   在 MySql.Data.MySqlClient.MySqlPool.GetConnection()
   在 MySql.Data.MySqlClient.MySqlConnection.Open()
   在 SQLDB.MySQLNativeDB.reCreateSqlCommand() 位置 D:\projects\vs2008\source\MatchEngine\Scupio2.0\SQLDB\MySQLNativeDB.cs:行号 132
   在 SQLDB.MySQLNativeDB.ExecuteCmdNonQuery(String sqlcmd, IDataParameter[] parameters) 位置 D:\projects\vs2008\source\MatchEngine\Scupio2.0\SQLDB\MySQLNativeDB.cs:行号 86

這個例外訊息看起來蠻明確的: 機器 xxx 被 MySQL db server 擋(block)了。