Cómo restablecer la configuración del conjunto de réplicas MongoDB

16

Quiero comenzar de nuevo con las configuraciones de réplica, ¿es posible? ¿Cómo restablecerlo?

En el grupo de personas que dicen eliminar el contenido de la base de datos, pero ¿hay alguna solución?

Ryan
fuente

Respuestas:

19

Si desea conservar los datos, pero comienza fuera de un conjunto de réplicas, simplemente reinicie el proceso mongod sin --replSety en un puerto diferente. Eso te dará un mongod independiente.

Para estar completamente seguro de que la configuración del conjunto de réplicas ha desaparecido de la instancia, asegúrese de que la local.system.replsetcolección esté vacía.

Una vez hecho esto, y esté satisfecho con su instancia independiente, puede reiniciar con un --replSetargumento diferente y volver a realizar el proceso de configuración del conjunto de réplicas:

http://www.mongodb.org/display/DOCS/Replica+Set+Configuration

La otra opción, como usted menciona, es eliminar todos los archivos de datos y comenzar completamente desde cero.

Adam C
fuente
// inicia el servidor en un puerto diferente al asignado pero con la misma carpeta Db. conéctese a través del cliente mongoi al nuevo puerto: use db.system.replset.remove local ({"_ id": "replset"}) // ¿cambie el conjunto de respuestas entre comillas a su nombre? db.system.replset.find () db.adminCommand ({shutdown: 1}) // luego reiniciar en otro puerto
tgkprog
5

No necesita eliminar ningún archivo de base de datos para restablecer la configuración de su conjunto de réplicas.

Para restablecer la configuración, asegúrese de que todos los nodos de su conjunto de réplica estén detenidos. Luego elimine la base de datos "local" para cada nodo.

Una vez que esté seguro de que todos los nodos no se están ejecutando y que la base de datos "local" haya desaparecido, inicie el proceso mongod nuevamente (por supuesto, usando el indicador --replSet). Luego ejecute rs.initiate ().

akskung
fuente
4
  1. Ir a mongo shell en servidores secundarios

  2. Detenga los servidores secundarios utilizando el siguiente comando:

    use admin
    db.shutdownServer()
    
  3. vaya al shell principal de mongo y escriba los siguientes comandos:

    rs.remove()
    

    para verificar el estado, use rs.status()

Para obtener más información, consulte el siguiente enlace: http://www.learnit.net.in/2016/03/stopping-and-starting-mongodb.html

Shrinivas Kalangutkar
fuente
1
  1. editar /etc/mongod.confy comentarreplication: block
  2. service mongod restart
  3. mongo local --eval "db.dropDatabase()"
  4. service mongod stop
  5. en mongo primario: rs.add("this node")
  6. editar /etc/mongod.confy descomentar elreplication: block
  7. service mongod restart

Su nodo se agregará al conjunto de réplicas existentes y comenzará a sincronizarse con el primario existente

blueheart_2
fuente