Mailinglisten-Archive |
Hallo, > wir entwicklen Datenbankapplikationen mit php vor allem für Oracle > Datenbanken. Schick :-> > Dabei habe ich eine menge Objekte (Tabellen, Views, stored procedures > etc) in der Datenbank die zu einer bestimmten Applikation gehören. > Zur Versionskontrolle verwenden wir cvs. Nicht optimal, aber ok. Kommt auf die Größe der Applikationen, deren Anzahl und die Anzahl der zugreifenden Entwickler an. Und darauf, wie komfortabel man's haben mag ;) > Ich habe aber noch keine vernüftige Arbeitsweise gefunden, wie ich meine > sql Objekte mit in die Versionskontrolle bekomme. Im moment mache ich > bei jeder release einen Datenbankexport und lege den dem cvs bei > Hat jemand Erfahrung in diese Richtung, oder gibt es vielleicht sql > tools die cvs unterstützen? Hm, ich kenne eine ganze Reihe SCM Tools (Software Configuration Management, nicht Supply Chain Management ;o). Aber keines von denen hat ein natives Datenbank-Plugin. Ich denke, dir schwebt sowas vor wie das Oracle Plugin im Veritas Cluster Manager, nur halt für Versionsverwaltung. Ich kenne allerdings diese antike Adabas Version für Natural, die kann selbsttätig Versionierung betreiben. Aber danach war auch nicht gefragt. Lange Rede, kurzer Sinn. Ich kenne 3 Möglichkeiten: 1. Wie du's schon machst: ASCII Dump fahren und den archivieren 2. Binärdump fahren und über einen CVS Wrapper archivieren 3. Basis-Version als ASCII Dump archivieren und dazu einen Baum der DB-Migrationsscripte, also der Scripte die die bestehende DB auf den neuen Stand patchen. Gerade Version 3 ist recht praktisch in größeren Projekten, bedingt aber auch den größten Aufwand. Da muß jemand DBA Scripte schreiben können. Ich kenne SEHR große Projekte wo's für das Schreiben dieser Dinge eigene Code-Generatoren gab, die einen Diff auf die beiden DB-Versionen machten und dann alter table Statements, verpackt in einem Shellscript ausspuckten. Das wurd dann archiviert. Und nach einer Reihe von Versionen auch so "Sprung-Scripte", also zusätzlich zu 5 Scripten für 1.1 -> 1.2 -> 1.3 -> 1.4 -> 1.5 -> 2.0 gabs noch eines für den Sprung 1.1 -> 2.0 ;) Dazu passend gabs dann DB-Patcher, denen man sagte: nimm 1.3.4 und patch das hoch auf 3.2. Dann zog das Dingen alles Nötige aus der Versionsverwaltung und baute die entsprechende DB-Version. So ein System mal für CVS zu bauen wäre vielleicht eine lohnende Aufgabe :-> Viele Grüße, Volker Göbbels -- Arachnion GmbH & Co. KG - Business Communication, Web Development Gouleystraße 59, 52146 Würselen http://www.arachnion.de Dr. Volker M. Göbbels vmg_(at)_arachnion.de Tel. 02405-424770 Fax 02405-424772
php::bar PHP Wiki - Listenarchive