千家信息网

【最新版4.0】MongoDB的安装、配置及启动实例

发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,概 述MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。在高负载的情况下,添加更多的节点,可以保证服务器性能。MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解
千家信息网最后更新 2025年01月23日【最新版4.0】MongoDB的安装、配置及启动实例

概 述

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

主要特点

  • MongoDB 是一个面向文档存储的数据库,操作起来比较简单和容易。
  • 你可以在MongoDB记录中设置任何属性的索引 (如:FirstName="Sameer",Address="8 Gandhi Road")来实现更快的排序。
  • 你可以通过本地或者网络创建数据镜像,这使得MongoDB有更强的扩展性。
  • 如果负载的增加(需要更多的存储空间和更强的处理能力) ,它可以分布在计算机网络中的其他节点上这就是所谓的分片。
  • Mongo支持丰富的查询表达式。查询指令使用JSON形式的标记,可轻易查询文档中内嵌的对象及数组。
  • MongoDb 使用update()命令可以实现替换完成的文档(数据)或者一些指定的数据字段 。
  • Mongodb中的Map/reduce主要是用来对数据进行批量处理和聚合操作。
  • Map和Reduce。Map函数调用emit(key,value)遍历集合中所有的记录,将key与value传给Reduce函数进行处理。
  • Map函数和Reduce函数是使用Javascript编写的,并可以通过db.runCommand或mapreduce命令来执行MapReduce操作。
  • GridFS是MongoDB中的一个内置功能,可以用于存放大量小文件。
  • MongoDB允许在服务端执行脚本,可以用Javascript编写某个函数,直接在服务端执行,也可以把函数的定义存储在服务端,下次直接调用即可。
  • MongoDB支持各种编程语言:RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。
  • MongoDB安装简单。

适用领域

MongoDB可以为Web应用提供可扩展的高性能数据存储解决方案。MongoDB主要适用领域有网站数据、分布式场景、数据缓存和JSON文件格式存储。适用大数据量、高并发、若事务的互联网应用,其内置的水平扩展机制提供了从几百万到十亿级别的数据处理能力,可以很好地满足Web2.0和移动互联网应用数据存储的要求。

系统环境

  • 操作系统:CentOs 7.3
  • 软件包:mongodb-linux-x86_64-rhel70-4.0.0.tgz 密码:hc17
  • 关闭防火墙及Selinux

部署安装

1.安装支持软件包
yum -y install openssl-devel libcurl
2.解压缩MongoDB软件包
tar zxvf mongodb-linux-x86_64-rhel70-4.0.0.tgz -C /opt
3.重命名并移动目录至/usr/local/目录下
mv /opt/mongodb-linux-x86_64-rhel70-4.0.0 /usr/local/mongodb
4.创建MongoDB的数据存储目录、日志存储目录及日志文件
mkdir -p /data/mongodb/mongodb1mkdir -p /data/conf/mkdir -p /data/logs/touch /data/logs/mongodb1.logchmod -R 777 /data/logs/mongodb1.log
5.调整shell资源的设置,以防频繁访问MongoDB产生错误导致无法连接MongoDB实例
ulimit -n 25000    #同一时刻最多开启文件数ulimit -u 25000     #同一时刻最多开启程序数
6.创建配置文件(启动参数)
vim /data/conf/mongodb1.conf
#mongod.conf#for documentation of all options, see:#http://docs.mongodb.org/manual/reference/configuration-options/#where to write logging data.systemLog:  destination: file  logAppend: true  path: /data/logs/mongodb1.log         //mongodb1的日志文件路径#Where and how to store data.storage:  dbPath: /data/mongodb/mongodb1/          //mongodb1的数据文件路径  journal:    enabled: true#engine:#mmapv1:#wiredTiger:#how the process runsprocessManagement:  fork: true  # fork and run in background  pidFilePath: /data/mongodb/mongodb1/mongod.pid  # location of pidfile  timeZoneInfo: /usr/share/zoneinfo#network interfacesnet:  port: 27017                   //mongodb1的进程号  bindIp: 0.0.0.0  # Listen to local interface only, comment to listen on all interfaces.#security:#operationProfiling:replication:                   //删除"#",开启复制集功能    replSetName: test-rc       //名称为test-rc#sharding:##Enterprise-Only Options#auditLog:#snmp:
7.设置内核参数(当某个节点可用内存不足时,系统会从其他节点分配内存)

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

8.MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中:
vim /etc/profile

#在文件末尾追加以下语句
export PATH=/usr/local/mongodb/bin:$PATH\

9.重新加载环境变量
source /etc/profile
10.设置MongoDB开机自启动
vim /etc/rc.local

rm -rf /data/mongodb/mongodb1/mongod.lock
/usr/local/mongodb/bin/mongod -f /data/conf/mongodb1.conf //启动实例

11.启动MongoDB数据库
mongod -f /data/conf/mongodb1.conf

12.检查MongoDB进程
netstat -tunlp | grep mongod

13.停止MongoDB数据库
mongod -f /data/conf/mongodb1.conf --shutdown

14.本地客户端连接并访问MongoDB数据库(默认端口为:27017)
mongo

数据 存储 文件 文档 函数 数据库 目录 系统 节点 处理 应用 服务 数组 日志 语言 路径 软件 软件包 支持 查询 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 昆明网络安全师真实收入 腾讯英雄联盟用什么样的服务器 湾区创见网络安全大会2021 网络安全体系如何构建 软件开发转行做项目管理 科技有限公司 软件开发 2008数据库应用与开发教程 企业安装一台服务器需要多少 数据库 批量插入 图数据库如何导出维护计划 温州专业网络安全准入控制哪家好 疫情期间幼儿园如何做好网络安全 华侨大学网络安全 达梦数据库跨库查询 数据库考研适合听的课 软件开发是正规的吗 网络安全报公安局备案 EPS数据库数据可靠吗 打印服务器和客户机的安装步骤 软件开发文科生学什么样 监狱深刻认识网络安全 文科被调剂到计算机网络技术 金色的服务器 数据库技术可行性分析 实时数据库软件免费官方版 数据库 批量插入 笔记本要求输入网络安全密钥 广饶电力网络安全生产责任制 数据库性能书籍 陕西智慧社区软件开发电话
0