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 的安装包,如下所示:

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文件,增加下面配置内容

 # 数据存储目录
dbpath=/usr/local/src/mongodb-linux-x86_64-rhel70-5.0.0/data # 日志存储目录
logpath=/usr/local/src/mongodb-linux-x86_64-rhel70-5.0.0/mongodb.log # 日志以追加方式存储
logappend=true # 绑定ip
bind_ip=127.0.0.1 # 绑定端口
port=27017 # 是否以守护进程启动
fork=true

更多配置文件配置详情

# 数据库文件位置
dbpath=/var/lib/mongodb #日志文件的路径
logpath=/var/log/mongodb/mongodb.log # 是否追加方式写入日志,默认True
logappend=true # 设置绑定ip
bind_ip = 127.0.0.1
# 设置端口
port = 27017 # 是否以守护进程方式运行,默认false
fork = true # 启用日志文件,默认启用
journal=true # 启用定期记录CPU利用率和 I/O 等待,默认false
#cpu = true # 是否以安全认证方式运行,默认是不认证的非安全方式
#noauth = true
#auth = true # 详细记录输出,默认false
#verbose = true #用于开发驱动程序时验证客户端请求
#objcheck = true # # 启用数据库配额管理,默认false
#quota = true # 设置oplog日志记录等级,默认0
# 0=off (default)
# 1=W
# 2=R
# 3=both
# 7=W+some reads
#oplog = 0 # 是否打开动态调试项,默认false
#nocursors = true # 忽略查询提示,默认false
#nohints = true # 禁用http界面,默认为localhost:28017
#nohttpinterface = true # 关闭服务器端脚本,这将极大的限制功能,默认false
#noscripting = true # 关闭扫描表,任何查询将会是扫描失败
#notablescan = true # 关闭数据文件预分配
#noprealloc = true # 为新数据库指定.ns文件的大小,单位:MB
# nssize = <size> # 用于Mongo监控服务器的Accout token。
#mms-token = <token> # Mongo监控服务器的服务器名称。
#mms-name = <server-name> # Mongo监控服务器的Ping间隔时间,即心跳
#mms-interval = <seconds> # Replication Options # 设置主从复制参数
#slave = true # 设置从节点
#source = master.example.com # 指定从节点的主节点
# Slave only: 指定要复制的单个数据库
#only = master.example.com
# or
#master = true # 设置主节点
#source = slave.example.com # 设置副本集的名字,所有的实例指定相同的名字属于一个副本集
replSet = name #pairwith = <server:port> # 仲裁服务器地址
#arbiter = <server:port> # 默认为false,用于从实例设置。是否自动重新同步
#autoresync = true # 指定的复制操作日志(OPLOG)的最大大小
#oplogSize = <MB> # 限制复制操作的内存使用
#opIdMem = <bytes> # 设置ssl认证
# Enable SSL on normal ports
#sslOnNormalPorts = true # SSL Key file and password
#sslPEMKeyFile = /etc/ssl/mongodb.pem
#sslPEMKeyPassword = pass

mongodb.conf

3、以配置文件启动mongodb

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

在 /etc/profile 文件最后加上

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

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

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

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

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

#!/bin/sh
#
#mongod - Startup script for mongod
#
# chkconfig: - 85 15
# description: Mongodb database.
# processname: mongod
# Source function library . /etc/rc.d/init.d/functions
# things from mongod.conf get there by mongod reading it
# OPTIONS
OPTIONS=" -f /usr/local/src/mongodb-linux-x86_64-rhel70-5.0.0/bin/mongodb.conf "
#mongod
mongod="/usr/local/src/mongodb-linux-x86_64-rhel70-5.0.0/bin/mongod"
lockfile=/var/lock/subsys/mongod
start()
{
echo -n $"Starting mongod: "
daemon $mongod $OPTIONS
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch $lockfile
} stop()
{
echo -n $"Stopping mongod: "
killproc $mongod -QUIT
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f $lockfile
} restart () {
stop
start
}
ulimit -n 12000
RETVAL=0 case "$1" in
start)
start
;;
stop)
stop
;;
restart|reload|force-reload)
restart
;;
condrestart)
[ -f $lockfile ] && restart || :
;;
status)
status $mongod
RETVAL=$?
;;
*)
echo "Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart}"
RETVAL=1
esac
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. 【Java 与数据库】How to Timeout JDBC Queries

    How to Timeout JDBC Queries JDBC queries by default do not have any timeout, which means that a quer ...

  2. 【Java 基础】 instanceof和isInstance区别详解

    obj instanceof class 也就是说这个对象是不是这种类型, 1.一个对象是本身类的一个对象 2.一个对象是本身类父类(父类的父类)和接口(接口的接口)的一个对象 3.所有对象都是Obj ...

  3. [MySQL实战-Mysql基础篇]-mysql架构

    1.基本组成 下面是mysql的基本架构示意图  图一 图二 我们可以从图上看出,mysql大体分为两个部分,一个是server层,另一个是引擎层. server层中包含了连接器.查询缓存.分析器.优 ...

  4. 学习 27 门编程语言的长处,提升你的 Python 代码水平

    Python猫注:Python 语言诞生 30 年了,如今的发展势头可谓如火如荼,这很大程度上得益于其易学易用的优秀设计,而不可否认的是,Python 从其它语言中偷师了不少.本文作者是一名资深的核心 ...

  5. redis迁移工具redis-migrate-tool

    目录 一.简介 二.测试 三.安装 四.验证 一.简介 redis-migrate-tool是在redis之间迁移数据的一个方便且有用的工具.他会已服务方式不断同步两边的数据.等到合适时间,中断red ...

  6. [BUUCTF]REVERSE——[BJDCTF 2nd]guessgame

    [BJDCTF 2nd]guessgame 附件 步骤: 例行查壳儿,64位程序,没有壳儿 64位ida载入,习惯性的检索程序里的字符串,看到了一串类似flag的字符串,拿去提交,成功 BJD{S1m ...

  7. Vue2与Vue3的组件通讯对比

    Vue2 父传子 父传子比较简单, 主要通过以下步骤实现 父在template中为子绑定属性 <Child :childData='pMsg'/> <!-- 也可以写死 --> ...

  8. 分布式系统一致性算法(Raft)

    过去, Paxos一直是分布式协议的标准,但是Paxos难于理解,更难以实现,Google的分布式锁系统Chubby作为Paxos实现曾经遭遇到很多坑. 来自Stanford的新的分布式协议研究称为R ...

  9. 解决Centos7误删Python问题

    1.前言 昨天安装Python3.6的时候.不小心把原来的Python全删了.不知道咋办了.后面参考一篇博客.重新安装了一下.相关的包全回来了.所以还是得注意root模式下.慎用rm -rf命令.(笑 ...

  10. worksocket使用Nginx进行反向代理

    配置文件 map $http_upgrade $connection_upgrade { default upgrade; '' close; } upstream weoskceturl{ serv ...