目前mongodb已经出到3.x,相对于2.x改动较大,本着学新不学旧的原则来捣鼓nosql数据库。最初想着apt-get安装但是软件源上都是2.x的,遂下载好后传到服务器安装。

1.下载

  不得不说国内的墙太厉害,连mongodb这类人畜无害的都挡了,虽然能够访问官网也能下载,但是速度从来不超过三十k,所以在某盘找到了源文件,下载地址http://pan.baidu.com/s/1nu96i1b,ubuntu64位的。

2.解压安装

  上传到服务器用tar解压

tar -xf mongodb-linux-x86_64-ubuntu1604-3.2..tgz

  移动到/opt目录下并重命名为mongodb

mv mongodb-linux-x86_64-ubuntu1604-3.2..tgz mongodb
mv mongodb /opt

3.配置

  切换到/opt/mongodb目录下,新建三个文件夹logs(存放日志),conf(存放配置文件),data/db(存放数据文件)

mkdir logs conf data
mkdir data/db

  conf目录下新建mongodb.conf文件

#日志位置
logpath=/opt/mongodb/logs/mongodb.log
#是否追加写入日志
logappend=true
#是否以守护进程启动
fork=false
#启动端口号
port=
#数据文件存放位置
dbpath=/opt/mongodb/data/db
#是否开启身份认证
#auth=true

4.启动

  把bin目录加到path中,方便操作,加入方法自行百度。

  启动命令

mongod -f /opt/mongodb/conf/mongodb.conf

  该方式为前台进程,无法做别的操作,常驻后台运行命令,由于日志信息都会写入到日志中,所以为重定向脚本输出,默认会在当前目录创建nohup.out文件

nohup mongod -f mongodb.conf &

用户管理

  注意前面的配置文件中是把auth注释掉了,因为mongodb是没有默认用户,所以先要以无验证方式启动,创建好用户后再打开认证选项。

  mongo的用户有一个原则是:用户跟库走(在哪儿库创建的用户就要在哪个库认证,不管这个用户是用来管理谁的)

1.创建用户管理员角色

  首先使用mongo命令进入交互环境,然后切换到admin库下

use admin

  然后创建admin用户(该用户有管理用户的权限(无操作权限),可在任意库中管理用户,但是先要到admin下认证(用户跟库走))

db.createUser(
{
user:'admin',
pwd:'admin',
roles:[
{role:"userAdminAnyDatabase",db:'admin'}
]
}
)

然后修改配置文件开启认证,重启数据库

2.针对具体库设置用户

  首先到admin库下认证admin用户

  然后切换到某个库创建这个库的管理用户

  然后在该库中认证该角色就能操作该数据库了。

更加详细的用户管理说明见http://www.cnblogs.com/shiyiwen/p/5552750.html

mongodb3 ubuntu离线安装(非apt-get)及用户管理的更多相关文章

  1. ubuntu离线安装mysql

    一:ubuntu离线安装mysql 转载来源:https://blog.csdn.net/liuhuoxingkong/article/details/80696574 参考文章:https://ww ...

  2. Ubuntu离线安装软件包

    一.应用场景 a.当我们需要在多台电脑安装同一个软件,并且这个软件很大,下载需要很长时间时 b.需要安装软件的ubuntu不能上网 二.离线安装包的制作 2.1.通过如下指令下载XXXX软件所需要的d ...

  3. Ubuntu 离线安装 docker

    1.下载离线包,网址:https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/ 离线安装docker需要下载3个 ...

  4. 运维笔记--Ubuntu离线安装jdk1.8(JDK8)Java环境

    Ubuntu离线环境安装jdk1.8 系统版本:Ubuntu16.04 其他Ubuntu版本安装类似 Jdk版本:8 1. 下载相应离线软件包 Jdk oracle官方下载地址:https://www ...

  5. Ubuntu离线安装Sogou拼音(附老版本安装&输入法自启动)

    跨平台系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#linux 离线安装的基础可以看看这篇文章的 前期准备工作 http://www.cnbl ...

  6. Ubuntu离线安装Tensorflow keras

    实验室的服务器木有连接外网,无法使用pip进行安装,真正意义上的离线安装需要很多安装依赖包,下载起来很麻烦,而且版本号还不一定对. 另一种方法是利用源代码编译安装,那样也需要安装依赖包,比较麻烦. 经 ...

  7. Ubuntu离线安装docker

    1.先安装依赖libltdl7_2.4.6-0.1_amd64.deb 下载链接http://archive.ubuntu.com/ubuntu/pool/main/libt/libtool/libl ...

  8. Ubuntu离线安装VSCode(附带前期准备工作)

    跨平台系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#linux 在说正式步骤前先把准备工作做到位: 1.IP设置,这个因为是GUI的,手动设置 ...

  9. Ubuntu 离线安装Mysql

    一.安装包 先从网络上,下载Mysql安装包,复制到U盘 下载地址:https://dev.mysql.com/downloads/mysql/ 二.挂载U盘 2.1查看分区 先输入命令  cat   ...

随机推荐

  1. ajax 动态添加商品列表

    <!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title> ...

  2. xssless - 自动化的XSS payload攻击器

    XSSLESS 一个用Python编写的自动化XSS 负载(payload)攻击器 用法: 记录请求 并结合Burp proxy 选择你想生成的请求,然后右键选择“保存项目” 使用xssless生成你 ...

  3. js事件循环

    之前有看过一些事件循环的博客,不过一阵子没看就发现自己忘光了,所以决定来自己写一个博客总结下! 首先,我们来解释下事件循环是个什么东西: 就我们所知,浏览器的js是单线程的,也就是说,在同一时刻,最多 ...

  4. less函数

    问题描述: 在编写页面时,有以下几种按钮: 这时候我们CSS代码毫无疑问写一个公共类,然后再为每个按钮增加独自的样式如下: HTML: <div class="common a&quo ...

  5. Mac系统占用空间大、空间不够、查看系统文件大小分布

    最近电脑老提示空间不够,甚是心烦,决定研究下,为啥空间这么快就花完了. 如图,256的空间,就剩下几个G了,其中最大头的系统占用:160G,占比60%多,我勒个擦... 正常情况下:我们可以点击管理, ...

  6. 浅谈java内存分配和回收策略

    一.导论 java技术体系中所提到的内存自动化管理归根结底就是内存的分配与回收两个问题,之前已经和大家谈过java回收的相关知识,今天来和大家聊聊java对象的在内存中的分配.通俗的讲,对象的内存分配 ...

  7. node.js零基础详细教程(6):mongodb数据库操作

    第六章 建议学习时间4小时  课程共10章 学习方式:详细阅读,并手动实现相关代码 学习目标:此教程将教会大家 安装Node.搭建服务器.express.mysql.mongodb.编写后台业务逻辑. ...

  8. angular指令ng-class巧用

    什么是ng-class ng-class最大的妙用就是可以根据你的逻辑表达式.来添加或移除对应的class ng-class是angular.js里面内置的一个指令. 项目中,有时候,我们需要根据需求 ...

  9. Tomcat 的 catalina.out 日志分割

    一.背景 Tomcat 的 catalina.out 日志量不断增加,占用空间较大,且默认是不滚动的.因此,需要对其进行日志分割,并进行清理. 本文选用 Cronolog 对其进行分割. 二.安装 1 ...

  10. sql 注入命令大全

    1.判断有无注入点 ; and 1=1 and 1=2 2.猜表一般的表的名称无非是admin adminuser user pass password 等.. and 0<>(selec ...