mysqldump dos últimos 1000 registros

10

como tirar o mysqldump dos últimos 1000 registros de um banco de dados

    
por bvishal4u 13.09.2010 / 12:45

1 resposta

16

mysqldump tem uma opção --where . Supondo que você tenha algum tipo de suporte para descobrir quais são os últimos 1000 registros inseridos (por exemplo, um campo de incremento automático chamado id ), você deve poder colocar isso no comando mysqldump , da seguinte forma:

mysqldump --where "1=1 ORDER BY id DESC LIMIT 1000" DB_NAME TBL_NAME

O 1=1 é necessário porque a palavra-chave "WHERE" é inserida na consulta automaticamente, portanto você precisa fornecer algum SQL para avaliar.

EDIT: Houve uma edição anônima feita para esta resposta removendo o espaço entre --where e "1 = 1, dizendo que o comando errou sem espaço. Acabei de testar e funciona com o espaço e erros sem o espaço , sem saber o que o editor estava vendo.

O erro ao sair do espaço:

mysqldump: unknown variable 'where1=1 ORDER BY UserID DESC LIMIT 1000'
    
por 13.09.2010 / 17:13

Tags