在单个Ubuntu机器上为MongoDB配置主从配置

时间:2011-11-24 11:09:03

标签: mongodb ubuntu database

我想在我的Ubuntu机器上为Mongo DB设置Master Slave配置。我可以在/etc/mongodb.conf中看到设置,但这会使我的DB成为Master或Slave。

有什么方法可以在同一台机器上运行两个不同的服务器,并使用一个作为Master,另一个作为slave。我想这样做是为了测试目的。

2 个答案:

答案 0 :(得分:2)

最好的方法是不使用/etc/init.d/*脚本并使用旧的命令行。确保mongodb未在您的计算机上运行。找到安装二进制文件的文件夹,然后从命令行运行:

./mongod --dbpath /path_to_master_db_files --master --logpath /path_to_logs/master.log --port 27017 --fork

然后打开另一个终端,导航到同一个文件夹并运行:

./mongod --dbpath /path_to_slave_db_files --slave --logpath /path_to_logs/slave.log --port 27018 --source=localhost:27017 --fork

你去了 - 你应该有一个主人在27017上运行,奴隶在27018上运行。希望这会有所帮助。

BTW,我假设您没有在生产中运行此配置,只想在本地实例上试用它。

答案 1 :(得分:0)

出于测试目的,您可以手动启动两个实例,查看this link。引用文档:

  

重要   副本集替换大多数用例的主从复制。如果可能,请为所有新生产部署使用副本集而不是主从复制。本文档仅用于支持旧版部署和归档目的。

找到MongoDB二进制文件所在的文件夹:

mkdir -p ../master
./mongod --dbpath ../master --master --logpath ../master/master.log --port 27017

然后打开另一个终端,导航到同一个文件夹并运行:

mkdir -p ../slave    
./mongod --dbpath ../slave --slave --logpath ../slave/slave.log --port 27018 --source=localhost:27017