MySQL: ignorer les erreurs lors de l'importation?

118

J'importe une base de données assez volumineuse. Le .sqlfichier contient près de 1 000 000 de lignes. Le problème est que j'obtiens une erreur de syntaxe en essayant d'importer la base de données. Ça dit:

ERREUR 1064 (42000) à la ligne 8428420: vous avez une erreur dans votre syntaxe SQL; consultez le manuel qui correspond à la version de votre serveur MySQL pour la bonne syntaxe à utiliser près de '
Erreur fatale : temps d'exécution maximum de 600 secondes dépassé en

Normalement, je voudrais simplement ouvrir le fichier .sql et corriger l'erreur. Mais mon ordinateur a vraiment du mal à ouvrir ce fichier.

Est-il possible que je puisse ignorer les erreurs lors de l'importation d'une base de données MySQL?

Dustin
la source
1
Utilisez un éditeur qui n'ouvre pas le fichier entier en mémoire (c'est le problème que vous devez essayer de le modifier) ​​et utilise l'affichage basé sur Seek pour l'édition sous
Windows.Je

Réponses:

286

Utilisez l' indicateur --force( -f) sur votre importation mysql. Plutôt que de s'arrêter sur la déclaration incriminée, MySQL continuera et enregistrera simplement les erreurs sur la console.

Par exemple:

mysql -u userName -p -f -D dbName < script.sql
Craig Boobar
la source
4
si quelqu'un d' autre s'interroge sur l' -Den -D dbName, il est identique à la spécification--database=dbName
Aamnah
J'ai testé les deux -D dbNameet --database=dbNamecela a fonctionné @Aamnah
tcadidot0