MySQL: ignorar erros ao importar?


118

Estou importando um banco de dados bastante grande. O .sqlarquivo contém quase 1.000.000 de linhas. O problema é que estou recebendo um erro de sintaxe ao tentar importar o banco de dados. Diz:

ERROR 1064 (42000) na linha 8428420: Você tem um erro na sintaxe SQL; verifique o manual que corresponde à versão do seu servidor MySQL para obter a sintaxe correta a ser usada próxima a '
Erro fatal : tempo máximo de execução de 600 segundos excedido em

Normalmente, eu apenas abriria o arquivo .sql e corrigiria o erro. Mas meu computador está realmente lutando para abrir este arquivo.

Existe alguma maneira de ignorar erros ao importar um banco de dados MySQL?


1
Use um editor que não abra o arquivo inteiro na memória (este é o problema de você ter que tentar editá-lo) e use a exibição baseada em Seek para edição no Windows. Posso recomendar o Notepad ++ para esta tarefa
Barkermn01

Respostas:


286

Use o sinalizador --force( -f) em sua importação do mysql. Em vez de parar na instrução ofensiva, o MySQL continuará e apenas registrará os erros no console.

Por exemplo:

mysql -u userName -p -f -D dbName < script.sql

4
se alguém mais se perguntou sobre o -Din -D dbName, é o mesmo que especificar--database=dbName
Aamnah

Eu testei os dois -D dbNamee --database=dbNamefuncionaram @Aamnah
tcadidot0
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.