¿Cómo crear una colección en mongodb con un uuid específico o actualizar el uuid?
db.runCommand( { listCollections: 1.0 }) "uuid" : UUID("8d1e5add-9e49-4ff5-af4f-abf12e40b078")Agregar detalles: cuando creo una colección, mongodb genera automáticamente uuid y, si se trata de replicaSet, el uuid se replica en todos los miembros SECUNDARIOS a través del registro de operaciones:
PRIMARY> use test PRIMARY> db.createCollection("theTest") PRIMARY> use local PRIMARY> db.oplog.rs.find({}).sort({$natural:-1}) { "ts" : Timestamp(1632477826, 1), "t" : NumberLong(56), "h" : NumberLong("8154379731463656698"), "v" : 2, "op" : "c", "ns" : "test.$cmd", "ui" : UUID("7710a307-020a-48bf-916c-db94544f8586"), "wall" : ISODate("2021-09-24T10:03:46.145Z"), "o" : { "create" : "theTest", "idIndex" : { "v" : 2, "key" : { "_id" : 1 }, "name" : "_id_", "ns" : "test.theTest" } } }Pero me gustaría saber si hay una opción para que este UUID se cree con comando o se actualice.
¿Tal vez hay una opción para aplicar la entrada de registro de operaciones con UUID modificado?
Gracias,
He encontrado la respuesta, para aquellos que estén interesados aquí está la solución:
var uuid = UUID("a6c3c5c8-8424-4a06-96a1-4082c349c6f1"); var ops = [{ "op": "c","ns": "test.$cmd","ui": uuid,"o": {"create": "newTest","idIndex": {"v": 2, "key": {"_id": 1}, "name": "_id_", "ns": "test.newTest"} } }]; db.adminCommand({applyOps: ops});