0) continue; // Get target number of rows $Result2 = @mysql_query("SELECT count(*) FROM $dbname.".$table."", $link1); $Row2 = @mysql_fetch_row($Result2); $target_row_count = $Row2[0]+0; do { @mysql_query("DROP TABLE $dbname.".$table."", $link2); echo "+ ".$table."\r\n"; flush(); exec("/usr/local/bin/mysqldump -h$source_host -u$source_user -p$source_password --compress --opt ".$dbname." ".$table." | mysql -u$dest_user -p$dest_password -C ".$dbname." "); // In case we got disconnected, close and re-open do { @mysql_close($link2); $link2 = mysql_connect("dest","dest_user","dest_password"); if (empty($link2)) sleep(2); } while (empty($link2)); // Check if we have the desired number of rows now $Result2 = @mysql_query("SELECT count(*) FROM $dbname.".$table."",$link2); $Row2 = @mysql_Fetch_row($Result2); $current_row_count = $Row2[0]+0; if ($current_row_count>=$target_row_count ) { echo "$current_row_count = $target_row_count\r\n"; break; } echo "+ Error detected. Retrying ($current_row_count != $target_row_count)\r\n"; sleep(5); } while (1); } } ?>