J'ai essayé les ensembles de répliques Mongo pour la première fois.
J'utilise ubuntu sur ec2 et j'ai démarré trois instances. J'ai utilisé l'adresse IP privée de chacune des instances. J'ai choisi comme principal et ci-dessous est le code.
mongo --host Private IP Address
rs.initiate()
rs.add(“Private IP Address”)
rs.addArb(“Private IP Address”)
Tout à ce stade est très bien. Quand je vais sur le site http://ec2-xxx-xxx-xxx-xxx.compute-1.amazonaws.com:28017/_replSet , je vois que j'ai un principal, un seconday et un arbitre.
Ok, maintenant pour un test.
Sur le primaire, créez une base de données dans ce code:
use tt
db.tt.save( { a : 123 } )
sur le secondaire, je fais ensuite ceci et j'obtiens l'erreur ci-dessous:
db.tt.find()
error: { "$err" : "not master and slaveOk=false", "code" : 13435 }
Je suis très nouveau sur mongodb et réplique mais je pensais que si je fais quelque chose dans l'un, cela va dans l'autre. Donc, si j'ajoute un enregistrement dans un, que dois-je faire pour répliquer sur plusieurs machines?