Mysql
 sql >> Database >  >> RDS >> Mysql

Come posso copiare una singola riga/record da un'istanza MySQL a un'altra?

Se hai già familiarità con mysqldump, ti ricordo che mysqldump ha un --where opzione , quindi puoi ottenere una singola riga se scrivi la condizione per quella:

mysqldump databasename tablename --where "id=12345" --no-create-info --skip-add-locks --host=db1  | \
  mysql --host=db2

Puoi anche usare SELECT...INTO OUTFILE per scaricare il risultato di qualsiasi query che desideri in un file flat, anche una query di una singola riga. Quindi LOAD DATA INFILE per importare quel file nell'altra istanza.

Potresti anche scrivere un semplice script nella lingua che preferisci. Connetti a entrambe le istanze. SELEZIONA una singola riga dall'istanza di origine, salvala in una variabile nello script. Quindi formare un comando INSERT da eseguire sull'istanza di destinazione. Questo potrebbe non essere il modo più efficiente per spostare una grande quantità di dati, ma per una singola riga andrebbe bene.