今天看啥
    热点:

      天发国际娱乐官网:郑州新郑国际机场已开通国内外客货航线近200条,覆盖了全球主要经济体。

      MongoDB数据库简介&安装配置,mongodb数据库


      MongoDB 简介

      MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源 NoSQL 数据库系统,在高负载的情况下,添加更多的节点,可以保证服务器性能,旨在为WEB应用提供可扩展的高性能数据存储解决方案。
      MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
      \

      MongoDB 主页:http://www.1click-soft.com/tfgjylgw
      MongoDB 官方文档:http://www.1click-soft.com/tfgjylgw

      NoSQL 和 RDBMS

      MongoDB 是一种典型的 NoSQL 数据库,区别与 MySQL,Oracle,DB2 这些传统的关系数据库;
      ? RDBMS NoSQL
      特点 - 高度组织化结构化数据?
      - 结构化查询语言(SQL) (SQL)?
      - 数据和关系都存储在单独的表中。?
      - 数据操纵语言,数据定义语言?
      - 严格的一致性
      - 基础事务
      - 代表着不仅仅是SQL
      - 没有声明性查询语言
      - 没有预定义的模式
      -键 - 值对存储,列存储,文档存储,图形数据库
      - 最终一致性,而非ACID属性
      - 非结构化和不可预知的数据
      - CAP定理?
      - 高性能,高可用性和可伸缩性
      遵循原则 ACID 原则
      • A (Atomicity) 原子性
      • C (Consistency) 一致性
      • I (Isolation) 独立性
      • D (Durability) 持久性
      CAP原则
      • 一致性(Consistency) (所有节点在同一时间具有相同的数据)
      • 可用性(Availability) (保证每个请求不管成功或者失败都有响应)
      • 分隔容忍(Partition tolerance) (系统中任意信息的丢失或失败不会影响系统的继续运作)


      以下是 NoSQL 的分类和部分代表:
      列存储 Hbase、Cassandra、Hypertable
      文档存储 MongoDB、CouchDB
      key-value 存储 Tokyo Cabinet / Tyrant、Berkeley DB、MemcacheDB、Redis
      图存储 Neo4J、FlockDB
      对象存储 db4o、Versant
      xml数据库 Berkeley DB XML 、BaseX

       

      以下是部分 SQL 概念对应的 MongoDB 概念:
      SQL术语/概念 MongoDB术语/概念 解释/说明
      database database 数据库
      table collection 数据库表/集合
      row document 数据记录行/文档
      column field 数据字段/域
      index index 索引
      table joins ? 表连接,MongoDB不支持
      primary key primary key 主键,MongoDB自动将_id字段设置为主键






      MongoDB 安装配置

      以下以 Linux 环境的 mongoDB 安装配置作为示例,在 OS X,Window 环境下的操作也是类似的;
      下载选择合适的 MongoDB 版本下载,注意 window?版本的?mongodb-3.6 的 msi 安装程序可能会出现安装时进度条卡住的情况,此时可以直接杀线程,直接开始配置步骤,或者下载安装 3.4 版本的 mongodb; ?下载地址:http://www.1click-soft.com/tfgjylgw/download-center?jmp=tutorials&_ga=2.97410399.1138236154.1518440736-1543170749.1518440736#community

      解压linux 版本一般下载后是一个压缩包,解压该包即可获取 mongodb 的运行程序,假设该压缩包解压后得到目录 mongodb-3.6.2;为了方便启动,一般会把 mongodb-3.6.2/bin 目录写入到系统 PATH 变量;在 mongodb-3.6.2/ 下创建 data,logs 两个目录,分别用于储存数据和日志:
      ?
      assad@DESKTOP-assad:/usr/bin/mongodb-3.6.2$ mkdir data
      assad@DESKTOP-assad:/usr/bin/mongodb-3.6.2$ mkdir logs
      之后需要将?mongodb-3.6.2/ 下所有的文件设置 group 和 own;
      启动 mongoDB 服务运行 mongoDB 服务由 2 种方式,第一种是直接指定运行参数,第二种是指定配置文件,这里先演示第一种;?
      assad@DESKTOP-assad:/usr/bin/mongodb-3.6.2/bin$ mongod --dbpath=/usr/bin/mongodb-3.6.2/data --logpath=/usr/bin/mongodb-3.6.2/logs/mongo.log ? ?# 指定 data,logpath 位置运行 mongodb 服务

      连接 mongoDB?
      assad@DESKTOP-assad ~ $ mongo
      MongoDB shell version v3.6.2
      connecting to: mongodb://127.0.0.1:27017
      MongoDB server version: 3.6.2
      ......
      >
      这里我是已经将?mongodb-3.6.2/bin?的路径变量写入到系统 PATH 了,如果没有需要定位到该目录下执行该指令;

      设置管理员密码mongodb 默认没有设置密码的,为了安全会设置至少设置一个管理员密码,步骤如下:?
      assad@DESKTOP-assad ~ $ mongo ? ? # 登入 mongodb
      ?
      >show dbs; ? ? ? ? # 显示所有存在表
      admin ?0.000GB
      local ?0.000GB
      ?
      > use admin ? ? ? ?# 使用 admin 数据库
      switched to db admin ? ?
      ?
      > db.createUser({user:"assad",pwd:"mongo123",roles:["root"]}) ? ? # 在 admin 数据库中创建用户
      Successfully added user: { "user" : "assad", "roles" : [ "root" ] }
      ?
      > exit 
      之后重启 mongoDB 服务,并且以 auth 认证模式启动,如下:?
      assad@DESKTOP-assad:/usr/bin/mongodb-3.6.2/bin$ mongod --dbpath=/usr/bin/mongodb-3.6.2/data --logpath=/usr/bin/mongodb-3.6.2/logs/mongo.log ?--auth
      此时如果直接登陆 mongoDB 服务,所有的数据库操作都会被拒绝,需要以密码登入:?
      assad@DESKTOP-assad ~ $ mongo -u assad -p mongo1994 127.0.0.1:27017/admin ? # 以管理员方式登入 mongodb
      > show dbs
      .....


      使用配置文件启动 mongoDB 服务以上的 mongoDB 启动过程参数比较繁琐,可以编写一个配置文件,从配置文件启动 mongoDB,以下是一个示例的配置文件:
      /etc/mongod.conf?
      # for documentation of all options, see:
      # http://www.1click-soft.com/tfgjylgw/manual/reference/configuration-options/
      ?
      # Where and how to store data.
      dbpath=/usr/bin/mongodb-3.6.2/data
      journal=true
      ?
      # where to write logging data.
      logpath=/usr/bin/mongodb-3.6.2/logs/mongod.log
      logappend=true
      ?
      # network interfaces
      bind_ip=127.0.0.1
      port=27017
      ?
      # security
      auth=true
      通过该配置文件启动 mongodb 服务:?
      $ mongod -f /etc/mongod.conf
      配置文件中的参数其实通过 mongo --help 都由说明;

      MongoDB GUI 界面

      MongoDB 提供了简单的 HTTP 用户界面,如果要启用该功能,只需要只当启动参数 --rest,如下:?
      $ mongod -f /etc/mongod.conf --rest
      默认的 Web 界面端口比服务端口多 1000,默认为 28017,通过浏览器打开:http://www.1click-soft.com/tfgjylgw:28017?即可打开该管理端口;
      也可以使用 Robo 3T 这种 MongoDB 客户端管理软件,详见:http://www.1click-soft.com/tfgjylgw

      www.1click-soft.comtruehttp://www.1click-soft.com/DB2/1305646.htmlTechArticleMongoDB数据库简介安装配置,mongodb数据库 MongoDB 简介 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源 NoSQL 数据库系统,在高负...

      相关文章

      帮客评论

      视觉看点
      百度 360 搜狗