Mysql
 sql >> Base de données >  >> RDS >> Mysql

Comment puis-je copier une seule ligne/enregistrement d'une instance MySQL à une autre ?

Si vous connaissez déjà mysqldump, je vous rappelle que mysqldump a un --where possibilité , vous pouvez donc obtenir une seule ligne si vous écrivez la condition pour cela :

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

Vous pouvez également utiliser SELECT...INTO OUTFILE pour vider le résultat de toute requête souhaitée dans un fichier plat, même une requête d'une seule ligne. Puis LOAD DATA INFILE pour importer ce fichier sur l'autre instance.

Vous pouvez également écrire un script simple dans la langue de votre choix. Connectez-vous aux deux instances. SELECT une seule ligne de l'instance source, enregistrez-la dans une variable du script. Formez ensuite une commande INSERT à exécuter sur l'instance de destination. Ce n'est peut-être pas le moyen le plus efficace de déplacer une grande quantité de données, mais pour une seule ligne, ce serait bien.