Extraire une seule base de données d'un fichier de backup de 4Go ...

mysql.png Suite à quelques problèmes de gestion des restaurations j'ai pris l'habitude de configurer mes exports mysql de telle sorte que chaque base soit sauvegardée dans un fichier à part ... mais voilà ce soir je suis face à un fichier SQL de sauvegarde complète qui fait 4Go dont je ne veux extraire que quelques milliers de lignes correspondantes à une seule base de données !

La solution la plus rapide et efficace est proposée ici et elle consiste à utiliser sed pour extraire tout ce qui se trouve entre deux lignes de création de base de données en utilisant le nom de la base qu'on souhaite récupérer !

cat mysqldumped.sql | sed -n -e '/^CREATE DATABASE.*`the_database_you_want`/,/^CREATE DATABASE/ p' | sed -e '$d' > unebase.sql

Source: http://stackoverflow.com/questions/3596444/how-do-i-restore-one-database-from-a-mysqldump-containing-multiple-databases

À garder précieusement !

QR code
Send to friend

Ajouter un commentaire

Le code HTML est affiché comme du texte et les adresses web sont automatiquement transformées.