On Thu, 18 Sep 2008 09:33:59 -0300, "Rodrigo Monteiro" <[EMAIL PROTECTED]> wrote:
> No relatório tem o código do fornecedor e como eles não querem a curva > abc com nomes de fornecedores repetidos eu capturo o maior código, que > logicamente é o fornecedor mais ativo. O sistema é em PHP, e os > relatórios de curva abc tem saida em pdf e xls, era usada uma classe para > criar o relatório, antes eu não poderia simplesmente tirar o código do > fornecedor do relatório, só que agora eu consegui modificar a classe! > Então, seguindo as recomendações deste pessoal fantástico do fórum eu > já posso retirar o max() do select. É sempre culpa da modelagem :) > Volpato escreveu: >> PS: >> - quanto de memória vc tem ? > Aqui no escritório eu tenho 1 gb, no cliente eu preciso confirmar, algo > entre 2 e 3 gb > > >> - quanto de shared_buffers está setado no postgresql.conf? >> - quanto de work_mem ? > > # - Memory - > > shared_buffers = 1000 # min 16 or max_connections*2, 8KB each > #work_mem = 1024 # min 64, size in KB > #maintenance_work_mem = 16384 # min 1024, size in KB Arrá, configurações padrão... elas não servem pra ninguém. Com 1G , você pode setar: shared_buffers = 25600 # 200MB = 200*1024/8 (mem ativa) maintenance_work_mem = 131072 # 128MB = 128*1024 (mem do vacuum) work_mem = 65536 # 64MB = 64*1024 (mem do order by) Para 2GB, multiplique por 2 ... Muito importante: veja se o parâmetro "max_connections" equivale a tua realidade. Se tiver o padrão, são 100 conexões. Pelo jeito, você precisa de menos. Se você não configurar direito, teu banco pode cair por falta de memória. Imagine que os 64MB de work_mem são multiplicados pela quantidade de usuários fazendo "order by" naquele momento ... []´s, ACV _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
