79 votes

Comment utiliser mysqldump pour une partie d'une table ?

Je ne peux donc exporter qu'un tableau comme celui-ci :

mysqldump -u root -p db_name table_name > table_name.sql

Existe-t-il un moyen d'exporter seulement une partie d'une table avec mysqldump ? Par exemple, 0 à 1 000 000 de lignes, 1 000 000 à 2 000 000 de lignes, etc.

Dois-je le faire avec mysqldump ou une requête ?

0voto

Anton Zarkov Points 9

Dans mon cas, j'ai exécuté ceci :

SELECT * 
  INTO OUTFILE 'C:\Documents and Settings\Anton.Zarkov\Desktop\joomla_export\data_AZ.sql'
  FROM `jos_glossary`
 WHERE id>6000
  • il n'y a pas d'erreur de syntaxe - la requête passe.
    1. Le résultat est NULL - aucune ligne n'a été écrite. (Je suis sûr - le dernier ID est 6458)
    2. Si je répète la requête a n error occurs => #1086 - File 'C:Documents and SettingsAnton.ZarkovDesktopjoomla_exportdata_AZ.sql' already exists
    3. Malheureusement, je ne trouve le fichier "existant" nulle part sur le disque C. Où est-il ?

Les conditions sont les suivantes : phpMyAdmin SQL Dump ; version 3.4.5 ; hôte : localhost ; version du serveur : 5.5.16 ; version PHP : 5.3.8

0voto

sachin_ur Points 302

La requête ci-dessous est pour sélectionner à partir d'une plage d'id, vous pouvez utiliser date_créée ou tout autre au lieu de id

mysqldump --opt --host=dns --user=user_name --password=your_passwd db_name --tables table_name  --where "id > 1 and id < 100 " > /file_name.sql

ex: --where="date_created > '2019-01-18' " --> au lieu de id

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X