[FUG-BR] Importação de SQL muito mas muito lento
Leonardo Augusto
lalinden em gmail.com
Sexta Outubro 28 11:48:19 BRST 2011
Esta fazendo insert em myisam ou innodb ?
Innodb precisa ser configurado corretamente, ele so funciona bem com muita ram.
Uma dica, é a de configurar o innodb para gerar um arquivo para cada
tabela, e com isso nao socar tudo naquele mega file ibdata....
Quanda vc tem mega tabelas, facilita em muito a manutencao,
principalmente a liberacao de espaco fisico, ja que o ibdata nao
regride o tamanho..
E quanda é um file per table, vc da um drop table e libera o espaco fisico..
http://dev.mysql.com/doc/refman/5.0/en/innodb-multiple-tablespaces.html
Voce tunou o kernel do seu bsd ? Ou é o generic ?
O fs esta como ? soft_updates ? Quanto tem de ram na maquina ?
2011/10/28 Marcelo Gondim <gondim em bsdinfo.com.br>:
> Em 28/10/2011 10:52, Welkson Renny de Medeiros escreveu:
>> Marcelo Gondim escreveu:
>>> Olá pessoal,
>>>
>>> Montei um sistema FreeBSD novo em um HD Sata II cujo teste de velocidade
>>> deu uns 85MB/s usando o dd como testador. Até aqui tranquilo.
>>> No servidor Linux eu fiz um mysqldump da base que levou um tempo
>>> considerável de uns 20 minutos por aí me gerando um arquivo SQL de 1.6Gb.
>>> Eis que peguei esse sql e fui importar no MySQL do FreeBSD que montei,
>>> coisa que até agora fazia normalmente sendo que dessa vez já tem 4 horas
>>> que está importando e ainda não acabou.
>>> Coloquei até um time na frente do comando para que quando acordasse
>>> pudesse ver o tempo que levou mas acordei e ainda está fazendo.
>>>
>>> Tirando a possibilidade do hd estar com problemas porque havia feito uns
>>> testes e não tinha encontrado nada, alguém faz idéia do que pode estar
>>> causando essa lentidão absurda? :(
>>>
>>> Instalei o mytop para ver o que ocorria e tá lá a instrução:
>>>
>>> MySQL on localhost
>>> (5.0.92-log)
>>> up 0+05:05:26 [09:59:23]
>>> Queries: 1.3k qps: 0 Slow: 758.0 Se/In/Up/De(%):
>>> 00/86/00/01
>>> qps now: 1 Slow qps: 0.0 Threads: 2 ( 2/ 1)
>>> 00/00/00/00
>>> Key Efficiency: 89.0% Bps in/out: 64.2k/ 1.3k Now in/out: 21.0/202.8k
>>> Master: mysql-bin.000004/130386302 do: ign:
>>>
>>> 4 root localhost amavisd 0 Query INSERT
>>> INTO `msgs` VALUES
>>> (0,'Xd-lNqGsr21c','OAKrnkFF6DbX','03004-03-238',1302211535,'20110407T212535Z',1
>>> 9 root localhost amavisd 0 Query show
>>> full processlist
>>>
>>> 9 root localhost amavisd 0 Query show
>>> full processlist
>>> 4 root localhost amavisd 8 Query INSERT
>>> INTO `msgs` VALUES
>>> (0,'Xhh-6D2A2Km3','uZFrbYygiyc3','15174-04',1313098381,'20110811T213301Z',16434
>>>
>>> 9 root localhost amavisd 0 Query show
>>> full processlist
>>> 4 root localhost amavisd 29 Query INSERT
>>> INTO `msgs` VALUES
>>> (0,'Xhh-6D2A2Km3','uZFrbYygiyc3','15174-04',1313098381,'20110811T213301Z',16434
>>>
>>> 9 root localhost amavisd 0 Query show
>>> full processlist
>>> 4 root localhost amavisd 14 Query INSERT
>>> INTO `msgs` VALUES
>>> (0,'XmRZtbsqKoWA','Fy5S22U8sVHv','27252-03-28',1302225807,'20110408T012327Z',12
>>>
>>> Pensei: nossa o mysql deve estar consumindo uns 200% de CPU e aí no top
>>> vejo que ele está apenas com 0.00%:
>>>
>>> 2092 mysql 12 44 0 489M 119M ucond 0 18:47 0.05% mysqld
>>> 2134 root 1 44 0 19900K 4708K sbwait 1 0:21 0.00% mysql
>>>
>>> No dmesg não acusa nenhuma mensagem e nem no messages. Realmente não
>>> entendo porque não acabou de importar ainda
>> Uma boa prática na inserção de grandes quantidades de dados é antes
>> remover os índices.
>> Quando concluir a inserção, recria.
>>
>> Isso melhora o muito o desempenho.
>>
>> Índice é bom para consulta, para inserção deixa o processo bem mais lento.
>>
> Tranquilo :) vou esperar agora que já tá fazendo mesmo rsrsrsrsrs mas
> pode ser isso mesmo.
>
> Valeu pela luz pessoal.
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
Mais detalhes sobre a lista de discussão freebsd