Mécanismes pour le suivi de la DB modifications de schéma

Quelles sont les meilleures méthodes pour le suivi et/ou l'automatisation DB modifications de schéma? Notre équipe utilise Subversion pour le contrôle de version et nous avons été en mesure d'automatiser certaines de nos tâches de cette façon (en poussant développe à un serveur de test, déploiement de code testé sur un serveur de production), mais nous sommes encore en train de faire de la base de données mises à jour manuellement. Je voudrais trouver ou de créer une solution qui nous permet de travailler efficacement sur des serveurs avec des environnements différents, tout en continuant à utiliser Subversion comme une interface à travers laquelle le code de base de données et mises à jour autour de différents serveurs.

De nombreux logiciels populaires forfaits comprennent l'auto-mise à jour des scripts qui détecte la version DB et appliquer les changements nécessaires. Est-ce la meilleure façon de le faire, même sur une plus grande échelle (à travers de multiples projets et parfois de multiples environnements et les langues)? Si oui, est-il un code qui simplifie le processus ou est-il préférable de simplement rouler notre propre solution? Quelqu'un a mis en place quelque chose de semblable auparavant et intégré dans la Subversion post-commit des crochets, ou est-ce une mauvaise idée?

Tout une solution qui prend en charge de multiples plates-formes serait préférable, nous avons absolument besoin de l'appui de la Linux/Apache/MySQL/PHP pile comme la majorité de notre travail est sur cette plate-forme.

InformationsquelleAutor pix0r | 2008-08-04