sql >> Database >  >> NoSQL >> MongoDB

Hoe kan ik het formaat van een mongodb-capped collectie wijzigen zonder gegevens te verliezen?

Dit is wat ik doe om het formaat van gelimiteerde collecties te wijzigen:

db.runCommand({"convertToCapped": "log", size: 1000000000});

Ik heb al een Capped Collection met de naam "log". Dus ik voer de "convertToCapped" er gewoon opnieuw op uit, waarbij ik een nieuwe grootte opgeef. Ik heb het niet geprobeerd om de verzameling te verkleinen. Dat is misschien iets waarvoor je de versie van Scott Hernandez moet gebruiken. Maar dit werkt om de omvang van uw gelimiteerde collecties te vergroten zonder gegevens te verliezen of uw indexen .

BEWERKEN: @JMichal heeft gelijk. Gegevens blijven behouden, maar indexen zijn dat niet en moeten opnieuw worden gemaakt.



  1. Beperk de lengte van de lijst in redis

  2. MongoDB:Server heeft opstartwaarschuwingen

  3. Maak een databasecluster in de cloud met MongoDB Atlas

  4. Projecteer het eerste item in een array naar een nieuw veld (MongoDB-aggregatie)