Schemamigraties
De meeste moderne projecten gebruiken een tool om elke individuele wijziging in de database bij te houden en een versienummer aan de wijziging te koppelen. De database moet ook een tabel hebben om de huidige versie op te slaan. Op die manier kan de tool de huidige versie opvragen en uitzoeken welke (indien van toepassing) wijzigingen moeten worden toegepast.
Er zijn verschillende gratis tools om dit te doen, zoals:
Al deze vereisen dat u nauwgezette codebestanden schrijft voor elke wijziging terwijl u zich ontwikkelt. Het zou moeilijk zijn om een project te reverse-engineeren als je het proces van het maken van schemawijzigingscode niet altijd hebt gevolgd.
Er zijn tools zoals mysqldbcompare die u kunnen helpen bij het genereren van de minimale ALTER TABLE-instructies om uw productiedatabase te upgraden.
Er is ook een nieuwere gratis tool genaamd Shift (Ik werk samen met de ingenieur die het heeft gemaakt), wat helpt om het proces van het upgraden van uw database te automatiseren. Het biedt zelfs een mooie webinterface om uw schemawijzigingen in te voeren, ze als online wijzigingen uit te voeren en hun voortgang te bewaken. Maar het vereist nogal wat ervaring om deze tool te gebruiken, ik zou het niet aanraden voor een beginner.