If I were doing this, I'd probably create a Delphi object to do a table to CSV translation. This puts a bit more load on the network, the bulk of the load on the client, but significantly less load on the MySQL server. It also allows for the greatest scalability.
If XML is good enough, you could use
MySQLDUMP. This is a lot easier to write, and it keeps the network load light, but it puts the bulk of the load on the MySQL Server. To get simplicity, you trade scalability.
There are probably lots of other solutions, but these are what jump right to my mind. You might consider posting this question in the
MySQL forum to see what suggestions they can offer.
-PatP