ICE.ICE|

韩憨

园龄:4年7个月粉丝:42关注:47

MongoDB学习 - 安装部署

1. docker 启动

拉取镜像 docker pull mongo:latest

指定目录启动  docker run -d -p 27017:27017 --name mongo \
-v /home/mongodb/data/mongodb:/data/db \
-e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=admindev123$%^ mongo:latest

2. 安装包安装

2.1官方下载地址 https://www.mongodb.com/download-center/community

上传服务器解压   tar -zxvf ************.tgz

移到到指定目录,自己看情况   /usr/local/mongodb

2.2 配置conf与目录

      cd /usr/local/mongodb

      创建db目录和日志文件 

      mkdir  /data/db   /logs   

      touch  /logs/mongodb.log

      创建mongodb.conf 文件

  vi mongodb.conf

#端口号
port=27017
#db目录
dbpath=/usr/local/mongodb/data/db
#日志目录
logpath=//usr/local/mongodb/logs/mongodb.log
#后台
fork=true
#日志输出
logappend=true
#允许远程IP连接
bind_ip=0.0.0.0

2.3 启动

  ./bin/mongod --config mongodb.conf

       连接

       ./bin/mongo

       测试一下

2.4 配置开机自启动

 cd /lib/systemd/system

 vi mongodb.service

  [Unit]
  Description=mongodb
  After=network.target remote-fs.target nss-lookup.target

  [Service]
  Type=forking
  ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf
  ExecReload=/bin/kill -s HUP $MAINPID
  ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/mongodb.conf
  PrivateTmp=true

  [Install]
  WantedBy=multi-user.target

 

     然后设置mongodb.service权限

     chmod +x mongodb.service

 

     #启动服务

     systemctl start mongodb.service    

     #停止服务

     systemctl stop mongodb.service

     #添加开机自启动

     systemctl enable mongodb.service

     #重启服务

     systemctl restart mongodb.service

  2.5 配置环境变量

  1、直接用export命令:
     export PATH=$PATH:/usr/local/mongodb/bin


     2、修改profile文件:
     cat >>/etc/profile<<"EOF"
     export PATH="$PATH:/usr/local/mongodb/bin"

     EOF

     #刷新profile文件:

     source  /etc/profile


     3、 修改.bashrc文件:

     cat >>/root/.bashrc<<"EOF"
     export PATH="$PATH:/usr/local/mongodb/bin"

     EOF


     上述三步依次执行完毕,环境变量配置完成!!!!

      重启服务器,输入mongo 回车就有了。。。。。

3 创建用户

#进入mongoDb容器,创建管理员
docker exec -it mongoDb bash
#进入mongoDb
mongo
> use admin
switched to db admin
> db.createUser({user:"admin",pwd:"admin",roles:[{role:"root",db:"admin"}]});
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "root",
"db" : "admin"
}
]
}
#出现创建成功提示就对了,退出管理员
> exit;
#用刚创建的管理用户登录在创建个普通用户
mongo --port 27017 -u admin -p admin --authenticationDatabase admin
> use test
switched to db test
> db.createUser({user:"tester",pwd:"tester",roles:[{role:"readWrite",db:"test"}]});
Successfully added user: {
"user" : "tester",
"roles" : [
{
"role" : "readWrite",
"db" : "test"
}
]
}
> exit

 

 

使用新建的test库,就需要在新建的test库下面创建一个用户,amdin也不行,admin只能在原始存在的库可以
比如新建一个test
需要在test下面创建一个用户

db.createUser(
{
user: "root",
pwd: "admindev123$%^",
roles: ["readWrite"]
}
)

返回1显示1则成功

 

 mongoDb用户角色权限说明

  • 数据库用户角色 read、readWrite
  • 数据库管理角色 dbAdmin、dbOwner、userAdmin
  • 集群管理角色 clusterAdmin、clusterManager、clusterMonitor、 hostManager
  • 备份恢复角色 backup、restore
  • 所有数据库角色 readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、dbAdminAnyDatabase
  • 超级用户角色 root
  • 内部角色 __system

角色说明

  • Read 允许用户读取指定数据库
  • readWrite 允许用户读写指定数据库
  • dbAdmin 允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile
  • userAdmin 允许用户向system.users集合写入,可以找指定数据库里创建、删除和管理用户
  • clusterAdmin 只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。
  • readAnyDatabase 只在admin数据库中可用,赋予用户所有数据库的读权限
  • readWriteAnyDatabase 只在admin数据库中可用,赋予用户所有数据库的读写权限
  • userAdminAnyDatabase 只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
  • dbAdminAnyDatabase 只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。
  • root 只在admin数据库中可用。超级账号,超级权限

 

删除用户:

db.dropUser(<user_name>)    删除某个用户,接受字符串参数

示例:db.dropUser(“admin”)

db.dropAllUser()             删除当前库的所有用户

本文作者:韩憨

本文链接:https://www.cnblogs.com/hanby/p/15182592.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   韩憨  阅读(55)  评论(0编辑  收藏  举报
//看板娘

剑桥

评论
收藏
关注
推荐
深色
回顶
收起
  1. 1 隔离 (Studio Live Duet) 陈凯咏,林家谦
  2. 2 明知做戏 吴雨霏
  3. 3 残酷游戏 卫兰
  4. 4 你,好不好? 周兴哲
  5. 5 我可以 蔡旻佑
  6. 6 云烟成雨 房东的猫
  7. 7 说散就散 JC 陈咏桐
  8. 8 我配不上你 夏天Alex
  9. 9 不再联系 夏天Alex
  10. 10 等我先说 夏天Alex
  11. 11 我知道他爱你 夏天Alex
  12. 12 多想在平庸的生活拥抱你 隔壁老樊
  13. 13 这一生关于你的风景 隔壁老樊
  14. 14 我曾 隔壁老樊
  15. 15 关于孤独我想说的话 隔壁老樊
  16. 16 过客 周思涵
  17. 17 备爱 周思涵
  18. 18 嚣张 en
  19. 19 海口 后弦
明知做戏 - 吴雨霏
00:00 / 00:00
An audio error has occurred, player will skip forward in 2 seconds.

作词 : Xia Zhi

作曲 : Fong Man Leung

编曲 : 吴国恩

监制 : Gary Chan

等你的汽水喝一半给你加片薄冰

等你的桌面满泻我总会打理重整

不想纯情 不够聪明

你未发现我的身影

得我帮你依照编码整理家里电影

得我帮你依照编码整理家里电影

只会得我一个帮你选购喜爱铃声

天天如常 估你心情

等一个眼神求证 一闪擦过如流星

怎么我为我做过的感到惊怕

就像爱吗我也不肯定恐怕

我以为存在吗 千变万化

从来不肯开口可相信吗 离谱吗

请你不要阻我喜欢你

明明是爱但你未说话你扮作闪避

这个沉默冷静的你毫无办法处理

其实我亦怕是错摸心理

总有天会等到好天气

游行示爱大叫着你在某大片草地

等你无用退避不过仍然害羞的你

还是顾忌太不争气 明知做戏

即使你未太在意不感到惊讶

即使你未太在意不感到惊讶

现在要说爱你请准备招架

勇气还存在吗 不要害怕

随时真的胆敢亲手送花 离谱吗

请你不要阻我喜欢你

明明是爱但你未说话你扮作闪避

这个沉默冷静的你亳无办法处理

其实我亦怕是错摸心理

总有天会等到好天气

游行示爱大叫着你在某大片草地

等你无用退避不过仍然害羞的你

还是顾忌太不争气 明知做戏

不过不要阻我紧张你

如何令你愉快让我办妥为你准备

喜爱沉默冷静的你还是自信的你

仍愿意为你造一些惊喜

总有天会等到好天气

游行示爱大叫着你在某大片草地

等你无用退避不过途人目光不理

期待贴着你的手臂 无须做戏

等你喜爱等你不爱就凭摘毫验证

等你喜爱等你不爱就凭摘毫验证

想爱不爱偏爱不理亦同样难划清

天天如常 估你心情

不想扑索来求证 争取过趁还年青

终于你下决定来答应 太动听

点击右上角即可分享
微信分享提示