设为首页 收藏本站
查看: 954|回复: 0

[经验分享] MongoDB安装笔记

[复制链接]
发表于 2018-10-25 10:12:31 | 显示全部楼层 |阅读模式
MongoDB简介
  本文转自:http://blog.csdn.net/hsd2012/article/details/51279472
  MongDB是一个高性能,开源,无模式的文档型NosQL数据库。
主要功能特性:
  1.文件存储格式BSON(一种json的扩展)
  2.模式自由
  数据格式不受限了表的结构
  3.支持动态查询
  4.支持完全索引
  5.支持复制(其主从复制)和故障恢复
  6.使用高效的二进制数据存储,包括大型对象
  7.自动处理碎片,以支持云计算层次的扩展。
  8.支持Java、Ruby、Python、C++、PHP等多种语言
  9.内部支持JavaScript
MongoDB的优势
  1.查询速度快
  2.高并发。可以达到2万个并发。
  3.高容量。支持10TB意思的数据量
  MongoDB使用场景
  1.网站数据
  2.缓存
  3.大尺寸、低价值的数据
  4.高伸缩的场景
  5.用于对象以及Json数据存储
MongoDB限制
  1.在32位操作系统上,不支持大于2.5G的数据
  2.单个文件大小限制16M
  3.高度事务的系统
  4.传统商业智能应用
MongoDB与其他数据库区别

MongoDB安装
  在这里,主要讲解的是win下安装,关于Linux下安装,随后会添加上。
  下载网址:官方网站(https://www.mongodb.org/downloads/#production)
  在这里使用的是win32

  一路“NEXT”直到“Finish”。
配置path路径[可选]
  配置path路径目的便于,直接可以再命令提示符输入mongoDB命令,不需要每次在切换到mongoDB的bin目录。在[我的电脑]右键,选择[属性]=>[高级系统设置]=>[高级]=>[环境变量设置]=>系统变量里面的[path]修改,添加mongoDB的bin目录,我添加的目录是’C:\Program Files\MongoDB\Server\3.2\bin’
  操作步骤截图如下:

启动MongDB服务端
  参照官方网站:https://docs.mongodb.org/manual/tutorial/install-mongodb-on-windows/#install-mongodb-community-edition
  启动MongDB步骤如下
设置MongDB执行环境
  官方原话如下:
  Set up the MongoDB environment
  1.MongoDB requires a data directory to store all data. MongoDB’s default data directory path is \data\db. Create this folder using the following commands from a Command Prompt:
  md \data\db
  mongoDB需要指定一个目录来存储数据。在win下在命令提示中,你可以使用md命令创建目录。在此,我将创建一个data目录和log目录,分别用于存放数据和日志。吐槽一下,感觉win下创建目录确实没有linux下方便。

  此时该目录下创建目录如下

启动mongoDB(针对服务端)
  官方原话如下:
  To start MongoDB, run mongod.exe. For example, from the Command Prompt:
  C:\mongodb\bin\mongod.exe
  This starts the main MongoDB database process. The waiting for connections message in the console output indicates that the mongod.exe process is running successfully.
  就是我们通过mongod.exe来启动mongoDB,启动了MongoDB主数据进程,如果出现等待连接的消息,则暗示着mongod.exe进程正在成功运行着。
  好了,现在我们开始启动了。
  启动命令如下:
  mongod.exe --dbpath="C:\Program Files\MongoDB\Server\data" --logpath="C:\Program Files\MongoDB\Server\log\mongodb.log" --port=27017
  如果没有配置mongoDB的path目录,需要先切换到mongoDB的bin目录下或是使用C:\Program Files\MongoDB\Server\3.2\bin\mongod.exe去执行。
  解析:dbpath指定数据存放目录,可自行指定
  logpath指定日志路径,可以自行指定
  port指定端口号,默认的是27017
  此时既然爆出如下错误

  也就是说32位系统默认情况下没有开启日志记录功能,请使用–journal开启。
  但是当我进入C:\Program Files\MongoDB\Server\log目录下时候,发现有日志,其内容如下:
016-04-28T21:42:47.003+0800 I CONTROL  [main] Hotfix KB2731284 or later update is not installed, will zero-out data files2016-04-28T21:42:47.071+0800 I CONTROL  [initandlisten] MongoDB starting : pid=17916 port=27017 dbpath=C:\Program Files\MongoDB\Server\data 32-bit host=YEGZT8JOIIU2LKY2016-04-28T21:42:47.072+0800 I CONTROL  [initandlisten] targetMinOS: Windows Vista/Windows Server 20082016-04-28T21:42:47.072+0800 I CONTROL  [initandlisten] db version v3.2.52016-04-28T21:42:47.072+0800 I CONTROL  [initandlisten] git version: 34e65e5383f7ea1726332cb175b73077ec4a1b022016-04-28T21:42:47.072+0800 I CONTROL  [initandlisten] allocator: tcmalloc2016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten] modules: none2016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten] build environment:2016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten]     distarch: i3862016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten]     target_arch: i3862016-04-28T21:42:47.073+0800 I CONTROL  [initandlisten] options: { net: { port: 27017 }, storage: { dbPath: "C:\Program Files\MongoDB\Server\data" }, systemLog: { destination: "file", path: "C:\Program Files\MongoDB\Server\log\mongodb.log" } }2016-04-28T21:42:47.090+0800 I STORAGE  [initandlisten] exception in initAndListen: 28663 Cannot start server. The default storage engine 'wiredTiger' is not available with this build of mongod. Please specify a different storage engine explicitly, e.g. --storageEngine=mmapv1., terminating2016-04-28T21:42:47.090+0800 I CONTROL  [initandlisten] dbexit:  rc: 1001234567891011121312345678910111213  这日志记录的跟,命令提示中提示的还不一样啊,怎么办?因为命令提示中,提示是因为日志没有开启造成的错误,而日志说引擎不合适。只能先一个尝试一下。那我不添加日志,执行如下命令
  mongod.exe --dbpath="C:\Program Files\MongoDB\Server\data" --port=27017

  通过这个提示,看来这次确定了,是默认存储引擎不支持了。只好换一个引擎。执行如下命令:
mongod.exe --dbpath="C:\Program Files\MongoDB\Server\data"  --logpath="C:\Program Files\MongoDB\Server\log\mongodb.log" -storageEngine="mmapv1" --port=27017  --journal11  执行结果如下:

  一直在等待连接中,此时我查看了一些log日志

  看来是启动了。当然也可以在浏览器中输入http://localhost:27017 如果出现如下界面,代码安装成功。

连接MongoDB(针对客户端)
  官方原话如下:
  Connect to MongoDB.
  To connect to MongoDB through the mongo.exe shell, open another Command Prompt.
  C:\mongodb\bin\mongo.exe
  If you want to develop applications using .NET, see the documentation of C# and MongoDB for more information.
  要想连接MongoDB,需要打开另外一个命令提示符窗口,通过mongo.exe来建立连接。如果要使用 .NET开发应用,需要查看C#文档和其他MongoDB手册,来获取更多信息。
  说白了,就是客户端通过mongo.exe来连接mongoDB。其实直接输入mongo也一样,当然我这里面出现了一些警告信息,暂时可以不去理会。

  客户端连接mongoDB方式如下(里面的mongoDB也可以换成mongo.exe)

常用命令
  1.db.help()
  查看命令提示

  2.db
  查看当前所在数据库的名字

  3.use命令
  use+数据库名 表示切换或是创建数据库。和MySQL中use的唯一不同点,就是当数据库不存在的时候,MongoDB中的use可以创建数据库。

  4.show dbs
  显示数据库,需要注意的是show dbs,只会显示有数据的库,没有数据的库,是不会显示的。下图中,dqs数据库中,开始没有数据,所以不会显示,当我插入一条数据库后,show dbs 就会显示它。

  5.db.dropDatabase()
  删除当前数据。
  删除之前

  执行删除操作,删除之后,当前库不变化。

  删除之后,数据库文件也没有了。

  6.db.stats()
  查看当前数据的状态

  7.db.version()
  查看mongoDB版本
  8.db.getMongo()
  查看当前连接机器的ip

  9.mongoDB对支持JavaScript
  因为mongoDB支持JavaScript,所以可以直接在命令提示中输入js代码。如下图




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-626226-1-1.html 上篇帖子: MONGODB的压力测试 下篇帖子: MongoDB 复制相关介绍
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表