Por exemplo, hoje eu faço assim:
mysqlbinlog arquivo-de.log | grep -E "INSERT INTO banco.tabela .*" > log-insert.txt mysqlbinlog arquivo-de.log | grep -E "^UPDATE .*|^DELETE .*|^CREATE .*" > log-outros.txt Como vocês podem ver, dessa forma, sou obrigado a abrir duas vezes o arquivo de log para filtrar o que preciso. Levando em conta que esses arquivos chegam facilmente a 200M, dá pra imaginar o tempo que leva pra rodar essa encrenca. Estava pensando em alguma forma de criar esses 2 arquivos em uma única chamada ao log. Algo do tipo: mysqlbinlog arquivo-de.log | grep SE INSERT > log-insert.txt SENAO > log-outros.txt É por aí... Abs. Victor 2008/9/30 jimmy <[EMAIL PROTECTED]> > teria um exemplo? > > > On Tue, Sep 30, 2008 at 10:02:59AM -0300, Victor LGomes wrote: > > Bom dia galera! > > > > Estou com um problema aqui que não sei como resolver (e nem se há uma > forma > > de resovê-lo como estou querendo). > > > > Tenho que filtrar um arquivo de log do banco de dados MySQL e criar um > > arquivo contendo os comandos de INSERT em uma determinada tabela e um > > segundo arquivo contendo os demais comandos. Atualmente preciso varrer o > log > > uma primeira vez para pegar os INSERTs e uma segunda vez para pegar os > > demais comandos. Como são arquivos muito grandes, isso leva um tempo > > considerável e imaginei que se houvesse uma forma de, em uma única > passada, > > pegar os INSERTs e jogar para um arquivo e os demais para outro, ganharia > > bastante em performance. > > > > Alguém saberia como fazer isso ? Pesquisei um pouco mas não encontrei > nada a > > respeito. > > > > Obrigado! > > Victor > > > > ------------------------------------ > > [As partes desta mensagem que não continham texto foram removidas]
