Jag har inte använt MySql på ungefär 6 månader (tack och lov migrerade till SQL Server) men försök att ändra dina @-symboler för ?, som om minnet fungerar, det är rätt konvention med MySql, så:
MySqlCommand cmdAdd = new MySqlCommand(
"INSERT INTO Faults (FaultGroup, Text, Date, IP)"
+ " VALUES (?FaultGroup, ?Text, ?Date, ?IP)",
conn);
MySqlParameter paramFaultGroup = new MySqlParameter("?FaultGroup", MySqlDbType.Int32);
FaultsGroup faultsGroup = (FaultsGroup) Enum.Parse(typeof (FaultsGroup), myFault.FaultGroup);
paramFaultGroup.Value = (int) faultsGroup;
cmdAdd.Parameters.Add(paramFaultGroup);
cmdAdd.ExecuteNonQuery();