• MongDB简介

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

  • 面向集合存储,易存储对象类型的数据。
  • 模式自由、支持查询、支持动态查询。
  • 支持完全索引,包含内部对象。
  • 支持复制和故障恢复。
  • 使用高效的二进制数据存储,包括大型对象(如视频等)。
  • 自动处理碎片,以支持云计算层次的扩展性。
  • 支持RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。
  • 文件存储格式为BSON(一种JSON的扩展)。
  • 可通过网络访问。

  • 安装配置
  • 下载安装包,解压安装
  • 安装包地址:https://www.mongodb.com/downloads

    # yum install openssl-devel -y   
    # tar zxvf mongodb-linux-x86_64-rhel70-4.0.0.tgz -C /opt
    # mv /opt/mongodb-linux-x86_64-rhel70-4.0.0/ /usr/local/mongodb/
  • 创建MongoDB的数据存储目录、日志目录、日志文件

    # mkdir -p /data/mongodb1
    # mkdir -p /data/logs/mongodb
    # touch /data/logs/mongodb/mongodb1.log
    # chmod -R 777 /data/logs/mongodb/mongodb1.log
  • 当MongoDB处于频繁访问的状态,如果shell启动进程所占的资源设置过低,将会产生错误导致无法连接,需要设置ulimit -n 和ulimit -u 的值大于20000.

    # ulimit -n 25000
    # ulimit -u 25000
  • 创建MongoDB 的配置文件和启动参数

    # cd /usr/local/mongodb/bin/
    # vim mongodb1.conf
    port=27017           //默认服务器端口号
    dbpath=/data/mongodb1    //数据存储目录
    logpath=/data/logs/mongodb/mongodb1.log     //日志文件
    logappend=true             //使用追加方式写日志
    fork=true                        //后台运行
    maxConns=5000          //最大同时连接数
    storageEngine=mmapv1    //指定存储引擎为内存映射文件

    在CentOS7上安装MongDB【4.0.0版本】_第1张图片

  • 设置内核参数、
  • 当某个节点可用内存不足时,系统会从其他节点分配内存

    # echo 0 > /proc/sys/vm/zone_reclaim_mode
    # sysctl -w vm.zone_reclaim_mode=0       //永久设置
    # echo never > /sys/kernel/mm/transparent_hugepage/enabled 
    # echo never > /sys/kernel/mm/transparent_hugepage/defrag 
  • 启动和停止MongoDB
  • 启动

    # /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb1.conf 
    # netstat -antp | grep mongod    //查看进程
  • 停止

    # /usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb1.conf --shutdow
  • 配置开机自启动
  • 添加环境变量(直接使用mongod)

    # vim /etc/rc.local
    rm -rf /data/mongodb1/mongodb.lock
    /usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongodb1.conf
    # echo 'export PATH=/usr/local/mongodb/bin:$PATH'  >>  /etc/profile
    # source /etc/profile

    在CentOS7上安装MongDB【4.0.0版本】_第2张图片

  • 进入数据库

    # mongo



在CentOS7上安装MongDB【4.0.0版本】_第3张图片