mongodb安装及账号密码设置

官网下载符合自己操作系统的mongodb

rpm -ivh mongodb-org-server-4.0.10-1.el7.x86_64.rpm  #服务端
rpm -ivh mongodb-org-shell-4.0.10-1.el7.x86_64.rpm   #命令行连接 mongoDB
#rpm -ivh mongodb-org-tools-4.0.10-1.el7.x86_64.rpm  #附加工具,例如数据导入导出
#rpm -ivh mongodb-org-mongos-4.0.10-1.el7.x86_64.rpm #部署集群

由于单机版mogodb即可满足要求,此处只需要安装前两个rpm包,

vi /etc/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: /var/log/mongodb/mongod.log

# Where and how to store data.
storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1  # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.


#security:

#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options

#auditLog:

#snmp:

修改后:

# 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: /data/mongodb/logs/mongod.log

# Where and how to store data.
storage:
  dbPath: /data/mongodb/data
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /data/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo

# network interfaces
net:
  port: 27017
 # bindIp: 127.0.0.1
  bindIp: 0.0.0.0
#,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.


#security:
security:
    authorization: enabled #注意缩进,参照其他的值来改,若是缩进不对可能导致后面服务不能重启

#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options

#auditLog:

#snmp:

此外还需要修改/usr/lib/systemd/system/mongod.service文件中的

PIDFile=/data/mongodb/mongod.pid   否则无法启动成功

systemctl daemon-reload
systemctl start mongod
systemctl enable mongod

启动mongodb:

mongo --port 27017

use命令用于创建数据库(如果没有该数据库,有的话直接进入该库),创建的库是平行等级的

切换到admin数据库:

>use admin

创建管理员账户并赋予权限(用于管理所有数据库):

> db.createUser({user:"admin",pwd:"1qaz#EDC",roles:[{role:"root", db:"admin"}]})
user:”用户名“,
pwd:"密码”,
roles:[{role:"角色名“, db:"角色所属数据库”}, {role:"角色名2“, db:"角色所属数据库2”},.....]

新增的用户在 db.system.users 中

> db.getCollectionNames()

[ "system.indexes", "system.users", "system.version" ]

验证用户是否创建成功:

> db.auth("admin","1qaz#EDC")
1
> exit

杀掉进程,重启mongoDB服务:

ps -ef | grep mongod

kill -9 pid

带认证模式开启Mongod:

mongod --auth --config /etc/mongod.conf

进入账户所属数据库,再认证

> use admin
switched to db admin
> db.auth("用户名","密码")
1
> show dbs
admin 0.000GB
config 0.000GB
local 0.000GB
#这样登陆成功了

在admin中添加数据库job_ret_err:
> use job_ret_err
switched to db job_ret_err
> db
runoob
>show dbs
可以看到,刚才创建的数据库job_ret_err不在数据库的列表中,要显示它,还需要向job_ret_err数据库插入一些数据

>db.job_ret_err.insert({"qwertyuiop":"json"})

>show dbs



---------------------------------------------------------------通过压缩包安装---------------------------------------------------------------------------------

https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.10.tgz
任意目录下解压,然后复制到/data/mongodb/目录下
mv /解压到的目录/mongodb-linux-x86_64-rhel70-4.0.10/* /data/mongodb

配置环境变量
vi /etc/profile    在文件的最后添加:
MONGODB_HOME=/data/mongodb
MONGODB_PATH=$PATH:$MONGODB_HOME/bin
export MONGODB_PATH
source /etc/profile         令环境变量立即生效
mkdir -p /data/mongodb/data
mkdir -p /data/mongodb/logs
touch /data/mongodb/mongodb.conf      创建配置文件
#####################mongodb.conf内容####################
port=27017 #端口  
dbpath=/data/mongodb/data #数据库存文件存放目录  
logpath=/data/mongodb/logs/mongodb.log #日志文件存放路径  
logappend=true #使用追加的方式写日志  
fork=true #以守护程序的方式启用,即在后台运行  
maxConns=100 #最大同时连接数  
auth=true #启用验证  
journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
storageEngine=wiredTiger  #存储引擎有mmapv1、wiretiger、mongorocks
bind_ip=0.0.0.0  #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB
##########################################################
mongod --config /data/mongodb/mongodb.conf     启动
mongod --config /data/mongodb/mongodb.conf --shutdown  关闭
创建用户与数据库等操作同上
-------------------------------------------------------------docker安装mongo----------------------------------------------------------------------------
docker pull 镜像仓库/mongo:标签
docker images查看镜像是否下载成功
docker run --name mongodb -v /data/mongodb/data:/data/db -p 27017:27017 -d public-docker-virtual.artnj.zte.com.cn/mongo:4.0.7 --auth                      以认证方式启动容器
docker exec -it c049b9096de1 mongo admin                   进入容器
db.createUser({ user: 'admin', pwd: '1qaz#EDC', roles: [{ role: "root", db: "admin" }]});    创建用户
db.auth("admin","1qaz#EDC")                      认证
exit
docker exec -it c049b9096de1 mongo admin      再次进入容器
mongo      进入mongo
use jobResult           创建集合
db          显示集合
show dbs   
db.jobResult({"logId":"redvfkcnwdore","res":"dvfkcneswfoiore"})

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值