In den letzten zwei Monaten habe ich nach Lösungen oder Methoden für das Release-Management in Datenbanken gesucht. Ich suche nach dem, was die Leute als den besten Prozess ansehen, um damit umzugehen.
Wir haben 3 Umgebungen für unsere Datenbanken:
- Entwicklung
- User Acceptance Testing (UAT)
- Produktion
Das Problem ist, dass wir manchmal Änderungen an verschiedenen Dingen in unserer Entwicklungsdatenbank vornehmen und es Zeit für die Bereitstellung ist. Einige der Funktionen können möglicherweise nicht für UAT freigegeben werden.
Vor kurzem haben wir begonnen, die Red Gate SQL-Quellcodeverwaltung zum Speichern aller unserer Entitäten (mit regelmäßigen Festschreibungen) zu verwenden.
Ich habe darüber nachgedacht, auf Änderungssätzen zu basieren (dh, alles von Änderungssatz X und zurück wird jetzt an UAT übertragen). Dies bedeutet jedoch, dass die Benutzer ihren Code nur kurz vor der Bereitstellung in die Quellcodeverwaltung einchecken, was verwirrend werden kann ( zumal die Leute vergesslich sind). Ein weiteres Problem bei der Verwendung des Änderungssatzansatzes besteht darin, dass bei einem Fehler in einer gespeicherten Prozedur, der behoben werden muss, die Änderungssatznummer außerhalb des Bereichs unseres maximalen Änderungssatzes für die Revision liegt, sodass dies bei Bedarf der Fall ist Erstellen Sie die Datenbank aus einem maximalen Änderungssatz neu, wir würden den Fehler wieder beseitigen.
Irgendwelche Vorschläge zu einem Prozess?
Vielen Dank