MongoDB lagrar sina data i ett BSON-format (Binary JSON) så om du konverterar till ett format med endast text bör du vara medveten om potentiella datatypers trohetsproblem. Om du vill ha en konsekvent säkerhetskopia av din MongoDB-databas, skulle det rekommenderade formatet vara den binära utdata från mongodump
. Jag skulle dock inte rekommendera att uppblåsa ditt git-repo med binära DB-säkerhetskopior.
En av de befriande aspekterna av en databas med schemaflexibilitet är vanligtvis inte att behöva oroa sig för schemamigreringar under utveckling. Detta kräver viss övervägande om hur din applikation kommer att hantera olika schemaversioner, så att ha ett mer kontrollerat tillvägagångssätt är också bra.
Eftersom ditt huvudmål är att hålla ditt databasschema synkroniserat med kodändringar, skulle ett mycket bättre tillvägagångssätt vara att undersöka schemamigreringsverktyg. Dessa låter dig vanligtvis skapa uppgraderings-/nedgradera kodavsnitt med en definierad ordning för applikationer till en databas, och se till att alla ändringar i databasschemat som inte hanteras av din applikationskod är fångas i migreringsskripten.
Några exempel på verktyg:
- mongo-migrera (NodeJS)
- Mongeez (Java)