Somente cópias em nível de arquivo de tabelas MyISAM entre versões de servidores com o mesmo:
- CPU 'endian' ( SPARC !=x86 )
- Versões do MySQL podem ser atualizadas sem conversão (5.0.48 copia para 5.0 .52 é ruim devido a mudanças na estrutura do índice, mas a cópia 5.0.52 para 5.1.45 é válida).
Cuidado com as condições de corrida... Você pode estar acessando os arquivos usando FTP ou alguma outra ferramenta, enquanto o banco de dados está lendo a tabela. Existem 'contadores' de tabela atualizados dentro do .MYI até mesmo para as leituras de tabela mais benignas.
Descobri que o seguinte garantirá a integridade das tabelas MyISAM para qualquer manipulação no nível do arquivo:
LOCK TABLE x WRITE;
FLUSH TABLE x; -- closes all file handles into table by mysql.
< perform file-level manipulations >
FLUSH TABLE x; -- A 'stat' of the table occurs and info-schema is updated appropriately.
UNLOCK TABLES;
Se você NÃO fizer lock-write em sua tabela, o mysql pode acessá-la (leitura ou escrita) enquanto você está fazendo sua cópia/manipulação em nível de arquivo.
Este também é o mesmo mecanismo usado para permitir 'myisampack', 'myisamchk' para tabelas em um banco de dados HOT que ainda possui bloqueio externo desabilitado, sem preocupações de corrupção.
-- J Jorgenson --