Logo Hardware.com.br
Core_Dump
Core_Dump General de Pijama Registrado
3.2K Mensagens 111 Curtidas

Recuperar um banco de dados que sofreu incrementos.

#1 Por Core_Dump 30/08/2013 - 20:00
Fiz uma censurado.png no meu banco de dados MySQL. Executei um script, que eu mesmo desenvolvi, para transformar as letras em caixa alta e eliminar alguns caracteres indesejáveis inseridos ao longo do tempo em alguns campos, a fim de uniformizar os dados. Fiz um dump do banco de dados antes de executar o script e tudo correu muito bem, exceto que não tinha atentado para o fato de que ele incluia eliminação de pontos e vírgulas em campos onde isso não poderia acontecer, por exemplo em pagamentos e em dados numéricos.
Apesar do backup (dump), não notei a mancada até alguns dias após, quando já havia lançado centenas de novos registros no banco de dados.
Existe alguma forma de eu recuperar os registros do banco de dados contidos no dump, sem alterar os registros novos, que estão corretos? Colocando de outra forma, é possível importar os dados de um dump limitando até uma determinada data?
explosive_spirit
explosive_sp... Zerinho Registrado
119 Mensagens 7 Curtidas
#2 Por explosive_sp...
30/08/2013 - 21:19
Core_Dump disse:
Fiz uma censurado.png no meu banco de dados MySQL. Executei um script, que eu mesmo desenvolvi, para transformar as letras em caixa alta e eliminar alguns caracteres indesejáveis inseridos ao longo do tempo em alguns campos, a fim de uniformizar os dados. Fiz um dump do banco de dados antes de executar o script e tudo correu muito bem, exceto que não tinha atentado para o fato de que ele incluia eliminação de pontos e vírgulas em campos onde isso não poderia acontecer, por exemplo em pagamentos e em dados numéricos.
Apesar do backup (dump), não notei a mancada até alguns dias após, quando já havia lançado centenas de novos registros no banco de dados.
Existe alguma forma de eu recuperar os registros do banco de dados contidos no dump, sem alterar os registros novos, que estão corretos? Colocando de outra forma, é possível importar os dados de um dump limitando até uma determinada data?


Se existe eu desconheço pois sou programador web e não tenho conhecimento aprofundado em BD, mas sugiro você criar uma base temporária, importar o dump nela, e depois usar insert + select para transferir os dados ex:


INSERT INTO bd_orig.tab_orig (bd_orig.tab_orig.c1, bd_orig.tab_orig.c2, ....)
SELECT bkp.c1, bkp.c2, ... FROM bd_bkp.tab_bkp AS bkp;
Assim você terá duas bases e poderá trocar informações entre elas, desde que usando prefixo corretamente: banco.tabela.coluna

Espero ter ajudado.
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal