sql >> Databasteknik >  >> RDS >> PostgreSQL

Hur man hanterar databasutvecklingar i Play Framework 2 i produktionen

Tyvärr Ebean kan bara skapa CREATE DDL (och inte UPDATE DDL ) (som svarat på deras grupp), därför måste du byta till manuella evolutioner ASAP.

några regler:

  1. Säkerhetskopiera alltid din live-DB innan du implementerar några ändringar :)
  2. ebean plugin återskapar hela DDL om den bara har 1.sql evolution skapad av den
  3. Du måste ta bort två första kommentarer från 1.sql och börja skriva egna utvecklingar med nästa nummer 2.sql , 3.sql etc. Försök att placera så många modeller/fält som möjligt innan du går över till manuella evolutioner. Den största delen kommer att göras automatiskt av plugin.
  4. manuella utvecklingar bör innehålla ALTERS till befintliga tabeller/kolumner istället för DROP/CREATE bör de ha båda:Ups och Downs för varje ändring.
  5. försök att placera så många förändringar som möjligt i varje evolution, det är lättare att hantera och sedan skriva separat evolution för varje liten förändring.

De facto ibland är det bara enklare att ändra DB-strukturen med DB-gui, i alla fall fungerar det huvudsakligen för den enskilde utvecklaren... när du behöver dela din kod med andra utvecklare kommer det att vara ett bättre alternativ.

Om du efter en tid lägger till nästa "stora" del av nya modeller kan du aktivera temporär automatisk DDL igen och använda lokal git bara för att kopiera nya delar. Återgå sedan till din egen revolution och klistra in nya delar genererade av Ebean-plugin.



  1. MySQL GROUP BY beteende

  2. T-SQL delad sträng baserad på avgränsare

  3. Hur ändrar man ägandet av alla objekt i ett visst schema i PostgreSQL?

  4. Hur släpper jag SQL-standardbegränsning utan att veta dess namn?