查看mongo版本_mongo命令行查询

瑞恒号 2025-04-16 10:28 1

MongoDB的统计查询和条件统计查询问题请教

建议MongoDB放防火墙或放应用能访问网络.MongoDB必须能外面访问,

db.user.find().count(); ==> 这个快是因为 _id作为主键是一个相对小的索引 而对应的mysql里是走的全表扫描

查看mongo版本_mongo命令行查询查看mongo版本_mongo命令行查询


查看mongo版本_mongo命令行查询


查看mongo版本_mongo命令行查询


2) MongoHub

如果你设计的表结构很满足范式,那么其实并不是MongoDB所擅长的场景,你不会觉得mongodb有多快

dbdao.5. #删除用户com it在线教育

c# MongoDB 驱动2.4.4版本中没有eval方法,如何在代码中执行mongo脚本?

用 mongodCollation特性(排序规则) 是mongoDB 3.4 版本新增的。 允许MongoDB的用户根据不同的语言use tt定制排序规则。ump 做备份呐……这种东西db..users.find()为啥要用 C# 去调,这不多此一举么?

如何建立一个含有用户名和密码的mongodb的数据库

输入命令:pip install flask-mongoengine

太小气了,还是给你简单说一说吧,下边是我之前研究mongodb时候做的笔记中的一点部分。

6、从指定的机器上指定数据库数据到某个数据库

mongoDB默认用户认证是关闭的。

show collections

修改 /etc/mongod.conf 文件。mongoDB默认情况下任何客户端都可以连接27017端口,且没有认证,默认情况下没有帐户。通过修改这个配置文件可以更改为登陆时进行权限认证。

mongoDB中如果想要给某个数据库创建一个用户,需要首先进入该数据库,然后使用addUser命令。在这里也可以将用户设置为只读(db.addUser("jack","jack",true),第三个参数表示是否时“只读用户”)。

要使用超级,需要先连接admin数据库并登陆帐户,然后连接其他数据库就可以行使权限。

用户信息保存及认证过程

权限管理常用命令

1. #进入数据库admin

use admin

2. #增加或修改用户密码

db.addUser('name','pwd')

3. #查看用户列表

4. #用户认证

db.auth('name','pwd')

这一个返回1就认证成功了,只有认证成功才能对数据库进行作

db.removeUser('name')

6. #查看所有用户

show users

7. #查看所有数据库

8. #查看所有的collection

9. #查看各collection的状态

db.printCollectionStats()

10. #查看主从状态

db.printReplicationInfo()

mongoDB - Collation

排序规则有如下的虽使用mongodumpmongorestore能停机备份,却失获取实数据视图能力.MongoDBfsync命令字段属性

locale字段是强制性必选参数;所有其他排序规则字段都是可选的。

地区语言设置, 要指定简单的二进制比较,将locale 值设定为 "" 即可

具体local 及地区语言对照表如下

使用语法, @collation= 可选

可选参数, 表示要执行的比较级别。有如下几种参数值

可选参数,当strength 参数为1和2 时 该参数标识是否支持大小写比较

如果caseLl =true,表示支持大小写比较

如果caseLl =false , 表示不支持大小写比较

Flag that determines wher to include case comparison at strength ll 1 or 2

可选参数 在比较时 确定大小写异排序顺序的字段

可选参数,确定是将数字字符串作为数字还是字符串进行比较的标志, 默认值为fasle

如果 numericOrdering= true,表示将数字字符串作为数字比较,

例如,“10”大于“2”

反之,numericOrdering= false,则作为字符串进行比较。例如,“10”小于“2”

局限

// 设置排序后

结果:

可选参数。确定排序规则是否应将空格和标点符号视为基本字符以进行比较的字段。

可选参数, 当 alternate参数是 "shifted"时,确定哪些字符被视为可忽略的字段

可选参数,确定带有变音符号的字符串是否从字符串后面排序的标志,例如某些法语字典排序。 如果为true,请从后到前进行比较。 如果为false,则从前到后进行比较。 默认值为false

可选参数。确定是否检查文本是否需要规范化并类似MySQL将系统用户信息保存在mysql.user表。MongoDB也将系统用户的username、pwd保存在admin..users中。其中pwd = md5(username + “:mongo:” + real_password)。这本身并没有什么问题。username和:mongo:相当于对原密码加了一个salt值,即使攻击者获取了数据库中保存的md5 hash,也没法简单的从彩虹表中查出原始密码。执行规范化的标志。通常,大多数文本不需要这种规范化处理。 如果为true,检查是否完全规范化并执行规范化以比较文本。 如果为false,则不检查。 默认值为fasle

Collation 参数中,locale 是必选参数,其他的都是可选参数,以下参数默认在所有语言环境中(locales)都是一致的:

下图是在不同locale 参数中,其他可选参数的默认值,供参考

支持排序规则的作指指令如下图所示

使用示例

对于索引前缀键不是字符串、数组和嵌入文档的复合索引,指定不同排序规则的作仍然可以使用索引来支持对索引前缀键的比较。

参localhost:28017.些链接需要mongod启,用--rest选项启rest支持 才能进.启rest支持,考文档:

谁是的图形化 MongoDB 管理工具

一个好的UI是开发体验的重要组成部分。Mongo的shell对于管理工作非常好用,但是当处理大量数据时,UI就显得非常重要。当谈到

MongoDB的GUI时,有若干个选择,有一些很好,有一些不是很好,我们的客户通常会问我们建议哪一个UI。下面就是我们考虑的MongoDB

UI的可选项。我们的主要场景是数据可视化,展示和编辑,依赖于场景和喜好,你得到的收益也会有所不同。

1) MongoVUE

是一个windows平台的桌面GUI。

他有一个简单干净的UI并且基本功能免费。数据可以在文本视图、树状视图或者表格视图中展示。也可以将查询结果保存以备不时之需-我们发现这个非常方便。

是一个Mongo1、添加一个用户DB的原生Mac

GUI。从安全的角度,他为方便地通过SSH连接MongoDB提供了一个选择。“StatMonitor”功能可以现场展示统计信息,又名

mongostat。查询界面功能有一点有限,因为他看上去只支持一个树状视图,此外,也无法保存查询的结果。依我们的经验,软件工作得相当不错,但是看

上去没有被好好的维护,因此需要自己承担使用风险。

3) RockMongo

是一个基于HTML的MongoDB

GUI,他是用PHP写的并且是开源的。基于HTML的方式的一个缺点是,要运行这个GUI需要一个PHP。你也可以选择在本地运行PHP。

这个UI没有多余的装饰,非常易用,并且支持处理、统计等show dbs所有常规作。查询界面只支持在一个表格/文本模型中展示数据,因此当处理多级文档时这会是

一个问题,此外,他看上去没有太多的提交活动,所以我们怀疑该项目不是很活跃。

是一个shell-centric的MongoDB的GU当alternate= "non-ignorable"时, 该参数不生效I,支持Windows、MacOS和Linux平台。 RoboMongo仍然是一个早期的版

本,它的版本号是0.8.4。它也是为数不多的支持MongoDBSSL连接的GUI。RoboMongo也支持SSH隧道连接。查询界面显示

了树视图、表格视图和文本视图中的数据。您还可以保存您的查询以供以后使用。其中一个最棒的特点是它也支持shell,所以你仍然可以舒适的继续使用

shell命令。有一些奇怪的UI,我想会随着时间的推移而改变。如果积极维护,我想这可能是MongoDB的跨平台GUI。

mongodb3.0 mongoVUE看不到collection,什么原因

db.copyDatabase("mydb", "temp", "127.0.0.1");将本机的mydb的数据到temp数据库中

引擎的原因,只要降到2.X版本就可以显示了

3.x默认是wiredTiger 引擎,2.x默认是mmapv1 引擎

打开MongoDB,打开管理软件#start MongoDB连接到,此时如果数据库是默认条件下打开的,那么MongoVUE的collection列表是没法检测到,也没法新建的。这是因为MongoDB 3.2之后默认启动的是wiredTiger引擎,这个引擎和之前的引擎不同,而管理软件匹配的还是之前的引擎,所以无法使用。

此时要重新启动MongoDB。启动命令是: mongod –storageEngine mmapv1 –dbpath XXXXX, 其中XXXXX是你的数据库存储路径。这样启动之后,再使用MongoVUE连接数据库就可以了。

可以看到,管理软件左侧是:

NoSQL Ma指定数据目录默认值C:datadb每mongod进程都需要数据目录要3mongodr for MongoDB支持3.0

MongoDB配置文件中如何绑定IP?一行设置后,mongo启动不了了,求解决。

文档中的整个树,不易搜索,4MB限制?(NoSQLFan:1.8版本已经修改为16M)

1.启停止MongoDB

4) RoboMongo

执行mongod,启MongoDBmongod选项命令执行 mongod --

主要选项:

--dbpath

实例必须3数据目录mongod启数据库目录创建mongod.lock文件

文件用于防止其mongod纯净使用该数据目录

--port

指定端口号默认端口27017.要运行mongod进程则要给每指定同端口号

--logpath

指定志输路径文件夹读写权限系统文件存创建已文件覆盖掉

清除所原志记录想要保留原志需使用--logappend选项

--config

指定配置文件加载命令行未指定各种选项

2.配置文件启

MongoDB支持文件获取配置信息.需要配置非或者要自化MongoDB启用.

指定配置文件用-f或--config选项.

:mongod --config refactorConfig.txt

refactorConfig.txt内容:

port = 10000

dbpath = "f:mongodb"

logpath = "f:mongologMongoDB.txt"

配置文件命令行功能

mongod --dbpath "f:mongodb" --logpath "f:mongologMongoDB.txt" --rest --port 10000

配置文件特点:

a.#行注释

b.指定选项语种"选项=值"形式.选项区写.

c.命令行--rest关选项,值要设true

3.停止MongoDB

使用shutdown命令{"shutdown":1},命令要admin数据库使用.shell提供辅助函数:

use admin

db.shutdown()

4.

使用管理接口,默认情况,启mongod启基本,该服务默认端口28017.浏览器输入

mongod启使用--nointece关闭管理接口.

5.serverStatus

要获取运行MongoDB统计信息,基本工具serverStatus命令

db.runCommand({"serverStatus":1})

serverStatus返键解释:

"globalLock"值表示全局写入锁占用少间(单位微秒)

"mem"包含内存映射少数据,进程虚拟内存驻内存占用情况(单位MB)

"indexCounters"表示B树磁盘检索("misses")内存检索("hits")数.比值始升,要考虑加内存.

"backgroundFlushing"表示台做少fsync及用少间

"opcounters"文档包含每种主要作数

"asserts"统计断言数

6.mongostat

serverStatus虽强,说容易.MongoDB提供mongostat

mongostat输些serverStatus提供重要信息,每秒输新行,比前看静态数据实性要.

输列,别 inserts/s commands/s vsize %locked,与serverStatus数据相应.

使用第三插件进行数据库.

7.安全认证

认证基础知识

每MongoDB实例数据库都用户,启安全性检查,数据库认证用户才能执行读或写作.

认证文,MongoDB普通数据作admin数据库处理.admin数据库用户称超级用户().

认证,读写所数据库,执行特定管理命令,listDatabasesshutdown.

启安全检查前,至少要帐号,shell连接没启安全检查

面添加refactor_root,test数据库添加两普通账号,其读权限.shell创建读用户要

addUser第三参数设true.调用addUser必须响应数据库写权限.所数据库调用addUser,

没启安全检查.

重启数据库,重启加入 --auth 命令行选项,启安全检查

第连接,能test数据库执行任何作,作读用户认证,能查找,能插入数据.能读写用户认证,能查找插入

数据,能使用show dbs 列举所数据库.超级用户认证,所欲.

8.认证工作原理

数据库用户帐号文档形式存储.users.文档结构

{"_id" : ObjectId("5006a037dff37e149322fd83"),

"user" : "refactor_read_write",

"readOnly" : false,

"pwd" : "5a84584ac51d3f702461fce4c46b0d6b"//根据用户名密码散列

}知道用户信息何存储及存储位置,进行管理工作.

删除帐户:

> db..users.remove({"user":"refactor_read"})

> db.auth("refactor_read","refactor")

用户认证,认证连接绑定跟踪认证,说驱程序或工具使用连接池或故障切换

另,所认证用户必须每新连接重新认证.

MongoDB传输协议加密,需加密,用ssh隧道或者类似技术做客户端间加密.

mongod --bindip localhost

默认情况MongoDB启简单,便于查看运行,锁,等面信息,要想公些信息,用

--nointece关闭管理接口.

用--noscripting完全禁止服务端jascript执行

9.备份修复

MongoDB所数据都存放 数据目录 ,默认目录C:datadb.启MongoDB候用--dbpath指定数据目录.

论数据目录哪,都存放着MongoDB所数据.要想备份MongoDB,要简单数据目录所文件即.

除非做完整fsync,允许写入,否则运行MongoDB创建数据目录副本并安全,备份能已经

破损,需要修复.

运行MongoDB创建数据目录副本并安全,所先关,再数据目录.关闭数据库要停止业务.

10.mongodumpmongorestore

mongodump种能运行备份.mongodump运行MongoDB做查询,所查文档写入磁盘.

mongodump般客户端,所供运行MongoDB使用,即便处理其请求或执行写入没问题.

mongodump使用普通查询机制,所产备份定数据实快照.备份程处理写入,非明显.

mongodump备份查询其客户端性能产影响.

mongorestore备份恢复数据工具.

mongorestore获取mongodump 输结,并备份数据插入运行MongoDB实例.

:数据库test备份backup目录

mongodump -d test -o backup

使用mongorestore 恢复testNew 数据库

mongorestore -d testNew --drop backup/test/

-d指定要恢复数据库.--drop指恢复前删除(若存),否则数据与现数据合并,能覆盖些文档.

使用mongorestore --获帮助信息

11.fsync锁

能MongoDB运行数据目录损坏数据.

fsync命令强制所缓冲区写入磁盘.选择锁住址数据库进步写入,知道释放锁止.写入锁让

fsync备份发挥作用关键.

shell,强制执行fongodump -- 获帮助ync并获写入锁:

db.runCommand({"fsync":1,"lock":1})

,数据目录数据致,且数据实快照.锁,安全数据目录副本作备份.要数据库运行

快照功能文件系统,比LVM,EBS,用,拍数据库目录快照快.

备份,解锁:

db.$cmd.sys.unlock.findOne()

运行db.currentOp()确保已经解锁(初请求解锁花点间)

fsync命令,能非灵备份,用停掉,用牺牲备份实性能.要付代价些写入作

暂阻塞.唯耽误读写能保证实快照备份式通备份.

12.属备份

虽面备份式灵,都没备份.式运行MongoDB,前面提备份技术仅能用

主,用.数据几乎与主同步.太乎属性能或者能能读写,

于能随意选择面3种备份式:关停,转存或恢复工具或fsync命令.备份MongoDB备份式.

13.修复

MongoDB存储式能保证磁盘数据能用,能损毁.MongoDB内置修复功能试着恢复损坏数据文件.

未停止MongoDB应该修复数据库.修复数据库式简单 mongod --repair 启.

修复数据库实际程简单:所文档导马导入,忽略效文档.完,重建索引.数据量,花间,

所数据都要验证,所索引都要重建(MongoDB 1.8 版本引入志系统,使修复间打打缩短).

修复能比修复前少些文档,损坏文档删除.

修复数据库能起压缩数据作用.闲置控件(删除体积较,或删除量文档腾空间)修复重新利用.

修复运行数据库,要shell用repairDatabases.

use test

db.repairDatabase()

谁是的图形化 MongoDB 管理工具

1、查询之前的错误信息

1) MongoVUE 是一个windows平台的桌面GUI。 他有一个简单干净的UI并且基本功能免费。数据可以在文本视图、树状视图或者表格视图中展示。也可以将查询结果保存以备不时之需-我们发现这个非常方便。更多高级的功能需要你购买一个授权。整体来说,软件看上去比较稳定并且维护得很好。

2) MongoHub 是一个MongoDB的原生Mac GUI。从安全的角度,他为方便地通过SSH连接MongoDB提供了一个选择。“StatMonitor”功能可以现场展示统计信息,又名mongostat。查询界面功能有一点有限,因为他看上去只支持一个树状视图,此外,也无法保存查询的结果。依我们的经验,软件工作得相当不错,但是看上去没有被好好的维护,因此需要自己承担使用风险。

3) RockMongo 是一个基于HTML的MongoDB GUI,他是用PHP写的并且是开源的。基于HTML的方式的一个缺点是,要运行这个GUI需要一个PHP。你也可以选择在本地运行PHP。这个UI没有多余的装饰,非常易用,并且支持处理、统计等所有常规作。查询界面只支持在一个表格/文本模型中展示数据,因此当处理多级文档时这会是一个问题,此外,他看上去没有太多的提交活动,所以我们怀疑该项目不是很活跃。

4)RoboMongo 是一个shell-centric的MongoDB的GUI,支持Winuse ttdows、MacOS和Linux平台。 RoboMongo仍然是一个早期的版本,它的版本号是0.8.4。它也是为数不多的支持MongoDBSSL连接的GUI。RoboMongo也支持SSH隧道连接。查询界面显示了树视图、表格视图和文本视图中的数据建议使用--bindip选项,指定mongod绑定本ip址.:能本机应用访问,使用。您还可以保存您的查询以供以后使用。其中一个最棒的特点是它也支持shell,所以你仍然可以舒适的继续使用shell命令。有一些奇怪的UI,我想会随着时间的推移而改变。如果积极维护,我想这可能是MongoDB的跨平台GUI。

怎样使用python访问mongodb

示例:

安装驱动pymongo!

输入命令:pip install pymongo

直接使用驱动

ORM框架——flask-mongoengine

使用介绍:

创建连接

切换数据库

获取collection

db和collection都是延时创建的,在添加Document时才真正创建

文档添加,_id自动创建

批量插入

获取所有collection(相当于SQL的show tables)

加条件的查询

高级查询

查看查询语句的性能

rest = true缺点:

不是全盘取代传统数据库(Nodb.currentOp()SQLFan:是否能取代需要看应用场景)

不支持复杂事务(NoSQLFan:MongoDB只支持对单个文档的原子作)

特点(NoSQLFan:作者在这里列举的很多只是一些表层的特点):

文档型数据库,表结构可以内嵌

没有模式,避免空字段开销(Schema Free)

分布式支持

查询支持正则

动态扩展架构

32位的版本最多只能存储2.5GB的数据(NoSQLFan:文件尺寸为2G,生产环境64位)

版权声明:本文仅代表作者观点,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 836084111@qq.com,本站将立刻删除

下一篇 :