Coping MySQL DB between two servers: which server shoud initiate the operation? I want to copy a database from serverA to serverB. The servers can communicate directly with each other. So I'm able to do something like:

ServerA is sending the database to ServerB:


dbadm1@serverA:~$ mysqldump -C ... database | mysql -h serverB ... database


or: ServerB is ,,draining'' the database from ServerA:


dbadm2@serverB:~$ mysqldump -C -h serverA ... database | mysql ... database


The result of both commands will be, of course, the same.


But which one is better/faster/etc.? Or are they the same?
Initiate coping from serverA or from serverB?
I think the performance difference will be minor.  Do what is more convenient.

If one machine is more powerful, run it on that machine -- Note that you will have 3 processes (mysqldump, mysql, mysqld) on that machine and 1 (mysqld) on the other.