como tirar o mysqldump dos últimos 1000 registros de um banco de dados
11
mysqldump
tem uma --where
opção Supondo que você tenha algum tipo de detalhamento para descobrir quais são os últimos 1000 registros inseridos (por exemplo, um campo de incremento automático chamado id
), você poderá anexar isso ao mysqldump
comando, da seguinte maneira:
mysqldump --where "1=1 ORDER BY id DESC LIMIT 1000" DB_NAME TBL_NAME
O 1=1
é necessário porque a palavra-chave "onde" é inserido na consulta automaticamente, assim você tem que dar-lhe algum SQL para avaliar.
EDIT: Houve uma edição anônima nesta resposta removendo o espaço entre --where e "1 = 1, dizendo que o comando falhou sem espaço. Acabei de testar e ele trabalha com espaço e erros sem espaço, sem saber o que o editor estava vendo.
O erro ao deixar o espaço de fora:
mysqldump: unknown variable 'where1=1 ORDER BY UserID DESC LIMIT 1000'
--where="..."
ou-w "..."
Veja dev.mysql.com/doc/refman/5.6/en/...