Veja os últimos dados adicionados no MySQL DB, Debian

1

Existe alguma maneira pela qual eu possa ver quais dados foram adicionados por último a um banco de dados MySQL e quando esses dados foram adicionados?

Dist: Debian 7.0 (wheezy)

    
por JohnSmith 05.04.2013 / 10:10

1 resposta

1

Não diretamente. No entanto, existem duas maneiras de obter essas informações:

Uso de logs

O MySQL fornece a capacidade de armazenar alterações em um "log". Isso é usado principalmente para replicação e backup.

Antes de 5.0, este era um formato ASCII contendo todas as instruções SQL que realmente faziam alterações nos dados - link

No entanto, 5.0 e posteriores movem para um formato de log binário que exigiria algum tipo de análise (embora isso seja sem dúvida possível através de um utilitário independente ou usando uma segunda réplica do MySQL para ver apenas o processamento de mudanças fora do escopo de meu conhecimento e esta resposta) - link

Uma abordagem mais desordenada seria verificar os tempos de atualização de arquivos (esses arquivos binários são onde os bancos de dados são armazenados no disco). Teoricamente, você pode ver quais bancos de dados foram atualizados (arquivos atualizados com registro de data e hora - embora isso possa ser imperfeito devido à indexação e outras alterações que não sejam de atualização) e, em seguida, examinar os bancos de dados individuais.

O uso dessa abordagem só indicaria quais bancos de dados poderiam ter sido atualizados e certamente não indicariam em que medida ou quais tabelas.

Uma alternativa pode ser um script personalizado que obtenha uma lista de todas as suas tabelas e armazena talvez a chave primária mais alta (para chaves de incremento automático) ou o número de linhas e depois verifique periodicamente novamente (tudo isso pode ser facilmente automatizado como o MySQL fornece comandos para descrever a estrutura da tabela, etc).

    
por 05.04.2013 / 10:54