Linux配置MongoDB4.0

MongoDB 提供了 linux 各发行版本 64 位的安装包,你可以在官网下载安装包。
官网下载: https://www.mongodb.com/download-center/community在这里插入图片描述
下载完安装包,并解压 tgz(以下演示的是 64 位 Linux上的安装) 。

curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.4.tgz    # 下载
tar -zxvf mongodb-linux-x86_64-rhel70-4.0.4.tgz    # 解压
mv  mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb       # 将解压包拷贝到指定目录

配置环境变量

vi /etc/profile
增加
export MONGODB_HOME=/usr/local/mongodb/mongodb-linux-x86_64-rhel70-4.0.4                                                                        
export PATH=$PATH:$MONGODB_HOME/bin

刷新配置

source /etc/profile

新建配置相关文件

mongodb-linux-x86_64-rhel70-4.0.4目录下

mkdir -p /logs
mkdir -p /data/db
touch /bin/mongod.conf

修改配置文件

# mongod.conf
# for documentation of all options,see:
# http://docs.mongodb.org/manual/reference/configuration-options/
# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /usr/local/mongodb/mongodb-linux-x86_64-rhel70-4.0.4/logs/mongodb.log

# where and how to store data.
storage:
  dbPath: /usr/local/mongodb/mongodb-linux-x86_64-rhel70-4.0.4/data/db
  journal:
    enabled: true

# how the process runs
processManagement:
  fork: true
  
etwork interfaces
    net:
        port: 27017
        bindIp: 127.0.0.1

将bind_ip改为0.0.0.0 (让其他电脑可以访问,用于远程连接,如果bind_ip是127.0.0.1的话,就只能本地访问)

启动

./mongod -f mongodb.conf 或
./bin/mongod --config conf/mongod.conf

创建用户并连接

./mongo    #进入命令行
> show dbs     #查询库
admin    0.000GB
config   0.000GB
local    0.000GB

先创建管理员

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

在mongod.conf文件中加上

#登录认证
 security:
        authorization: enabled

接下来,进入数据库 需要认证

> use admin
switched to db admin
> db.auth('admin','admin')   #认证权限
1
> show dbs
admin    0.000GB
config   0.000GB
local    0.000GB

遇到的问题

1.中间远程连接一直连不上,timed out
在这里插入图片描述
(1)、mongodb的配置文件中的bind_ip 默认为127.0.0.1,默认只有本机可以连接。 此时,需要将bind_ip配置为0.0.0.0,表示接受任何IP的连接。
(2)、防火墙阻止了27017端口。
2.没有连接的权限
在这里插入图片描述
(1).root 角色和admin库是不能对外连接的,所以创建新的库和针对库需要新建用户

> use dev    #创建dev库
switched to db dev
> db.auth('admin','admin')   #认证权限
> db.createUser({user: "dev",pwd: "dev",roles: [ { role: "userAdmin", db: "dev" } ]})

之后可以用dev用户连接
3.没有修改添加的权限

db.grantRolesToUser( 'dev', [{ role:'readWrite', db:'dev'}])

参考文献

https://blog.csdn.net/hwm_life/article/details/82317750
http://www.runoob.com/mongodb/mongodb-linux-install.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值