Configurar replica set no MongoDB em localhost
2a atrás
O MongoDB oferece diversas maneiras para melhorar a segurança das informações armazenadas, umas delas, o replica set, permite replicar os dados entre várias instâncias do banco.
Dessa forma, garantindo mais consistência dos dados, alta disponibilidade e a possibilidade de realizar transações atômicas.
É recomendado que uma configuração de replica set tenha pelo menos 3 instâncias e sempre em número ímpar. Não é recomendado que as instâncias estejam em um mesmo servidor.
Entretanto, para fins de teste, uma configuração em localhost é feita da seguinte maneira:
Criando as pastas de cada instância
Primeiramente, é necessário criar as pastas que armazenarão os dados de cada instância do MongoDB. No terminal linux execute os seguintes comandos:
mkdir ~/data/rs0
mkdir ~/data/rs1
mkdir ~/data/rs2
Ou no Windows:
md c:\data\rs0
md c:\data\rs1
md c:\data\rs2
Iniciando as instâncias
Agora vamos iniciar 3 instâncias do MongoDB:
mongod --replSet rs --dbpath ~/data/rs0 --port 27017
mongod --replSet rs --dbpath ~/data/rs1 --port 27018
mongod --replSet rs --dbpath ~/data/rs2 --port 27019
undefined- --replSet: é o id do replica set- --dbpath: é a localização da pasta criada para cada instância- --port: é a porta em que cada instância rodará
Iniciando o replica set
Agora inicie o MongoDB na porta principal que será configurada:
mongo --port 27017
E inicie o replica set passando o id e a configuração de cada membro, conforme o comando abaixo:
rs.initiate({
_id: 'rs',
members: [
{_id: 0, host: 'localhost:27018'},
{_id: 1, host: 'localhost:27019'},
{_id: 2, host: 'localhost:27020'}
]
})
Pronto, você acaba de configurar um replica set! Você pode testar com o comando status, e ver a configuração geral e de cada um dos membros primário e secundários.
rs.status()
Comentários (0)