热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MongoDB的安装和使用指南

什么是MongoDB  MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和

enter image description here

什么是MongoDB

  MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。
MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

安装
Mac

  Mac下面安装MongoDB。有两种方式一种从官网下载安装安装,下载地址
另外一种是使用Mac上面的神器"brew"来安装。

#安装mongodb
brew install mongodb
Linux
#下载mongodb
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz   
#解压
tar -zxvf mongodb-linux-x86_64-3.0.6.tgz    
#移动到/usr/local/mongodb                                
sudo mv  mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb
#添加到PATH路径中 
export PATH=/usr/local/mongodb/bin:$PATH 
使用
创建数据库目录
sudo mkdir -p /data/db
启动数据库
#这种启动方式会随终端的关闭导致mongodb也关闭
sudo ./mongod
#后台启动  --logpath制定日志位置
sudo ./mongod --fork --logpath /var/log/mongod.log
创建数据库
#语法use DATABASE_NAME 不存在就创建,存在则切换
use db-test
删除数据库
#删除当前数据库
db.dropDatabase()
创建集合
#这里集合可以理解关系型数据库里面的表的概念
db.createCollection("test")
插入数据
#{}里面为Json格式。请注意""
db.test.insert({"name":"小红","age":"10"})
db.test.insert({"name":"小蓝","age":"11"})
db.test.insert({"name":"小白","age":"12"})
db.test.insert({"name":"小紫","age":"13"})
db.test.insert({"name":"小绿","age":"14"})
查询数据
#查询test这个集合里面所有数据
db.test.find()
#根据条件查询数据。只查询名字叫做小白的行
db.test.find({"name":"小白"})
#查询年龄大于11的行 $gt 为操作符。见下面的操作符
db.test.find({"age":{$gt:"11"}})
操作符
#大于
$gt
#小于
$lt
#大于等于
$gte
#小于等于
$lte
修改数据
#修改小红的年龄为20。update为修改,save为替换
db.test.update({'name':'小红'},{$set:{"age":'20'}})
删除数据
#删除名字为小红的行
db.test.remove({'name':'小红'})
#删除test集合下面所有数据
db.test.remove({})
排序
#以年龄排序 1为升序排列,-1是用于降序排列
#db.test.find().sort({"age":-1})
Limit
#获取前3行数据
db.test.find().limit(3)
#按照年龄降序 获取前3条
db.test.find().sort({"age":-1}).limit(3)
备份
#备份db-test到/home/ubuntu目录下
mongodump -d db-test -o /home/ubuntu
还原
#从/home/ubuntu目录下面备份还原db-test数据库。
mongorestore -d db-test /home/ubuntu

图形化管理工具

  虽然mongodb提供了shell查询工具。但是在日常开发过程为了方便快速开发和使用。一般会用到图形化管理工具。这里以robomongo为列。官网下载地址。下载安装完成之后。打开robomongo。
enter image description here
点击created,然后输入mongodb地址。默认地址localhost,端口为27017.然后点击save.
enter image description here
这样我们就可以通过robomongo很方便管理数据库了。后面还会继续分享一些在使用mongodb中遇到的问题。


推荐阅读
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 一次上线事故,30岁+的程序员踩坑经验之谈
    本文主要介绍了一位30岁+的程序员在一次上线事故中踩坑的经验之谈。文章提到了在双十一活动期间,作为一个在线医疗项目,他们进行了优惠折扣活动的升级改造。然而,在上线前的最后一天,由于大量数据请求,导致部分接口出现问题。作者通过部署两台opentsdb来解决问题,但读数据的opentsdb仍然经常假死。作者只能查询最近24小时的数据。这次事故给他带来了很多教训和经验。 ... [详细]
  • 本文介绍了数据库的存储结构及其重要性,强调了关系数据库范例中将逻辑存储与物理存储分开的必要性。通过逻辑结构和物理结构的分离,可以实现对物理存储的重新组织和数据库的迁移,而应用程序不会察觉到任何更改。文章还展示了Oracle数据库的逻辑结构和物理结构,并介绍了表空间的概念和作用。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文介绍了Linux系统中正则表达式的基础知识,包括正则表达式的简介、字符分类、普通字符和元字符的区别,以及在学习过程中需要注意的事项。同时提醒读者要注意正则表达式与通配符的区别,并给出了使用正则表达式时的一些建议。本文适合初学者了解Linux系统中的正则表达式,并提供了学习的参考资料。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • SpringBoot整合SpringSecurity+JWT实现单点登录
    SpringBoot整合SpringSecurity+JWT实现单点登录,Go语言社区,Golang程序员人脉社 ... [详细]
  • 一、路由首先需要配置路由,就是点击good组件进入goodDetail组件配置路由如下{path:goodDetail,component:goodDetail}同时在good组件中写入如下点击事件,路由中加入 ... [详细]
  • 对于一般的扩展包,我们一般直接pipinstallxxx即可安装,但是unrar直接安装后,发现并不能通过Python程序实现解压的功能& ... [详细]
author-avatar
手机用户2602915451
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有