4

Ce que je cherche vraiment serait l'équivalent d'un snapshot de base de données léger qui pourrait être modifié.Y a-t-il des bases de données qui supportent les branches?

La base de données peut être énorme, mais l'instantané lui-même doit être minuscule et maintenir une relation avec le parent.

Quelque chose comme ceci me permettrait d'avoir, essentiellement, une base de données par branche. Il pourrait également être utilisé pour tester un environnement qui va presque directement contre la production, mais sans la possibilité de l'affecter.

Je suis surtout intéressé par les implémentations ou extensions de bases de données relationnelles. Mais serait ouvert à tout.

+0

Il serait utile de savoir quel système de base de données vous utilisez actuellement OU quels sont les DB avec lesquels vous êtes familier. La réponse idéale sera probablement un plug-in pour un RDMS grand public afin que vous obteniez une réponse très différente pour MS SQL Server, Oracle, MySQL, etc. –

+0

J'utilise principalement mysql et d'autres bases de données gratuites. –

Répondre

0

Je ne pense pas que la branche existe pour n'importe quel SGBDR; à propos de la plus proche, vous pouvez obtenir le clonage de toute la base de données en sauvegardant et en restaurant ou en insérant BULK INSERT dans une nouvelle base de données. Vous pouvez essayer d'exécuter votre propre système de branchement en clonant le schéma de la base de données cible pour chaque branche et en y stockant des "diffs" (enregistrements modifiés), mais cela nécessiterait une interrogation des deux bases de données, résolvant les conflits d'édition et descendant dans un cercle unique d'enfer quand vient le temps d'insérer ou de supprimer des enregistrements.

Personnellement, j'utiliserais simplement un clone complet/partiel pour les tests primaires et un sous-ensemble plus petit pour les branches dans lesquelles vous modifiez le schéma.

0

Réflexions: Je n'ai pas non plus vu un système de base de données relationnelle qui inclut la notion de branchement ... bien que le concept lui-même semble très utile à mon humble avis. Je sais que Microsoft Team Foundation Server + Visual Studio 2010 (éditions Premium ou Ultimate uniquement) a une intégration de développement de base de données avec contrôle de source via "Database Projects". Je suis sûr que d'autres systèmes de contrôle de version ont des capacités similaires ... mais cela ne répond pas à votre question pour un système de contrôle de version DB léger ou intégré. (C'est donc technicall pas une réponse - juste quelques informations qui peuvent vous aider à résoudre votre question de base).

Bref la recherche a trouvé quelques articles connexes utiles, mais ne semble pas répondre exactement à cette demande:

  1. RedGate SQL Source Control 3.0
  2. "Versioning Databases - Branching and Merging" - OdeToCode.com 2008

Redgate est une société d'outillage haut niveau de DB qui développe des solutions pour Microsoft SQL Server, Oracle et probablement d'autres solutions de base de données. Le hic, c'est que RedGate SQL Source Control 3.0 permet de travailler avec votre système de contrôle de version dans SSMS (Microsoft SQL Server Management Studio) mais ce n'est pas un VCS (système de contrôle de version) en soi. Extrait de leur site web:

SQL Source Control est un add-in pour SQL Server Management Studio qui vous permet d'obtenir votre base de données dans le contrôle source. SQL Source Control apporte donc les avantages de la gestion des modifications et de la collaboration du contrôle de source au développement de la base de données, sans affecter votre flux de travail , ni nécessiter de nouveaux processus de développement. Remarque: SQL Source Le contrôle n'est pas un système de contrôle de source; Il vous permet de stocker vos bases de données dans votre système de contrôle de source existant.

+0

S'il s'agit de créer une nouvelle base de données SQL Server sans les besoins de stockage supplémentaires, la création d'une ou plusieurs bases de données virtuelles peut être la meilleure option. Cela monte un fichier de sauvegarde, plutôt que la base de données. http://www.red-gate.com/products/dba/sql-virtual-restore/ –

Questions connexes