Salut FredAWT.
Envoyé par
FredAWT
j'aimerai réaliser cela en lui spécifiant de ne prendre que les X derniers enregistrements de la table car la table est très lourde
Si j'ai besoin de récupérer disons les 10 dernières lignes d'une table contenant 100 lignes au total, je procède ainsi :
select * from {ma table} order by id limit 90,10
Ou encore en faisant un tri du plus grand au plus petit :
select * from {ma table} order by id desc limit 10
Ici, 'id' est la clef primaire de la table.
Ainsi je crée une table temporaire avant de faire mon 'mysqldump'.
Autre solution possible mais uniquement avec MySqlDump. Il existe en effet un clause where.
Dans le même exemple, il suffit d'indiquer par la clause where que tu extrais uniquement les lignes : 'id > 90'.
Cela se traduit par :
mysqldump --databases base --tables test --where="id > 90" --result-file=test.sql
Comme tu peux le voir, il existe plusieurs solutions pour extraire ce dont tu as besoin.
@+
Partager