2008-12-12 8 views
1

Existe-t-il une alternative autonome aux migrations de type enregistrementecord? Quelque chose comme un script capable de suivre la version actuelle du schéma et d'appliquer des migrations exceptionnelles. En gros, ces fichiers de migration pourraient être seulement des fichiers SQL simples, quelque chose comme:Existe-t-il une alternative autonome aux migrations de schémas de bases de données activesecord?

 
[timestamp]_create_users.sql 
reverse_[timestamp]_create_users.sql 

Langue de mise en œuvre n'est pas très important - il pourrait être tout ce qui est généralement installé/pré-installé sur les systèmes * nix.

J'ai essayé de trouver quelque chose - mais j'ai échoué. Je peux certainement développer le mien dans une heure ou deux, mais je suis juste curieux - peut-être quelque chose de gentil est déjà là.

Répondre

0

Pas une option linux, mais pourrait répondre à cette question pour certaines personnes:

SQLYog peut le faire pour MySQL - est un outil GUI Windows:

http://www.webyog.com/en/

Il peut (entre autres) compare les schémas et fait ressembler un schéma à un autre, ou génère le sql requis pour le faire si vous voulez le faire à la place. Nous l'utilisons pour créer des fichiers de correctif sql que nous pouvons utiliser pour les mises à niveau. C'est plus facile que de maintenir manuellement un fichier lorsque vous apportez des modifications au développement.

+0

Je suis sur OSX :(mais merci quand même! –

+0

Moi aussi ... mais nous n'avons qu'une seule licence pour cela - nous avons une machine virtuelle qui exécute des fenêtres sur un serveur en bas pour des produits sous licence unique, son installé dessus et nous – benlumley

2

Essayez http://freshmeat.net/projects/liquibase/

Si vous utilisez MySQL spécifiquement, un coup d'oeil à: http://www.mysqldiff.org/ J'ai utilisé ce pour synchroniser le schéma de deux bases de données (vous doivent donc appliquer les modifications à un « maître »).

Il y a aussi http://phpmyversion.sourceforge.net/

+0

Merci pour le lien vers liquibase (même s'il s'agit de Java) –

+0

Même s'il est basé sur Java, c'est l'un des meilleurs outils de gestion de jeu de changements de schéma I 'ai travaillé avec Plus Plus est facile à intégrer dans un système de gestion de construction/configuration – David

0

Découvrez AutoPatch

+0

Merci!Bien que ce soit une solution Java lourde, elle semble être très proche de ce dont j'ai besoin :) –

0

La bibliothèque ezComponents a une database schema component qui peut se comparer et d'appliquer des différences de schéma entre les deux bases de données (ou une base de données et un fichier).

0

https://sourceforge.net/projects/migrations/

C'est un outil de gestion des changements structurels dans les schémas de base de données basés sur les migrations Active Record de Rails. Inclut plusieurs interactions de schéma, substitution de valeurs à l'exécution, générations de scripts, etc.

Plus il a à la fois une interface de ligne de commande et une interface graphique. Elle est également développée activement et notre société l'utilise depuis plus d'un an maintenant et elle a grandement amélioré la vie de tout le monde, du développement au développement des opérations en passant par des déploiements rationalisés et des reculs. La direction prend les changements de db pour acquis maintenant (parfois pas une bonne chose) parce que c'est maintenant automatisé grâce à cet outil.

Questions connexes