我已经在我的本地系统中安装了mongo db,我知道在任何时候我们都可以使用mongod服务启动mongo。
- 在正常模式下,将在端口 27017 上运行
- 在 rest API 模式下,我们可以查询通常在 mongo port + 1000 上运行的集合和数据库
我想一起启动两种模式,任何帮助将不胜感激。
谢谢阿米特
你应该添加修改你的mongod配置文件来启用http。
添加以下配置行,请参阅 https://docs.mongodb.org/manual/reference/configuration-options/
net:
http:
enabled: true
或在命令行中添加参数
mongod --httpinterface
您可以启动 mongod 的多个实例。您只需要确保它们使用不同的端口和不同的数据库路径即可。
运行两个单独的 mongod 实例
mongod
这将在端口 27017 上启动一个 mongod 实例并使用 dbpath/data/db
启动另一个命令提示符并键入
mongod --port 27018 --dbpath /data/db2
只需确保 c 驱动器中的数据文件夹中有一个名为 db2 的文件夹即可。这就是它存储数据的地方。
此外,如果您使用的是 Node.js,MongoDB Node.js 驱动程序提供了一种服务器方法,您可以在其中以编程方式启动 mongod 实例。
var mongo = require("mongodb");
var server = new mongo.Server('localhost', 27017, { auto_reconnect : true} );
这将在你调用的 Rest API 模式下创建一个服务器。
然后,您可以简单地从命令提示符启动mongod,指定其他端口和数据库路径。
我不确定我们可以启动两个 mondo 实例! 但是试试这个:
通过运行二进制文件(例如/usr/bin/mondodb)直接运行其中一个到service mongod start
和第二个。(您也可以直接从 CLI 运行它们。
在第二种模式下,您最常为 mondo 提供适当的参数(例如配置文件的路径)。如果你不知道如何给/传递参数给 mondo 的二进制文件,请参阅man mongodb
或去阅读/etc/init.d/mongod
(在基于 Debian 的发行版中),它为您提供有用的信息)
不幸的是,我的机器上没有安装mongoDB,所以我无法给你确切的命令。