No puedo ayudarte en la conexion con MySQL , pero algo "raro" que veo en tu código es que al comando "cmdCMDAux" no le haces el "new", y luego lo estás tratando como objeto, accediendo a sus propiedades y métodos.
Antes de poder acceder a propiedades y metodos de un objeto debes llamar a su constructor con new, como haces con:  
Código:
 MySQLCommand cmdCMD = new MySQLCommand();
  Otra forma sería, igualar un comando que solo está declarado, a otro que ya le has hecho el new.. pero veo que haces justo lo contrario...  
Saludos.