sql >> Base de Datos >  >> NoSQL >> MongoDB

Agregue la intercalación predeterminada a la colección mongodb existente

Hay otra opción que funciona para mis necesidades de producción:Ejecutar mongodump en una colección

mongodump --host hostname --port 32017 --username usr --password pwd --out c:\backup --db my_database --collection my_collection

Eso generará dos archivos y uno de ellos llamado my_collection.metadata.json . Abre este archivo y modifica las options propiedad según MongoDB docs .

{
    "options": {
        "collation": {
            "locale": "en",
            "strength": 1
        }       
    }
    ...
}

Y luego restaurar usando mongorestore

mongorestore --host hostname --port 32017 --username usr --password pwd --db contactstore c:\backup\my_database --drop

A partir de ese momento, cualquier índice que cree utilizará esa intercalación específica de forma predeterminada. Desafortunadamente, esto requiere una ventana de tiempo de inactividad, así que asegúrese de obtener una.