Modifier la très grande sql dump/fichier texte (sur linux)
J'ai importer une grande dump mysql (jusqu'à 10G). Cependant le dump sql déjà prédéfinis avec une structure de base de données avec la définition de l'index. Je veux accélérer le db insérer par la suppression de l'index et de la table de définition.
Cela signifie que je dois supprimer/modifier les premières lignes d'un 10G fichier texte. Quel est le moyen le plus efficace pour ce faire sur linux?
Des programmes qui nécessitent le chargement de la totalité du fichier dans la RAM va être trop pour moi.
OriginalL'auteur geo | 2009-03-31
Vous devez vous connecter pour publier un commentaire.
Plutôt que retrait les premières lignes, essayez de modifier leur sera les espaces.
La
hexedit
programme peut le faire-- il lit les fichiers en morceaux, donc l'ouverture d'un fichier de 10 go n'est pas différent de l'ouverture d'un fichier de 100KO.Pour les personnes sans accès à un référentiel, vous pouvez obtenir le code source pour hexedit: rigaux.org/hexedit.html
hexedit, sed ou script personnalisé: muras.l'ue/2017/03/05/l'édition de big mysqldump-fichiers
OriginalL'auteur
joe est un éditeur qui fonctionne bien avec de gros fichiers. J'ai simplement utilisé pour modifier un ~5G SQL fichier de vidage. Il a fallu environ une minute pour ouvrir le fichier et à quelques minutes de l'enregistrer, avec très peu d'utilisation de swap (sur un système avec la 4G de RAM).
J'ai simplement utilisé pour un 30 go de fichiers...a pris comme 5min à charge de 16 go de mémoire de la machine avec 8 GO de swap...
OriginalL'auteur
ou
OriginalL'auteur
Perl peut lire le fichier ligne par ligne:
perl -pi.bak -e 's/^create index/--create index/'
OriginalL'auteur