Problemas de lock em tabelas myisam

MySQL

29/06/2012

Pessoal, bom dia!
Estou com problema em um banco de dados MySQL 5.1.61 muito critico. As tabelas foram criadas com engine MyISAM, ao executar um backup ou mesmo um select na tabela mais utilizada a mesma é bloqueada e causa indisponibilidade na aplicação. Já pesquisei várias formas de tentar resolver o problema. Já tentei executar backup com a opção --lock-tables=no e agora estamos tentando migrar as tabelas para INNODB.
Será que alguém poderia me ajudar? Será que seria algum problema na configuração em relação ao engine MyISAM? Se mudarmos para INNODB pode resolver?
Outro detalhe a conversão para INNODB está muuuiiiito lenta!
Desde já agradeço.
Aletta Santos

Aletta Santos

Curtidas 0

Respostas

Romulo Contro

Romulo Contro

29/06/2012

normalmente a tabela fica travada mesmo quando tá rodando algum comando... aí quando termina de rodar o select, update, backup, etc, ela destrava...

o comando pra destravar ela é flush table nometabela
isso acredito que vc ja deve saber, mas só pra deixar aqui comentado pra quem tiver duvida...

e tem outra coisa, vc faz backup da aplicação, fica esperto quando for mudar pra innodb, pq o jeito que o banco é armazenado é diferente do myisam...
no myisam salva 3 arquivos: .myd, .myi, .frm;
no innodb ele salva um arquivo fora da pasta do banco, que se nao me engano começa com ib.... alguma coisa o nome... nao lembro exatamente qual é, mas é um arquivo grande que de padrão fica na pasta do mysql, na pasta anterior do seu banco... aí na pasta do banco só salva os .frm...

o backup do myisam copia os arquivos frm e myd... o backup do innodb vc tem que mudar pra fazer em modo dump... entao da uma analisada nisso pra nao prejudicar em nada na sua aplicação...
GOSTEI 0
POSTAR