Using MySQL .NET /Connector with a thousands of rows to do an INSERT IGNORE command results in timeout expired exception. Normally we focus in connection time out or command timeout etc.
But in this case, the problem is with
net_read_timeout, because the command needs to read thousands of rows before to do the task.
The best way to fix it, is to increase the
net_read_timeout (by default is only 30 seconds see mysql website) so, you allow the command sufficient seconds to read. If not, the connection will close, because net_read taked more time than the timeout setted.
So you need to type this in any MySQL Console or any User Interface like MySQL Workbench, you need to have administration permissions to change global variables:
SET GLOBAL net_read_timeout = 100;
I'm developer fall in love with C#, .NET and Mono.
Designing and programming websites since 2001.
I like literature (to read and to write), playing football (soccer)... and of course I'm great fan of La Roja (Spain football team)
At now I work in GetMeAnApartment, I do Research and Development features to upgrade our website (asp.net, MVC, MySQL) and business model (rental short stay apartments)
TECHNOLOGIES: asp.net, asp.net mvc, php, flash, GTK#
APPLICATIONS: wordpress, wikimedia, I programmed modules for Macromedia Flash MX for myself
FRAMEWORKS: .Net Framework, Mono
SERVERS: IIS, apache2
SO: Windows, Debian
SOFTWARE: Visual Studio 2010, 2008. Monodevelop. Glade. Illustrator. Indesign. Photoshop. Dreamweaver.
IT Director and website developer, 2010 - present
Círculo Rojo Publicidad y Comunicación
IT Director and websites developer, 2007 - 2010
Co-founder,Programmer and Developer, Graphical designer 2006 - 2007
Costa Mediterránea Comunicación
Chief writer, 2004 - 2006
Web designer and developer, 2001 - 2003
Designer and Programmer, 2001 - present
Jaime I, University
Advertising, 2000 - 2005