J'utilise mysqldump pour exporter automatiquement toutes mes bases de données dans un fichier texte et enregistrer cette sauvegarde comme sauvegarde. J'utilise l'option --all-databases qui sauvegarde mes bases de données, mais aussi les bases de données système (information_schema, phpmyadmin, etc.) dont je n'ai pas besoin. Existe-t-il un moyen de vider toutes mes bases de données avec mysqldump sans les nommer explicitement en ligne de commande (pour ne pas avoir à modifier le script de sauvegarde chaque fois que je crée une nouvelle base de données), mais ignorer tout le système bases de données?Existe-t-il un moyen de vider toutes les bases de données mysql à l'exception des bases de données système?
3
A
Répondre
3
Vous pouvez écrire un script bash comme celui-ci. Il vérifie le nom de la base de données avant de le jeter.
#!/bin/sh
DATABASES="$(/lighttpd/local/bin/mysql --user=user --password=pass -Bse 'show databases')"
for db in ${DATABASES[@]}
do
if [ $db == "information_schema" ]
then
continue
fi
echo ${db}-$(date +%m-%d-%y).sql.bz2 is being saved in /backup/mysql
mysqldump --user=user --password=pass $db --single-transaction -R | bzip2 -c > ${db}-$(date +%m-%d-%y).sql.bz2
done
Questions connexes
- 1. Un moyen sécurisé de sauvegarder les bases de données MySQL?
- 2. Importation de toutes les bases de données MySQL
- 3. Sauvegardez toutes les bases de données MySQL qu'un utilisateur de MySQL a accès à
- 4. Mysql - trouver une table dans toutes les bases de données
- 5. Optimisation des bases de données Mysql
- 6. Configuration de plusieurs bases de données mysql
- 7. Indexation des bases de données
- 8. Verrouillage des bases de données
- 9. J'ai un accès root à toutes mes bases de données mysql. Comment puis-je exporter/importer toutes les bases de données à la fois?
- 10. Entity Framework: extraction de données des bases de données de différentes bases de données
- 11. Beaucoup de bases de données MySQL - problème?
- 12. Recherche de bases de données
- 13. bases de données inactives
- 14. Mysql octroi provileges sur toutes les bases de données, à l'exception de quelques
- 15. Correctif dynamique des bases de données
- 16. Bases de données multiniveaux
- 17. Déplacement d'informations entre les bases de données
- 18. Contrôle de version des bases de données
- 19. Accord sur plusieurs bases de données. MySQL
- 20. ActiveRecord parle à deux bases de données?
- 21. Hibernate parlant à différentes bases de données
- 22. La taille des bases de données MySQL et SQL Server
- 23. Bases de données orientées objet
- 24. Trouver une valeur dans toutes les bases de données dans un serveur de base de données
- 25. Bases de données entre les serveurs Copie
- 26. Bases de données et DVCS
- 27. quand copier la base de données de ressources et les bases de données système?
- 28. Vérifiez les bases de données firebird présentes
- 29. Comment activer les jointures entre bases de données dans mysql?
- 30. Agrégation de plusieurs bases de données MySQL distribuées
D'accord, mais cela signifie que je dois lister manuellement les bases de données du système dans le script. Existe-t-il un moyen de dire par programme si une base de données a été créée par le système ou l'utilisateur? – Tom
pas que je sache. Mon DB MySQL est venu avec information_schema et mysql comme bases de données système. –
et si vous voulez recombiner tous les fichiers de vidage en un gros vidage, vous pouvez simplement concaténer chacun à l'autre et le bzip à la fin. – Ross