千家信息网

Linux上怎么安装MongoDB

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,本篇内容介绍了"Linux上怎么安装MongoDB"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!环境
千家信息网最后更新 2026年11月03日Linux上怎么安装MongoDB

本篇内容介绍了"Linux上怎么安装MongoDB"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

环境:

CentOS 7
MongoDB 3.4.9

下载MongoDB

首先去MongoDB官网下载MongoDB,地址https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.9.tgz。将下载的文件放到/opt目录下。

解压

解压下载到的tgz文件,并给文件夹重命名为mongodb,然后创建db、logs目录分别用来存放数据和日志。如下:

配置

进入到bin目录下,编辑mongodb.conf文件,内容如下:

dbpath=/opt/mongodb/dblogpath=/opt/mongodb/logs/mongodb.logport=27017fork=truenohttpinterface=true

执行结果如下:

测试

做完这一切之后,我们就可以启动MongoDB了,还是在bin目录下,执行./mongod -f mongodb.conf命令表示启动MongoDB,然后执行mongo命令表示表示进入到MongDB的控制台,进入到控制台之后,我们输入db.version()命令,如果能显示出当前MongoDB的版本号,说明安装成功了。如下:

默认情况下,连接地址是127.0.0.1:27017,连接的数据库是test数据库,我们也可以手动指定连接地址和连接的数据库:

mongo 127.0.0.1:27017/admin

此时连接成功之后,输入db命令,我们可以看到当前连接的数据库是admin。

配置开机启动

我们也可以配置开机启动,编辑/etc/rc.d/rc.local文件,如下:

配置完成之后自行关机重启测试。

配置环境变量

每次都要进入到安装目录中去输入命令,麻烦,我们直接配置环境变量即可,编辑当前用户目录下的.bash_profile文件,如下:

关闭MongoDB服务

使用db.shutdownServer();命令可以关闭到MongoDB服务,但是这个命令的执行要在admin数据库下,所以先切换到admin,再关闭服务,完整运行过程如下:

安全管理

上面我们所做的所有的操作都没有涉及到用户,我们在用Oracle、MySQL或者MSSQL时都有用户名密码需要登录才可以操作,MongoDB中当然也有,但是需要我们手动添加。在添加之前,我们先来说说MongoDB中用户管理的几个特点:

1.MongoDB中的账号是在某一个库里边进行设置的,我们在哪一个库里边进行设置,就要在哪一个库里边进行验证。
2.创建用户时,我们需要指定用户名、用户密码和用户角色,用户角色表示了该用户的权限。

OK,假设我给admin数据库创建一个用户,方式如下:

use admindb.createUser({user:"root",pwd:"123",roles:[{role:"userAdminAnyDatabase",db:"admin"}]})

user表示用户名,pwd表示密码,role表示角色,db表示这个用户应用在哪个数据库上。用户的角色,有如下几种:
1.Read:允许用户读取指定数据库
2.readWrite:允许用户读写指定数据库
3.dbAdmin:允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
4.userAdmin:允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
5.clusterAdmin:只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限
6.readAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读权限
7.readWriteAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的读写权限
8.userAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
9.dbAdminAnyDatabase:只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限
10.root:只在admin数据库中可用。超级账号,超级权限

用户创建成功之后,我们关闭掉当前MongoDB服务实例,然后重新启动新的实例,启动方式如下:

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

启动成功之后,如果我们直接执行如下命令,会提示没有权限:

show dbs

执行结果如下:

"errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }","code" : 13,"codeName" : "Unauthorized"

此时我们需要先进入到admin数据库中,然后授权,操作如下:

use admindb.auth("root","123")

auth方法执行结果返回1表示认证成功。然后再去执行show dbs就可以看到预期结果了。此时我再在sang库下创建一个只读用户,如下:

use sangdb.createUser({user:"readuser",pwd:"123",roles:[{role:"read",db:"sang"}]})

创建成功之后,再按照上面的流程进入到sang库中,使用readuser用户进行认证,认证成功之后一切我们就可以在sang库中执行查询操作了,步骤如下:

use sangdb.auth("readuser","123")

做完这两步之后再执行查询操作就没有任何问题了,但是此时如果执行插入操作会提示没有权限,那我们可以创建一个有读写功能的用户执行相应的操作,这里就不再赘述。

"Linux上怎么安装MongoDB"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

用户 数据 数据库 权限 命令 成功 文件 目录 配置 管理 结果 角色 服务 内容 地址 密码 环境 认证 输入 函数 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 博彦科技互联网金融 上海睿民互联网科技有限公司 广州淘业互联网络科技 互联网科技财经 互联网科技有限公司图片 科技企业和互联网企业 互联网科技公司官网 善班互联网科技有限公司 万达互联网科技 广州紫鲸互联网科技 成都玖崟互联网科技有限公司乐商圈怎么样 哈尔滨新华互联网科技学院 成都互联网科技公司100强 贵州叶脉互联网科技有限公司所属行业 港股科技和互联网 花神(南京)互联网科技有限公司 为客找房互联网科技公司怎么样 美国互联网科技实力 第三届互联网大会安防黑科技 互联网科技大会大佬 百单网互联网科技有限公司怎么样 广州淘业互联网络科技 有马互联网科技 长亮科技 互联网金融 富国互联网科技创新基金 重庆威客帮互联网科技 哈尔滨屹滨互联网科技有限公司 工业互联网科技创业 昆明中奇联合互联网科技 互联网科技机房
0