Vous pouvez utiliser les commandes 'SELECT ... INTO OUTFILE' et 'LOAD DATA INFILE INTO TABLE'.
Édit :Élaboration...
Étant donné les structures de table :
CREATE TABLE my_local_table (
id int NOT NULL auto_increment PRIMARY KEY,
data varchar(20),
created_on datetime);
CREATE TABLE server_table (
id int NOT NULL auto_increment PRIMARY KEY,
data varchar(20),
created_on datetime,
local_id int);
Et quelques fausses données :
INSERT INTO my_local_table (data, created_on) VALUES ('test', now()), ('test2', now());
Vous utiliserez les commandes suivantes :
SELECT id, data, created_on
FROM my_local_table
WHERE created_on >= '2011-08-18'
INTO OUTFILE '/tmp/t.txt';
-- (and on the server)
LOAD DATA LOCAL INFILE '/tmp/t.txt'
INTO TABLE server_table
(local_id, data, created_on);
Pour automatiser les deux, vous pouvez utiliser un script bash / fichier batch appelant mysql en vous connectant d'abord au serveur local en utilisant la première instruction, puis au serveur distant en exécutant la seconde.
mysql -e 'SELECT....';
mysql -h remote_server -e 'LOAD DATA...';