前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CentOS7.4 安装mongodb

CentOS7.4 安装mongodb

作者头像
Lansonli
发布2021-10-09 10:31:08
7290
发布2021-10-09 10:31:08
举报
文章被收录于专栏:Lansonli技术博客

温馨提示:我的环境是腾讯云自带的CentOS7.4 x64 镜像,本地环境是win10 x64 专业版,ssh工具是用的win10 自带的cmd, 远程工具版本是Robo 3T 1.2.1 。 如果环境不一致,可能会出现无法预知的错误。

1、去官网找到安装包地址,复制下来。 官网地址:https://www.mongodb.com/download-center?jmp=nav#community 我使用的安装包地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz

2、使用SSH登录服务器,找一个文件夹存放安装包,我这里使用的是 /usr

代码语言:javascript
复制
$ cd /usr
$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.0.tgz

第一步是定位到/usr文件夹,第二步是下载安装包。

如图所示进度到100%时,就是下载完成了。

3、解压缩安装包,并重命名文件夹。

代码语言:javascript
复制
$ tar zxvf mongodb-linux-x86_64-4.0.0.tgz
$ mv mongodb-linux-x86_64-4.0.0 mongodb

第一步是解压缩,第二步是重命名,如图所示。

解压缩

重命名

4、配置环境变量

代码语言:javascript
复制
$ vim /etc/profile

在 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面添加如下内容:

代码语言:javascript
复制
#Set Mongodb
export PATH=/usr/mongodb/bin:$PATH

保存后通过下面的命令使环境变量生效:

代码语言:javascript
复制
$ cd ~
$ source /etc/profile

设置环境变量

5、创建数据库目录

代码语言:javascript
复制
$ cd /usr/mongodb
$ touch mongodb.conf
$ mkdir db
$ mkdir log
$ cd log
$ touch mongodb.log

6、修改mongodb配置文件。

代码语言:javascript
复制
vim /usr/mongodb/mongodb.conf

添加以下内容

代码语言:javascript
复制
port=27017 #端口
dbpath= /usr/mongodb/db #数据库存文件存放目录
logpath= /usr/mongodb/log/mongodb.log #日志文件存放路径
logappend=true #使用追加的方式写日志
fork=true #以守护进程的方式运行,创建服务器进程
maxConns=100 #最大同时连接数
noauth=true #不启用验证
journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
storageEngine=wiredTiger  #存储引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0  #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB

7、设置文件夹权限

代码语言:javascript
复制
$ cd /usr/mongodb
$ chmod 777 db
$ chmod 777 log

8、启动mongodb

代码语言:javascript
复制
$ cd ~
$ mongod --config /usr/mongodb/mongodb.conf
网友指正:最新版本mongodb已经将--config 修改为 -f (本人尚未尝试)

9、远程连接mongodb 官网下载robo 3t https://robomongo.org/download 安装完后配置。

点击creat

请原封不动填写

MongoDB之conf配置文件详解

切换到ssh选项卡

按图设置

点save保存

点连接

输入服务器的登录密码

连接成功

10、如何关闭数据库 查看pid

代码语言:javascript
复制
$ ps aux |grep mongodb

pid

代码语言:javascript
复制
$ sudo kill 5314

即可关闭数据库

2018年7月30日补充:

授权登录 在日常工作中我们不可能把数据库设置为免认证登录并暴露在公网下,所以我们需要为数据库添加用户名和密码,具体操作如下:(文章来自ChasenKaos,转发请注明。谢谢 原文:https://www.jianshu.com/p/994bc7b19b26

1、修改前文提到的conf文件,命令如下:

代码语言:javascript
复制
$ cd /usr/mongodb
$ vim mongodb.conf

打开后如图:

image.png

我们把noauth那一行,前面加上#,注释掉。 再在最后一行添加 auth = true 完整代码如下:

代码语言:javascript
复制
port=27017 #端口
dbpath= /usr/mongodb/db #数据库存文件存放目录
logpath= /usr/mongodb/log/mongodb.log #日志文件存放路径
logappend=true #使用追加的方式写日志
fork=true #以守护进程的方式运行,创建服务器进程
maxConns=100 #最大同时连接数
#noauth = true #不启用验证
journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
storageEngine=wiredTiger  #存储引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0  #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB
auth = true #用户认证

保存退出。

2、关闭数据库,前文已经提到了方法,我这里只做操作,如图:

image.png

3、启动数据库,请参照前文方法,如图:

image.png

插曲:在添加用户名之前应该先执行./mongo命令先打开mongodb数据库 来自网友@OldX_cea8

4、依次执行下列命令 添加用户名

代码语言:javascript
复制
//使用admin数据库
use admin

//给admin数据库添加管理员用户名和密码,用户名和密码请自行设置
db.createUser({user:"admin",pwd:"123456",roles:["root"]})

//验证是否成功,返回1则代表成功
db.auth("admin", "123456")

//切换到要设置的数据库,以test为例
use test

//为test创建用户,用户名和密码请自行设置。
db.createUser({user: "test", pwd: "123456", roles: [{ role: "dbOwner", db: "test" }]})

执行完后,ctrl + c结束shell,并通过关闭,打开进行重启数据库。

5、通过robo 3t连接。 connection标签页

connection标签页

authentication标签页

authentication标签页

ssh标签页

ssh标签页

点击save后,连接即可,如果出现报错,请核对自己输入的信息是否有误。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/07/20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 2018年7月30日补充:
相关产品与服务
云数据库 MongoDB
腾讯云数据库 MongoDB(TencentDB for MongoDB)是腾讯云基于全球广受欢迎的 MongoDB 打造的高性能 NoSQL 数据库,100%完全兼容 MongoDB 协议,支持跨文档事务,提供稳定丰富的监控管理,弹性可扩展、自动容灾,适用于文档型数据库场景,您无需自建灾备体系及控制管理系统。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档