Pergunta enviada por Paulo Roberto Correia.
Existia uma instância MySQL (5.7) no Windows, essa máquina acabou morrendo.
Conseguimos resgatar o diretório da instância do MySQL no Windows. Peguei a pasta correspondente a base de dados e copiei para outra instância MySQL (5.7) no Linux SUSE. Ou seja, copiei a pasta /data/meubanco do Windows para o /data/meubanco no Linux.
Quando conecto na Base MySQL e dou um show databases aparece a base, show tables aparece as tabelas, mas quando dou um select em alguma tabela, vem a mensagem que tabela não existe ERROR 1146 (42S02):.
O mapeamento de paginas de dados são feitas da mesma forma no Linux e Windows? Ou seja, copiar e colar funciona?
Qual seria o procedimento correto para conseguir restaurar essa base em um MySQL no Linux?
Se eu tivesse feito a copias para outra maquina Windows funcionaria?
Restore de MySQL que estava em Windows em Linux
Re: Restode de MySQL que estava em Windows em Linux
Deve ser a respeito disto:
https://dev.mysql.com/doc/refman/5.7/en ... ivity.html
https://dev.mysql.com/doc/refman/5.7/en ... able_names
Acho que as tabelas foram criadas em caixa alta no Linux (como CLIENTES) e agora o Windows as procura em minúsculo.
Isso acontece porque o valor padrão do parâmetro lower-case-table-names é 0 no Linux e 1 no Windows.
Tente alterar o parâmetro para 2 no Windows, e veja se funciona.
https://dev.mysql.com/doc/refman/5.7/en ... ivity.html
https://dev.mysql.com/doc/refman/5.7/en ... able_names
Acho que as tabelas foram criadas em caixa alta no Linux (como CLIENTES) e agora o Windows as procura em minúsculo.
Isso acontece porque o valor padrão do parâmetro lower-case-table-names é 0 no Linux e 1 no Windows.
Tente alterar o parâmetro para 2 no Windows, e veja se funciona.