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

Responder a