我的MongoDB坎坷之路

摘要

一直以来接触最多的都是关系型数据库,对于NoSQL确实是不甚了解。但是对于目前开发而言,NoSQL也算是一个比较火的方向,而在众多NoSQL数据库之中,MongoDB又是这么的“靓丽”,让人不禁心仪神往。然而没想到的是,在这个过程中,却又是那么的坎坷。于是作此文以记之。

环境搭建

前奏

照常在官网上 https://www.mongodb.com/ 直接找到download 按钮,下载一个windows.msi版本的就好了。
下载msi windows版本即可
官方最新版的mongodb需要:
VC++2015 RC x64的支持,否则会报出
由于系统版本问题,导致安装出现异常
但是, 但是 遗憾的是我的电脑版本竟然不够,竟然不够。这是什么情况?
然后查了下文档,Windows7的话需要最低版本为7601,而我的版本是7600.( ⊙ o ⊙ )啊!真的是好气哦。
查看电脑详细版本号命令 msinfo32
安装的时候会弹出这样的一个窗口,上面写着:

丢失api-ms-win-crt-runtime-|1-1-0.dll

既然知道了问题出自何方,那目标就很明确了,然后在网上找啊找的,答案倒是挺多的, 但是基本上都不靠谱。反正我是没能成功。

最后升级Windows,添加补丁包吧,奈何网速不给力,下了好久,最终不了了之。

后招

既然下载最新的是不行了,那就退而求其次,下载之前较低版本的吧。反正是学习使用,也用不到多么复杂的功能,应该是足够的啦。

我这边尝试的是2.0.6版本的,亲测好用。为了更多人学习使用,可以到下面的链接处进行下载。(不要积分: http://download.csdn.net/detail/marksinoberg/9703363

下载后解压到一个文件夹即可。
下载后解压即可

我也是歪打正着,没想到这个版本的真的可以用啦

配置

如第二步所示,下载完后解压到一个文件夹下即可。然后新建一个文件夹用于存放数据库数据(这个文件夹随意放置,但是为了方便管理,还是放到一起比较好)。
新建一个文件夹存放数据

配置环境变量

为了让命令行下可以找到mongodb的一些内置的命令,我们需要将bin目录配置到自己的电脑的环境变量中。

计算机–系统属性–高级系统设置–环境变量–path

配置数据路径

为了方便MongoDB找到数据位置,我们需要稍微的配置一下。用于临时开启mongodb数据库服务。如果有兴趣的话,也可以将其变为一个系统服务,这样也会更方便于使用。这里不过多叙述啦。

mongod –dbpath “数据文件夹路径”

新版本的mongodb用MongoVUE打开的时候会显示不出collections。这是因为引擎的缘故。
可以使用这样的命令,启动mongodb服务。

mongod.exe –storageEngine mmapv1 –dbpath D:\Software\mongodb\db

需要注意的是这个时候的db的路径应该是新的数据库文件夹路径。原因嘛,使用mmapv1引擎创建的当然和wiredTiger引擎创建的不能一致咯。

出现下图所示信息说明数据库路径配置成功。
开启mongodb服务,便于客户端进行连接

查看信息

为了更加清晰的开启mongodb神秘的面纱,可以利用浏览器查看详情。

mongo 127.0.0.1:27017/admin

27017端口 处查看

按照提示,下面尝试一下

mongo 127.0.0.1:28017/admin
28017 端口处查看

初次使用

对于MongoDB,一开始还是要使用Shell的方式,这样可以为今后打下更为坚实的基础。下面大部分将以对比关系型数据库MySQL的方式进行,来进一步加深对于NoSQL的学习理解和使用。

登陆

类比关系型数据库MySQL的终端登录:

mysql -u root -p password

Mongodb也是类似的,如下:

mongo 127.0.0.1:27017admin

出现下图,说明你登陆成功了。(默认是没有密码的)。
Shell 登陆成功

显示数据库信息

类比MySQL,查看系统内拥有的数据库信息。

show databases;
mongodb也是类似,只不过命令名称不同罢了。
show dbs;

如下图:
show dbs;

选择数据库

在MySQL中,要想使用一个指定的数据库,可以使用:

use DatabaseName;

在MongoDB中,同样如此:

use foobar

如下图:
use databasename;

显示表/文档信息

在关系型数据库中,查看某一个数据库中有哪些表,可以使用:

show tables;

在MongoDB这种非关系型数据库中,原理其实是差不多的。但是概念上来讲稍有出入。比如NoSQL中称表为文档(collection)。显示mongodb中文档的命令为:

show collections;
如下图:
show collections;

增删改查

与MySQL这种关系型数据库有所不同的是,NoSQL中的增删改查命令都有特定的使用方式。而且都是基于“条件”来实现的,这一点跟SQL语句可没什么关系啦。

  • find()
  • remove()
  • update()
  • insert()

至于细节部分,此处暂且略过,接下来的博文中可能会进行详细的阐述。

客户端

熟悉了Shell方式操作mongodb,也就对命令的书写比较熟悉了。这个时候就可以使用客户端工具帮助我们进一步提升效率了。网上找到一篇针对于MongoDB的客户端的文章。
http://blog.csdn.net/chszs/article/details/51348248

我这里要说的是,一个比较好用的客户端工具。MongoVUE。而且这里主要讲解一下如何破解这个工具,免得以后弹出窗口讨厌。

下载安装

破解之路

首先 Win+R键调出CMD命令行,输入regedit。找到下面图示的字段,删掉右边的1,2,3即可。(由于博主事先已破解,所以借用一下博友的破解图)。
破解图

这样就可以免费使用这个神器啦。

总结

这篇文章就是大致的讲了讲NoSQL中的翘楚MongoDB的一些基础性的东西。没什么技巧而言,仅仅是搭建了一个环境。解决了自己遇到的一些奇奇怪怪的问题。

  • 5
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论
MongoDB修炼之道是指在使用MongoDB时遵循的最佳实践和技巧。下面是几个MongoDB修炼之道的要点: 1. 数据建模:设计良好的数据模型是MongoDB应用的基础。要根据应用的需求和查询模式来设计集合和文档结构,以提高查询性能和数据访问效率。 2. 索引优化:合理创建索引可以加快查询的速度。根据查询频率和查询字段的选择性来选择合适的索引,同时要注意索引的大小和性能影响。 3. 查询优化:使用适当的查询操作符和查询策略来优化查询性能。尽量避免全表扫描和大量的数据排序操作,可以使用投影、分页和限制查询结果数量来提高查询效率。 4. 内存管理:合理配置MongoDB的内存资源,根据数据集的大小和访问模式来设置合适的缓存大小和预取策略,以提高数据的读取速度。 5. 分片和复制:对于大规模的数据集和高并发的访问需求,可以考虑使用分片和复制来提高系统的可扩展性和高可用性。 6. 安全设置:为了保护数据的安全性,要启用MongoDB的身份验证机制,设置密码和访问控制,限制只有授权用户才能访问数据库。 7. 定期备份:定期备份数据库以防止数据丢失,可以使用MongoDB提供的备份工具或第三方工具进行数据备份和恢复。 8. 监控和性能调优:监控数据库的性能指标和资源使用情况,及时发现并解决潜在的性能问题,可以使用MongoDB提供的监控工具或第三方工具进行性能调优。 9. 版本管理:及时升级MongoDB的版本,以获取最新的功能和性能改进,并修复已知的安全漏洞和bug问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

泰 戈 尔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值