Ha csak az a kérdés, hogy hogyan követed, hogy mit alkalmaztál már és mit nem, az egyszerű:
* Verziózd meg a valid adatbázis állapotokat
* Két verzió közöt írd meg a szkriptet - ezt a fejlesztők csinálják meg mindig amikor új funkciót fejlesztenek
* A verziót tárold az adatbázisban, és a program indulásakor ez alapján egyértelműen el tudod dönteni, hogy melyik upgrade szkripteket kell futtatni. A szkriptek tranzakcióban futnak és egyből beállítják az új verziószámot is.
Ha nem tudod a verziókat egyetlen irányított útba rendezni, akkor egy kicsit nehezebb a dolgod, azt elismerem.
Az automatikus megoldásokkal az szokott lenni a baj, hogy a bonyolult esetekben rosszul működnek, vagy nagyon nehéz megérteni őket. Ezért a kézi karbantartás akár egyszerűbb is lehet.