Dotconnect для mysql может иметь эту функцию, но я не знаю о бесплатной версии.
В противном случае вы можете просто вызвать утилиту mysqldump и сделать что-то вроде этого:
public void DumpMySQLDb(string user, string password, string database, string outputFile) {
var commandLine = string.Format("mysqldump --user={1}--password={2} --hex-blob --databases {3}",
user, password, database)
var process = new Process();
process.StartInfo = new ProcessStartInfo {
FileName = "cmd",
Arguments = string.Format( "/c \"{0}\" > {1}", commandLine, outputFile )
};
process.Start();
}