Scinder un fichier mysqldump avec plusieurs bases de données, par base de données
J'ai un mysqldump fichier de plusieurs bases de données (5). L'un de la base de données prend un temps très long à charger, est-il possible de scinder la commande mysqldump fichier de base de données, ou tout simplement de dire à mysql de ne charger l'une des bases de données spécifiées?
Manish
source d'informationauteur Manish M. Shah
Vous devez vous connecter pour publier un commentaire.
Ce script Perl devrait faire l'affaire.
Exécuter ce pour le fichier de vidage contenant toutes les bases de données
Ou, il est possible de sauvegarder toutes les bases de données en fichier séparé directement...
Voici un excellent billet de blog j'ai toujours re-consulter pour faire ce genre de chose avec un
mysqldump
.http://gtowey.blogspot.com/2009/11/restore-single-table-from-mysqldump.html
Vous pouvez facilement étendre pour en extraire l'individu de la db.
J'ai travaillé sur un script python qui se fend d'un seul gros fichier de vidage en plus petits, un par base de données. C'est le nom est dumpsplit et voici un scratch:
Un "mysqldump fichier" est simplement un fichier texte complet de SQL. En tant que tel, vous pouvez utiliser n'importe quelle variété d'éditeurs de texte pour hacher de la façon dont vous voyez l'ajustement.
Vous pourriez être mieux servis par une plus sélectif de vidage en premier lieu (juste une base de données par fichier, etc.). Si vous n'avez pas accès à la base de données d'origine, vous pouvez également faire une restauration complète, puis utilisez la commande mysqldump à nouveau de créer de décharges pour les bases de données individuelles.
Si vous voulez juste un moyen rapide et sale de la solution, une rapide recherche sur google, les rendements des références à un couple outils qui pourrait aussi être utile.
Comme Stano a suggéré que la meilleure chose serait de le faire au vidage de temps avec quelque chose comme...
Bien sûr, cela dépend de la présence d'un ~/.mon.cnf fichier avec
Sinon, il suffit de les définir avec l'option-u et -p paramètres de la base de données mysql et mysqldump appel:
Espère que cette aide
Je pourrais faire de la décharge et de recharge suit:
Remarque: si vous utilisez les tables MyISAM, vous pouvez désactiver les indices d'évaluation au cours de l'étape 4 et la réactiver plus tard pour faire votre insertion plus rapide.