Movendo um Banco de Dados InnoDB para Outra Máquina


No Windows o InnoDB armazena os nomes de banco de dados e tabelas internamente sempre em letras minúsculas. Para mover bancos de dados em um formato binário do Unix para o Windows ou do Windows para o Unix você deve ter todas os nomes de tabelas e banco de dados em letras minúscula. Um modo conveniente de fazer isto é adicionar no Unix a linha

set-variable=lower_case_table_names=1

na seção [mysqld] de seu my.cnf antes de você iniciar a criação de sua tabela. no Windows o valor 1 é o padrão.

Arquivos de dados e log do InnoDB são binários compatíveis com todas as plataformas se o formato do número de ponto flutuante nas máquinas é o mesmo. Você pode mover um banco de dados InnoDB simplesmente copiando todos os arquivos relevantes, os quais nós já listamos na seção anterior sobre backup do banco de dados. Se o formato de ponto flutuante nas máquinas são diferentes mas você não utiliza tipos de dados FLOAT ou DOUBLE em suas tabelas então o procedimento é o mesmo; apenas copie os arquivos relevantes. Se os formatos são diferentes e suas tabelas contenham dados de ponto flutuante, você tem que utilizar mysqldump e mysqlimport para mover estas tabelas.

Uma dica de desempenho é desligar o modo auto-commit quando você importa dados em seu banco de dados, assumindo que o seu tablespace tem espaço suficiente para o grande segmento de roolback que a transação de importação ira gerar. Só faça o commit depois de importar toda a tabela ou um segmento de uma tabela.

Retornar