Você pode usar sed
para pesquisar engine myisam
e substituí-lo por engine innodb
.
sed -e 's/engine myisam/engine innodb/g file.sql' > file_innodb.sql
Posso converter o banco de dados MySAM do .sql no mecanismo do InnoDB antes de importá-lo para o meu servidor MySQL? Infelizmente, a importação do arquivo .sql atual demora a ser concluída.
Você pode usar sed
para pesquisar engine myisam
e substituí-lo por engine innodb
.
sed -e 's/engine myisam/engine innodb/g file.sql' > file_innodb.sql
Se você realmente quiser alterar o mecanismo antes de importar, encontrar / substituir é o único caminho. Não tenho certeza se alterar MyISAM para InnoDB pode acelerar a importação, mas considere alguns pontos:
Se você tiver um dump grande, não use o phpMyAdmin para importar. Com o phpMyAdmin, impomos restrições de php, como o tempo máximo de execução, e a importação pode falhar. Use a linha de comando - CMD no Windows ou Terminal no linux - para acessar o mysql e depois importar o dump. Isso funciona muito bem, eu fiz importações de arquivo de 2,5 GB sem problemas.
A velocidade de importação depende do dump em si também. Se o dump for criado com uma instrução de inserção por registro, o caminho será lento. Selecione "inserir várias linhas em cada instrução INSERT" durante a exportação e, em seguida, a importação será muito mais rápida