Alguém??? 2010/5/12 Thiago Freitas <[email protected]>
> João, por favor veja se a minha dúvida fica mais clara agora: > > Passo1: Criei uma tabela de testes com 1.840.161 registros. > > SELECT count(*) from teste; > count > --------- > 1840161 > (1 registro) > > > Passo2: Estava exportando os dados da tabela para um arquivo .csv > > COPY public.teste (campo1,campo2,campo3) to '/tmp/saida.csv' using > delimiters ';' CSV HEADER QUOTE '"' FORCE QUOTE campo1,campo2,campo3; > > > Passo3: Enquanto os dados estavam sendo exportados, matei todos os > processos do PostgreSQL (tentei simular um problema de falta de energia por > exemplo) > > killall postgres > > > Passo4: Verifiquei o conteúdo do arquivo de log > > :/var/log/postgresql$ tail -50 postgresql-8.3-main.log > > > 2010-05-12 14:53:46 BRT LOG: inicializador do autovacuum foi iniciado > 2010-05-12 14:53:46 BRT LOG: sistema de banco de dados está pronto para > aceitar conexões > 2010-05-12 14:53:46 BRT LOG: pacote de inicialização incompleto > 2010-05-12 14:54:01 BRT LOG: pedido de desligamento inteligente foi > recebido > 2010-05-12 14:54:01 BRT FATAL: terminando conexão por causa de um comando > do administrador > 2010-05-12 14:54:01 BRT COMANDO: COPY public.teste (campo1,campo2,campo3) > to '/tmp/saida.csv' using delimiters ';' CSV HEADER QUOTE '"' FORCE QUOTE > campo1,campo2,campo3; > 2010-05-12 14:54:01 BRT LOG: inicializador do autovacuum está sendo > desligado > 2010-05-12 14:54:01 BRT FATAL: o sistema de banco de dados está desligando > 2010-05-12 14:54:01 BRT LOG: desligando > 2010-05-12 14:54:01 BRT LOG: sistema de banco de dados está desligado > > > Passo5: Por fim, no arquivo .csv gerado, o número de linhas não foi nem 0 > (zero) e nem 1.840.161 (o total de registros na tabela) > > /tmp$ cat saida.csv | wc -l > 479700 > > > Como na utilização do comando COPY ocorre tudo dentro de uma transação (é > tudo ou nada) porque obtive este resultado? > > > Obrigado! > > Thiago > > > > > 2010/5/12 Joao Cosme de Oliveira Junior <[email protected]> > > isso ficaria agendado?? se tiver usando linux de um wc -l e veja o numero >> de linhas , implementação facinho ai joga pra dentro dum log...... >> >> tipo pg_dump ..... | wc- -l > arquivo.log >> >> >> >> João Cosme de Oliveira Júnior >> >> >> >> "Lembre-se que da conduta de cada um depende o destino de todos." >> >> Seja inteligente, use Software livre!!! >> LPI Certified >> LPI000185554 >> >> >> Em 12/05/2010 às 10:11 horas, [email protected]: >> >> no caso eu nao preciso fazer cargas, seria apenas exportar os dados das >> tabelas pra arquivos .csv >> no caso de erro na transação, seriam registrados logs? >> >> >> 2010/5/12 Fábio Telles Rodriguez <[email protected]> >> >>> o pgloader tem suporte a logs. Nada lhe impede também de criar um log com >>> um shell script que chame o psql e redirecione o STDOUT para um arquivo, >>> certo? >>> >>> O próprio psql tem funções internas para gerar log, veja: >>> <http://www.postgresql.org/docs/9.0/static/app-psql.html> >>> http://www.postgresql.org/docs/9.0/static/app-psql.html >>> >>> <http://www.postgresql.org/docs/9.0/static/app-psql.html>[]s >>> Fábio Telles >>> >>> Em 12 de maio de 2010 10:04, Thiago Freitas >>> <[email protected]>escreveu: >>> >>> blz pessoal! >>>> mas e quanto a questão dos logs? >>>> >>>> 2010/5/12 Fábio Telles Rodriguez <[email protected]> >>>> >>>> Thiago, o João já lhe respondeu corretamente. >>>>> >>>>> Em geral, exportar não costuma ser um grande problema (a não ser que >>>>> acabe o espaço em disco ou seu servidor caia). No entanto, para cargas, >>>>> você >>>>> pode experimentar o pgloader: >>>>> >>>>> <http://pgloader.projects.postgresql.org/> >>>>> http://pgloader.projects.postgresql.org/ >>>>> >>>>> <http://pgloader.projects.postgresql.org/>[]s >>>>> Fábio Telles >>>>> >>>>> Em 12 de maio de 2010 09:06, Thiago Freitas >>>>> <[email protected]>escreveu: >>>>> >>>>>> Prezados, estou exportando dados de uma tabela para um arquivo no >>>>>> formato .csv. >>>>>> >>>>>> Caso o processo seja abortado durante a exportação, devido a algum >>>>>> erro, será gerado log pelo PostgreSQL? Se sim, como faço para capturar >>>>>> esse >>>>>> erro? >>>>>> >>>>>> Por exemplo, caso já tenham sido exportados 20.000 registros e esteja >>>>>> faltando o restante (total de 100.000 registros) e falta energia. O que >>>>>> acontece? No Arquivo de saída vão estar os 20.000 ou não vai ter nada? Em >>>>>> algum lugar ficará registrado o que aconteceu? >>>>>> >>>>>> Obrigado! >>>>>> Thiago >>>>>> >>>>>> >>>>>> >>>>>> _______________________________________________ >>>>>> pgbr-geral mailing list >>>>>> >>>>>> [email protected] >>>>>> <https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral> >>>>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>>>>> >>>>>> >>>>> >>>>> >>>>> -- >>>>> blog: <http://www.midstorm.org/%7Etelles/> >>>>> http://www.midstorm.org/~telles/ <http://www.midstorm.org/%7Etelles/> >>>>> e-mail / jabber: [email protected] >>>>> >>>>> _______________________________________________ >>>>> pgbr-geral mailing list >>>>> [email protected] >>>>> <https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral> >>>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>>>> >>>>> >>>> >>>> _______________________________________________ >>>> pgbr-geral mailing list >>>> [email protected] >>>> <https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral> >>>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>>> >>>> >>> >>> >>> -- >>> blog: <http://www.midstorm.org/%7Etelles/> >>> http://www.midstorm.org/~telles/ <http://www.midstorm.org/%7Etelles/> >>> e-mail / jabber: [email protected] >>> >>> _______________________________________________ >>> pgbr-geral mailing list >>> [email protected] >>> <https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral> >>> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >>> >>> >> >> >> "Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO), >> empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é >> enviada exclusivamente a seu destinatário e pode conter informações >> confidenciais, protegidas por sigilo profissional. Sua utilização >> desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a >> recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente, >> esclarecendo o equívoco." >> >> "This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a >> government company established under Brazilian law (5.615/70) -- is directed >> exclusively to its addressee and may contain confidential data, protected >> under professional secrecy rules. Its unauthorized use is illegal and may >> subject the transgressor to the law's penalties. If you're not the >> addressee, please send it back, elucidating the failure." >> >> >> _______________________________________________ >> pgbr-geral mailing list >> [email protected] >> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral >> >> >
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
