MongoDB 是跨平台的,既可以在 Linux系统下安装,也可以在Windows 系统、MacOS系统下安装,本节主要介绍如何在 Linux 系统下安装 MongoDB。

windows安装:http://c.biancheng.net/mongodb2/install-on-windows.html

MacOS安装:http://c.biancheng.net/mongodb2/install-on-macos.html

安装 MongoDB

下载安装包

进入MongoDB 官网(https://www.mongodb.com/try/download/community)下载合适的安装包,如下图所示:

我们选择好要使用的安装包后并不需要在浏览器中直接下载,只需要复制下载链接即可,之后使用 Linux 命令来下载 MongoDB 的安装包,如下所示:

  1. wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-5.0.0.tgz

安装

1、将安装包移到 /usr/local/src 目录下(这步为个人习惯,非必须执行)

2、解压安装包

3、创建数据存储目录和日志存储文件

4、进入mongodb解压目录下的bin目录,启动mongodb服务

配置 MongoDB

以上面的方式启动mongodb比较麻烦,每次要自己加一堆参数,我们可以把这些参数写到配置文件中

1、进入mongodb解压目录下的bin目录,新增mongodb.conf文件

2、vim编辑mongodb.conf文件,增加下面配置内容

  1. # 数据存储目录
  2. dbpath=/usr/local/src/mongodb-linux-x86_64-rhel70-5.0.0/data
  3.  
  4. # 日志存储目录
  5. logpath=/usr/local/src/mongodb-linux-x86_64-rhel70-5.0.0/mongodb.log
  6.  
  7. # 日志以追加方式存储
  8. logappend=true
  9.  
  10. # 绑定ip
  11. bind_ip=127.0.0.1
  12.  
  13. # 绑定端口
  14. port=27017
  15.  
  16. # 是否以守护进程启动
  17. fork=true

更多配置文件配置详情

  1. # 数据库文件位置
  2. dbpath=/var/lib/mongodb
  3.  
  4. #日志文件的路径
  5. logpath=/var/log/mongodb/mongodb.log
  6.  
  7. # 是否追加方式写入日志,默认True
  8. logappend=true
  9.  
  10. # 设置绑定ip
  11. bind_ip = 127.0.0.1
  12. # 设置端口
  13. port = 27017
  14.  
  15. # 是否以守护进程方式运行,默认false
  16. fork = true
  17.  
  18. # 启用日志文件,默认启用
  19. journal=true
  20.  
  21. # 启用定期记录CPU利用率和 I/O 等待,默认false
  22. #cpu = true
  23.  
  24. # 是否以安全认证方式运行,默认是不认证的非安全方式
  25. #noauth = true
  26. #auth = true
  27.  
  28. # 详细记录输出,默认false
  29. #verbose = true
  30.  
  31. #用于开发驱动程序时验证客户端请求
  32. #objcheck = true
  33.  
  34. # # 启用数据库配额管理,默认false
  35. #quota = true
  36.  
  37. # 设置oplog日志记录等级,默认0
  38. # 0=off (default)
  39. # 1=W
  40. # 2=R
  41. # 3=both
  42. # 7=W+some reads
  43. #oplog = 0
  44.  
  45. # 是否打开动态调试项,默认false
  46. #nocursors = true
  47.  
  48. # 忽略查询提示,默认false
  49. #nohints = true
  50.  
  51. # 禁用http界面,默认为localhost:28017
  52. #nohttpinterface = true
  53.  
  54. # 关闭服务器端脚本,这将极大的限制功能,默认false
  55. #noscripting = true
  56.  
  57. # 关闭扫描表,任何查询将会是扫描失败
  58. #notablescan = true
  59.  
  60. # 关闭数据文件预分配
  61. #noprealloc = true
  62.  
  63. # 为新数据库指定.ns文件的大小,单位:MB
  64. # nssize = <size>
  65.  
  66. # 用于Mongo监控服务器的Accout token。
  67. #mms-token = <token>
  68.  
  69. # Mongo监控服务器的服务器名称。
  70. #mms-name = <server-name>
  71.  
  72. # Mongo监控服务器的Ping间隔时间,即心跳
  73. #mms-interval = <seconds>
  74.  
  75. # Replication Options
  76.  
  77. # 设置主从复制参数
  78. #slave = true # 设置从节点
  79. #source = master.example.com # 指定从节点的主节点
  80. # Slave only: 指定要复制的单个数据库
  81. #only = master.example.com
  82. # or
  83. #master = true # 设置主节点
  84. #source = slave.example.com
  85.  
  86. # 设置副本集的名字,所有的实例指定相同的名字属于一个副本集
  87. replSet = name
  88.  
  89. #pairwith = <server:port>
  90.  
  91. # 仲裁服务器地址
  92. #arbiter = <server:port>
  93.  
  94. # 默认为false,用于从实例设置。是否自动重新同步
  95. #autoresync = true
  96.  
  97. # 指定的复制操作日志(OPLOG)的最大大小
  98. #oplogSize = <MB>
  99.  
  100. # 限制复制操作的内存使用
  101. #opIdMem = <bytes>
  102.  
  103. # 设置ssl认证
  104. # Enable SSL on normal ports
  105. #sslOnNormalPorts = true
  106.  
  107. # SSL Key file and password
  108. #sslPEMKeyFile = /etc/ssl/mongodb.pem
  109. #sslPEMKeyPassword = pass

mongodb.conf

3、以配置文件启动mongodb

4、设置mongodb命令为全局使用

在 /etc/profile 文件最后加上

  1. export MONGODB_HOME=/usr/local/src/mongodb-linux-x86_64-rhel70-5.0.0/bin
  2. export PATH=$PATH:$MONGODB_HOME

source文件,使配置立即生效后,就可以全局使用mongodb命令了

需要注意的是,此时使用mongodb.conf配置文件启动服务需要使用绝对路径,否则无法找到配置文件。

5、设置mongodb使用service开机启动并使用命令控制服务

在 /etc/init.d/ 目录下新建mongodb文件,,将下面代码粘贴进去

  1. #!/bin/sh
  2. #
  3. #mongod - Startup script for mongod
  4. #
  5. # chkconfig: - 85 15
  6. # description: Mongodb database.
  7. # processname: mongod
  8. # Source function library
  9.  
  10. . /etc/rc.d/init.d/functions
  11. # things from mongod.conf get there by mongod reading it
  12. # OPTIONS
  13. OPTIONS=" -f /usr/local/src/mongodb-linux-x86_64-rhel70-5.0.0/bin/mongodb.conf "
  14. #mongod
  15. mongod="/usr/local/src/mongodb-linux-x86_64-rhel70-5.0.0/bin/mongod"
  16. lockfile=/var/lock/subsys/mongod
  17. start()
  18. {
  19. echo -n $"Starting mongod: "
  20. daemon $mongod $OPTIONS
  21. RETVAL=$?
  22. echo
  23. [ $RETVAL -eq 0 ] && touch $lockfile
  24. }
  25.  
  26. stop()
  27. {
  28. echo -n $"Stopping mongod: "
  29. killproc $mongod -QUIT
  30. RETVAL=$?
  31. echo
  32. [ $RETVAL -eq 0 ] && rm -f $lockfile
  33. }
  34.  
  35. restart () {
  36. stop
  37. start
  38. }
  39. ulimit -n 12000
  40. RETVAL=0
  41.  
  42. case "$1" in
  43. start)
  44. start
  45. ;;
  46. stop)
  47. stop
  48. ;;
  49. restart|reload|force-reload)
  50. restart
  51. ;;
  52. condrestart)
  53. [ -f $lockfile ] && restart || :
  54. ;;
  55. status)
  56. status $mongod
  57. RETVAL=$?
  58. ;;
  59. *)
  60. echo "Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
  61. RETVAL=1
  62. esac
  63. exit $RETVAL

mongodb service script

需要注意OPTIONS和mongod参数值要与自己的安全路径一致

给文件增加执行权限

此时,使用chkconfig --list 命令可以看到多了个mongodb,然后使用chkconfig mongodb on 设置开机启动

此时我们还可以使用  service mongodb [start|stop|restart] 控制mongodb服务

连接 MongoDB

进入解压目录的bin,执行 mongo文件就可以启用客户端连接mongodb

如果已配置mongodb命令为全局使用,可以在任何目录输入mongo 连接mongodb

MongoDB_安装、配置、连接(五)的更多相关文章

  1. 阿里云服务器Linux CentOS安装配置(五)jetty配置、部署

    阿里云服务器Linux CentOS安装配置(五)jetty配置.部署 1.官网下载jetty:wget http://repo1.maven.org/maven2/org/eclipse/jetty ...

  2. 【Linux】freetds安装配置连接MSSQL

    我使用的是freetds-0.91,下载地址:http://pan.baidu.com/s/1hq68rZY 安装编译(根据需要unixodbc): [root@zabbixserver / ]# t ...

  3. NAS4Free 安装配置(五)配置SMB

    配置SMB 现在我们有2块存储设备,一块做下载盘,一块做数据盘 为了便于管理和扩展,我们分别在两块盘上建文件夹和Dataset 对于download盘,因为是UFS,所以只能建文件夹 我们把整个盘共享 ...

  4. CDH集群安装配置(五)- Cloudera Manager Server

    在线安装 sudo yum install cloudera-manager-daemons cloudera-manager-server 离线安装 资源下载地址 https://archive.c ...

  5. sqoop 1.4.7 安装配置/连接测试

    环境: hadoop2.7.7 mysql 8 zk 3.4.10 hive 3 1.上传并解压tar包后进入conf目录 拷贝sqoop-env-template.sh并重命名为sqoop-env. ...

  6. 从maven安装配置到idea成功创建maven项目

    在文章开始之前,我还是想安抚下你躁动的心情,说实话这一套操作下来的确花了我不少时间,的确头疼. 不过对于现在在看文章的你,我还是想提倡多多尝试,耐心哈,别砸键盘......废话少说切入正题 一. ma ...

  7. 阿里云服务器Linux CentOS安装配置(零)目录

    阿里云服务器Linux CentOS安装配置(零)目录 阿里云服务器Linux CentOS安装配置(一)购买阿里云服务器 阿里云服务器Linux CentOS安装配置(二)yum安装svn 阿里云服 ...

  8. NAS4Free 安装配置 -- 目录

    淘了个DIY的NAS主机,装了3块硬盘,安装配置NAS4Free,用来存储照片.电影等资料,并兼做下载机. 现在把拆箱.安装.配置过程记录下来,供有兴趣的同学参考. NAS4Free 安装配置(一)开 ...

  9. 4-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(云端电脑(Windows)安装配置数据库,使用本地Navicat for MySQL和手机APP 远程连接测试)

    3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(安装配置数据库,使用Navicat for MySQL和手机APP 连接测试) 根据前面的教程把软件复制到云 ...

  10. 3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(安装配置数据库,使用Navicat for MySQL和手机APP 连接测试)

    2-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案数据篇(数据库简单说明) https://www.mysql.com/ 咱用安装版的 我把自己下载的放在了这里 现在 ...

随机推荐

  1. 莫烦python教程学习笔记——使用鸢尾花数据集

    # View more python learning tutorial on my Youtube and Youku channel!!! # Youtube video tutorial: ht ...

  2. JavaScript对象之面向对象

    在js中创建对象的两种方式 1.new一个Objecteg: var flower = new Object(); flower.stuname = "呵呵"; flower.ag ...

  3. Python matplotlib绘制圆环图

    一.语法和参数简介 plt.pie(x2,labels=labels, autopct = '%0.2f%%', shadow= False, startangle =0,labeldistance= ...

  4. <转>Java NIO API

    Java NIO API详解 NIO API 主要集中在 java.nio 和它的 subpackages 中: java.nio 定义了 Buffer 及其数据类型相关的子类.其中被 java.ni ...

  5. HBuilderX无法启动微信小程序?仅三步

    1.复制微信开发者工具启动路径 : "C:\Program Files (x86)\Tencent\微信web开发者工具\微信web开发者工具.exe" 不要后面的 "微 ...

  6. java 编程基础 反射方式获取泛型的类型Fileld.getGenericType() 或Method.getGenericParameterTypes(); (ParameterizedType) ;getActualTypeArguments()

    引言 自从JDK5以后,Java Class类增加了泛型功能,从而允许使用泛型来限制Class类,例如,String.class的类型实际上是 Class 如果 Class 对应的类暂时未知,则使 C ...

  7. 网络路径排查工具使用/原理浅析(MTR、traceroute、tracepath、windows下besttrace)

    在请求网络资源获取缓慢或者有丢包过程中.经常会使用到网络路径探测工具.linux 下最常用的有mtr.traceroute.tracepath 等. 你是否有一点疑惑,路径探测的原理到底是如何完成的, ...

  8. C# 使用Fluent API 创建自己的DSL

    DSL(Domain Specified Language)领域专用语言是描述特定领域问题的语言,听起来很唬人,其实不是什么高深的东西.看一下下面的代码: using FlunetApiDemo; v ...

  9. SpringBoot整合Elasticsearch启动报错处理 nested exception is java.lang.IllegalStateException: availableProcessors is already set to [8], rejecting [8]

    Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean wit ...

  10. 【Tools】VS搭建Qt开发环境

    00. 目录 @ 目录 00. 目录 01. 概述 02. Visual Studio 2019安装 03. Qt6安装 04. qt-vsaddin插件下载 05. qt-vsaddin插件安装 0 ...