学习参考:https://www.runoob.com/mongodb/mongodb-tutorial.html

一、部署环境
  1、系统:Centos 7
  2、mongodb: mongodb-linux-x86_64-rhel70-4.4.5

二、安装包下载

  1、官方下载地址:https://www.mongodb.com/try#community

  2、下载演示

    

  3、在服务器上下载

    # wget  https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.4.5.tgz

 三、软件安装

  1、解压

    # tar -zxvf mongodb-linux-x86_64-rhel70-4.4.5.tgz

  2、创建mongodb 的home目录

    # mkdir /usr/local/mongodb

  3、创建mongodb 的数据目录和日志目录

    # mkdir /usr/local/mongodb/data

    # mkdir /usr/local/mongodb/data/db    #数据目录

    # mkdir /usr/local/mongodb/data/log      #日志目录

    # chmod 777 /usr/local/mongodb/db /usr/local/mongodb/log    #设置可读写权限

  4、创建mongodb 的配置文件(在mongodb目录下新建配置文件mongodb.conf(可选,但建议配置))

    # vi  /usr/local/mongodb/mongodb.conf   #配置文件中的目录和已创建的一一对应

 1 # 数据库数据存放目录
2 dbpath=/usr/local/mongodb/data/db
3 # 日志文件存放目录
4 logpath=/usr/local/mongodb/data/log/mongodb.log
5 # 日志追加方式
6 logappend=true
7 # 端口
8 port=27017
9 # 是否认证
10 auth=true
11 # 以守护进程方式在后台运行
12 fork=true
13 # 远程连接要指定ip,否则无法连接;0.0.0.0代表不限制ip访问
14 bind_ip=0.0.0.0

 

  5、将解压的文件移动至 mongodb 的home 目录

    # mv mongodb-linux-x86_64-rhel70-4.4.5/*  /usr/local/mongodb

  6、配置环境变量,在/etc/profile 末尾添加以下内容并保存,最后使用 source /etc/profile命令重启系统配置。    

1 export MONGODB_HOME=/usr/local/mongodb
2 export PATH=$PATH:$MONGODB_HOME/bin

四、启动、验证、关闭 mongodb 

  启动:

    方法一:有配置文件的情况 -f  等同于  --config

      # mongod -f /usr/local/mongodb/mongodb.conf

    方法二:没有配置文件的情况

      # mongod --dbpath /usr/local/mongodb/data/db --logpath /usr/local/mongodb/data/log/mongod.log --fork

  验证:

    #使用mongo 命令进入 mongodb shell 模式,Ctrl+D 退出shell 模式。

  

  关闭:

    # mongod -f /usr/local/mongodb/mongodb.conf --shutdown

五、其他介绍

  1、 mongodb 默认端口 27017.

  2、打包为服务类型

    a、# 使用vi /lib/systemd/system/mongodb.service命令创建开机配置文件,输入以下内容:    

 1 [Unit]
2 Description=mongodb
3 After=network.target remote-fs.target nss-lookup.target
4 [Service]
5 Type=forking
6 ExecStart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/mongodb.conf
7 ExecReload=/bin/kill -s HUP $MAINPID
8 ExecStop=/usr/local/mongodb/bin/mongod --shutdown -f /usr/local/mongodb/mongodb.conf
9 PrivateTmp=true
10 [Install]
11 WantedBy=multi-user.target

    b、使用  systemctl [start | stop | enable| status] mongodb.service 控制mongodb服务。

    

  

  3、用户管理

    # 我们在 mongodb 的配置文件中,指定了auth=true,即开启认证。默认情况下,mongod也是没有管理员账户的。因此需要在admin数据库中使用db.createUser()命令添加管理员帐号或其他角色。

    a、mongodb内置角色

1 数据库用户角色:read、readWrite
2 数据库管理角色:dbAdmin、dbOwner、userAdmin
3 集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager
4 备份恢复角色:backup、restore
5 所有数据库角色:readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
6 超级用户角色:root
7 内部角色:__system

    b、创建管理员账号:

      # 切换到admin数据库,使用以下命令创建管理账号,拥有操作所有数据库权限。

      > db.createUser({user:"admin",pwd:"password",roles:["root"]})

      

    c、验证:

      > use admin

      > db.auth('admin','password')

      

    d、 添加数据库用户:给mytest数据库创建用户和密码

      > use mytest

      > db.createUser({user: "mytest", pwd: "mytest", roles: [{ role: "dbOwner", db: "mytest" }]}) # 创建用户mytest,设置密码mytest,设置角色dbOwner

     

    e、查看系统用户

      > db.system.users.find()

      

    f、删除用户

      > db.dropUser("mytest")

      

      注:删除用户是需要在用户的管理的数据库下才可以删除。

(一)Mongodb学习之 Centos 7 单机部署的更多相关文章

  1. 在Centos下单机部署kubernetes

    官方安装手册 https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/ ...

  2. mongodb学习(1) 第一次开启 mongdb

    1.启动mongdb 可以设置为开机启动 mongod -dbpath=/data/mongodb --fork --port 27017 --logpath=/usr/local/mongodb/l ...

  3. MongoDB单机部署

    MongoDB单机部署 一.环境 系统:centos7.6 DB版本:mongodb-linux-x86_64-rhel62-4.2.1.tgz 官网地址:https://www.mongodb.co ...

  4. Ecstore安装篇-2.单机部署【linux】

    单机部署实施-linux 单机部署实施-linux author :James,jimingsong@vip.qq.com since :2015-03-02 系统环境需求 软件来源 底层依赖 1. ...

  5. 使用yum源的方式单机部署MySQL8.0.13

    使用yum源的方式单机部署MySQL8.0.13 作者:尹正杰  版权声明:原创作品,谢绝转载!否则将追究法律责任. 基本上开源的软件都支持三种安装方式,即rmp方式安装,源码安装和二进制方式安装.在 ...

  6. hive_学习_01_hive环境搭建(单机)

    一.前言 本文承接上一篇:hbase_学习_01_HBase环境搭建(单机),主要是搭建 hive 的单机环境 二.环境准备 1.说明 hive 的下载来源有: 官方版本:http://archive ...

  7. centOS 7单机安装 kong

    kong 网关 单机部署 环境:centOS 7:依赖:jdk1.8 安装内容:postgresql数据库, kong 网关,nodeJs和npm,kong Dashboard (可视化管理界面) 版 ...

  8. MongoDB学习笔记—Linux下搭建MongoDB环境

    1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...

  9. MongoDB学习:(一)MongoDB安装

    MongoDB学习:(一)MongoDB安装 MongoDB介绍:     直接百科了: MongoDB安装: 1:下载安装: MongoDB安装:https://www.mongodb.com/do ...

随机推荐

  1. 【TP3.2.3】addAll方法的坑

    问题:做一个导入Excel到数据库的功能中需要用到addAll功能,但是每次执行到addAll()时都会报错,如下 Insert value list does not match column li ...

  2. docker挂载目录问题:touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied

    docker 运行后, 执行docker logs -f myjenkins时报错:touch: cannot touch '/var/jenkins_home/copy_reference_file ...

  3. windows2012安装django

    第一步:下载python3.6.8或者到(https://www.python.org/downloads/release/python-368/)官网下载(Windows x86-64 execut ...

  4. 对帧率、I/P率、I帧间隔的理解

    码率就是数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒.通俗一点的理解就是取样率,单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件,但是文件体积与取样率是成正比 ...

  5. 疏忽Bug

    仅供自己留存备份   错误: vector不是模板 解决: 头文件未包含 头文件: #include <vector> using namespace std;     错误: 多字节字符 ...

  6. MyBatis-Plus代码生成器的使用

    1.MyBatis-Plus简介 ​ 在代码开发中,肯定会遇到代码中对应数据库表去编写实体类的工作,若数据库表数量多的情况下,编写Entity,属实是一件消耗时间,且并没有什么技术含量的事情,如何解决 ...

  7. 数据库InnoDB和MyISAMYSQL的区别

    1.nnoDB支持事务,MyISAM不支持,这一点是非常之重要.事务是一种高级的处理方式,如在一些列增删改中只要哪个出错还可以回滚还原,而MyISAM就不可以了. 2.MyISAM适合查询以及插入为主 ...

  8. 题解 「BZOJ3636」教义问答手册

    题目传送门 Description 作为泉岭精神的缔造者.信奉者.捍卫者.传承者,Pear决定印制一些教义问答手册,以满足泉岭精神日益增多的信徒.Pear收集了一些有关的诗选.语录,其中部分内容摘录在 ...

  9. hdu3001(三进制状压)

    题目大意: 现在给你一个有n个点和m条边的图,每一条边都有一个费用,每个点不能经过超过两次,求所有点至少遍历一次的最小费用 其中n<=10 m没有明确限制(肯定不会超过1e5) 一看到这个数据范 ...

  10. 接口自动化-Python3+request上传文件,发送multipart/form-data编码

    1.安装requests_toolbelt   pip install requests-toolbelt 2.发送文件中的数据 from requests_toolbelt import Multi ...