首页 > 数据库 >mongodb的安装使用、mongodb与redis,memcache,mysql的区别优缺点 以及 好用的MongoDB的可视化客户端Robomongo,mongobooster

mongodb的安装使用、mongodb与redis,memcache,mysql的区别优缺点 以及 好用的MongoDB的可视化客户端Robomongo,mongobooster

时间:2024-06-12 11:33:26浏览次数:14  
标签:-- mongodb redis MongoDB 关系数据库 Mongodb Robomongo

一、mongodb的安装使用、与redis,memcache,mysql的区别优缺点

    MongoDB是一个介于关系数据库和非关系数据库之间的基于分布式文件存储的数据库。是非关系数据库当中功能最丰富,最像关系数据库的。他支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是他支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。MongoDB旨在为WEB应用提供可扩展的高性能数据存储解决方案。

    在linux和windows下mongodb的安装都很简单,基本可以说基本就不用安装:

    mongodb官网下载地址:https://www.mongodb.com/download-center 里面有windows和LINUX的下载链接。

    下载下来后解压,bin目录下就是一些执行文件,直接执行mongod可执行文件,即是启动mongo,在WINDOWS下加上--install安装为服务,然后启动服务即可。LINUX下的运行脚本如下:

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.9.tgz
mv mongodb-linux-x86_64-3.2.9 /usr/local/mongodb
cd /usr/local/mongodb/bin
./mongod --dbpath=/usr/local/mongodb/data/ --fork --logpath=/usr/local/mongodb/mongo.log

    使用参数:--dbpath指定mongodb的数据存放目录,--fork表明以后台服务进程启动,--logpath指明日志文件路径。启动后可运行mongo,启动客户端自动连接mongodb,MongoDb默认启用端口27017.

[root@test bin]# ./mongo
MongoDB shell version: 3.2.9
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see http://docs.mongodb.org/
Questions? Try the support group http://groups.google.com/group/mongodb-user
> show dbs;
local  0.000GB

     使用非常简单。mongodb里也有库的概念,你可把它想像和Mysql一个,一个Mysql里有很多数据库,Mongodb也一样,而Mysql中一个库下有很多表,对应的就是Mongodb中一个集合(Collections)。

    MongoDB是一个介于关系数据库和非关系数据库之间,为什么这么说,可能这样理解。非关系型数据库比如Redis和Memcache,都是KV存储,Mongodb也是KV存储。从这点来看它像是一个非关系型数据库NOSQL.,而在查询上,redis和memcache基本是通过key查询(只讨论KV结构,REDIS的其它结构也可支持复杂查询),但是MongoDB可以通过对Value中的内容进行查询,比如我们往redis和Mongodb中插入一个KV数据(V中包括多个信息,比如学员的名字、年龄),Mongodb可以通过对V中的学员、年龄进行单独查询,而redismemcache只能通过学员的KEY查询,这有点像Mysql中对字段进行查询,所以从这点看Mongodb有点像关系型数据库。Mongodb之所以能这样,是因为其存储时使用的是BSON格式存储。Mongodb还有另外一个功能,它可以存储大文件,比如图片。

    Redis和memcache的比较很简单,memcache缓存数据类型只有kv,而Redis有丰富的数据类型hash,有序集合、无序集合、列表,而且redis支持AOF RDB持久化,当然也可以把它当做缓存使用(需要关闭AOF,RDB)持久化功能,目前来看redis完全可以替代memcache。

二、好用的MongoDB的可视化客户端Robomongo,mongobooster

    但凡是数据库我们都希望有一个可视化的工具能比较直观快速的查看数据,比如MYSQL的phpmyadmin,navicat系列,对于MongoDb也有非常多的可视化管理工具,比如:Robomongo,mongohub,mongoVUE,rockmongo,mongotron,mongochef,MongoBooster,目前我主要使用的是Robomongo,可以到个人博客资源里搜索下载资源。

    WINDOWS下的Robomongo使用起来非常容易,安装后启动,点击create创建一个连接,设置连接参数,主要是IP地址和端口,端口一般都不会变,如果需要账号密码,在选项卡Authentication中填写即可。如下图:

    目前用Robomongo的用户还是不少,不过也不一定Robomongo就是最好的,网上有很多推荐mongobooster,下载地址:http://mongobooster.com/downloads,感觉也不错。和Robomongo一样简单安装使用即可。mongobooster界面如下图:

标签:--,mongodb,redis,MongoDB,关系数据库,Mongodb,Robomongo
From: https://blog.csdn.net/weixin_47792780/article/details/139513961

相关文章

  • Redis之缓存穿透和雪崩
    缓存穿透概念缓存穿透的概念很简单,用户想要査询一个数据,发现redis内存数据库没有,也就是缓存没有命中,于是向持久层数据库查询。发现也没有,于是本次查询失败。当用户很多的时候,缓存都没有命中,于是都去请求了持久层数据库。这会给持久层数据库造成很大的压力,这时候就相当于出现......
  • Redis之哨兵模式
    概述无哨兵模式的主从切换的方法是当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费时费力,还会造成一段时间内服务不可用。这不是一种推荐的方式,更多时候,我们优先考虑哨兵模式。Redis从2.8开始正式提供了Sentinel(哨兵)架构来解决这个问题。哨兵模......
  • Redis 的数据类型及各数据类型的命令还有其应用场景
    String类型(适用于大部分)含义String类型包含多种类型的特殊类型,并且是二进制安全的.比如序列化的对象进行存储,比如一张图片进行二进制存储.,比如一个简单的      命令setrangekeyindexvalue->修改键对应的值,index表示开始的索引位置ttl->可以查询......
  • Redis
            之前我们学习得都是SQL类型的,从这里开始我们开始设置对应的NoSQL类型的        国内的一些企业,并不是都是仅仅只使用关系型数据库,也就是SQL就可以进行相关操作的,还需要其他的类型,也就是NoSQL类型的数据库NOSQL解决方案:Redis:第一个......
  • Redis实现分布式锁有哪些方案?
    Redis实现分布式锁有哪些方案?在这里分享六种Redis分布式锁的正确使用方式,由易到难。本文已收录到Java面试网站方案一:SETNX+EXPIRE方案二:SETNX+value值(系统时间+过期时间)方案三:使用Lua脚本(包含SETNX+EXPIRE两条指令)方案四::ET的扩展命令(SETEXPXNX)方案五:开源框架~Redi......
  • Redis之主从同步
    概念主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master/leader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave以读为主。默认情况下,每台Redis服务器都是主节点;且一个主节点可以有多个......
  • Redis:原理、概念、用法与实例解析
    Redis:原理、概念、用法与实例解析在当今风起云涌的技术领域中,Redis犹如一颗璀璨的明星,闪耀着独特的光芒。它作为一种备受瞩目的数据存储和缓存解决方案,以其卓越的性能、丰富多样的功能以及简单易用的特性,成为了众多开发者的心头好。在这篇博客中,我们将全方位、深层次地探......
  • Redis之发布订阅
    发布订阅Redis发布订阅(pub/sub)是一种消息通信模式,发送者(pub)发送消息,订阅者(sub)接收消息。Redis客户端可以订阅任意数量的频道。消息发送者&消息接收者&频道可以想象这么一个场景。我们抖音、微博关注了哪个博主,当他发布一条文章时,系统就会给我们推送他发布的消息内......
  • 百度面试:如何用Redis实现限流?
    高并发系统有三大特征:限流、缓存和熔断,所以限流已经成为当下系统开发中必备的功能了。那么,什么是限流?如何实现限流?使用Redis能不能实现限流?接下来我们一起来看。1.什么是限流?限流是指在各种应用场景中,通过技术和策略手段对数据流量、请求频率或资源消耗进行有计划的限制,以避......
  • redis自学(46)键值设计
    Redis键值设计优雅的key结构Redis的Key虽然可以自定义,到但是最好遵循下面的几个最佳实践约定:l 遵循基本格式:[业务名称]:[数据名]:[id]l 长度不超过44字节(长度越小,占用的内存越少)l 不包含特殊字符  优点:①可读性强②避免key冲突③方便管理④更节省内存:ke......