使用--rest与MongoDB';蒙哥斯
我创建了一个小型MongoDB v2.6.4集群,其中包含一个mongos路由器、三个配置服务器和少数mongod数据服务器。它工作得很好,我可以从mongos客户端很好地执行CRUD操作,它直接指向适当的碎片 我现在想尝试一下rest服务 当我使用mongod对单个MongoDB数据服务器进行测试时,它完全按照规定工作 即使现在,我也可以连接到使用使用--rest与MongoDB';蒙哥斯,mongodb,rest,Mongodb,Rest,我创建了一个小型MongoDB v2.6.4集群,其中包含一个mongos路由器、三个配置服务器和少数mongod数据服务器。它工作得很好,我可以从mongos客户端很好地执行CRUD操作,它直接指向适当的碎片 我现在想尝试一下rest服务 当我使用mongod对单个MongoDB数据服务器进行测试时,它完全按照规定工作 即使现在,我也可以连接到使用--rest运行的每个碎片,并获得web响应。但是,结果有点出乎意料。我看到了概述、客户机、dbtop、写锁、日志等。如果单击listDatabas
--rest
运行的每个碎片,并获得web响应。但是,结果有点出乎意料。我看到了概述、客户机、dbtop、写锁、日志等。如果单击listDatabase,我实际上会看到列出的数据库。但是,我尝试的任何REST尝试都返回一个JSON对象,该对象显示offest 0、无行、总计0个ROE、无查询和0毫秒
目前我认为这无关紧要,因为我已经直接连接到了一个碎片,并且预期只能看到碎片的内容——尽管进一步的实验甚至无法产生这样的结果
再次强调,在当前的分片配置中,mongos、NodeJS和PHP都可以很好地查看、查询和操作我的MongoDB集合中的数据
但是,我正在尝试(如果可能的话)通过REST连接到mongos
shard服务,因为它确实提供了--httpinterface
选项,我认为它将公开对shard的访问并做正确的事情
它提供了标准状态页面,但单击任何链接或手动滚动任何REST都会导致一条消息,提示未启用--REST
,我应该启用它
REST is not enabled, use --rest to turn on.
check that port 28017 is secured for the network too.
问题是,mongos不允许这样做!(然而,蒙哥德确实如此)
RESTInterfaceEnabled:true
的配置文件,但没有任何帮助--shardsvr
运行mongod),直接连接到它们确实提供了REST访问我可能错过了什么?这可能吗?有什么想法吗?AFAIK REST界面主要用于监视/管理,而不是访问文档。MongoDB不提供官方REST接口来执行CRUD操作。为此,您需要创建自己的库,或者在生态系统中找到一个库来执行此操作,请参见 您是否有具体的要求/需求
PS:我在任何部署/开发中都没有使用--rest参数。只是希望能够在开发过程中通过手动滚动一个简单的URL从web快速验证某些集合和元素是否存在。我正在导入一堆数据,尝试导入会容易得多,看看我是否可以从web访问一到两条记录,如果有什么需要更改的话,再将它们全部删除。正如我指出的,其他一切都很好,我正在寻找一条简单的捷径。也许我只需要分解并使用MongoDB查看器。不,其余部分在生产中。我明白了,所以是的,您必须使用第三方工具,您应该能够在这里找到一个适合您需要的工具:不要忘记mongo shell!