Linux中使用Docker安装MongoDB

转载请表明出处 https://blog.csdn.net/Amor_Leo/article/details/85858145 谢谢

安装MongoDB

拉取镜像

docker pull mongo

创建文件夹

mkdir -p /usr/local/mongodb/datadb
chmod 777 /usr/local/mongodb/datadb  

放行端口号

firewall-cmd --zone=public --add-port=27017/tcp --permanent
firewall-cmd --reload

创建并启动容器

不指定用户名和密码

docker run -d --name mongo -v /usr/local/mongodb/datadb:/data/db -p 27017:27017 --privileged=true mongo

连接

  • 使用命令行
     docker exec -it mongo bash
     mongo  admin
    
  • 创建root账户
    use admin
    db.createUser(
    {
    user: "root",
    pwd: "root",
    roles: [ { role: "root", db: "admin" } ]
    }
    );
    
  • 退出重新连接
    exit
    docker exec -it mongo bash
    mongo -u root -p root admin
    
  • 如果要为某个数据库创建普通用户
    use test
    db.createUser(
    {
    user: "testuser",
    pwd: "password",
    roles: [
    { role: "readWrite", db: "test" }
    ]
    }
    );
    
    exit
    
    mongo -u testuser -p password --authenticationDatabase test
    

指定用户名和密码

docker run -d --name mongo -v /usr/local/mongodb/datadb:/data/db -p 27017:27017 -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=root  --privileged=true mongo

连接

  • 使用命令行
    docker exec -it mongo bash
    mongo -u root -p root admin
    
  • 如果要为某个数据库创建普通用户
    use test
    db.createUser(
    {
    user: "testuser",
    pwd: "password",
    roles: [
    { role: "readWrite", db: "test" }
    ]
    }
    );
    
    exit
    
    mongo -u testuser -p password --authenticationDatabase test (以刚创建的test用户登录)
    

使用GUI工具连接

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

常用命令

  • 显示数据库
show dbs 
  • 选择和创建数据库(如果数据库不存在则自动创建)
use  数据库名称
  • 显示表(集合)
show collections
  • 插入文档
db.集合名称.insert(数据)
  • 查看表(集合)下的文档数据
db.集合名称.find()
  • 按条件查询(参数为json)
db.集合名称.find(参数)
  • 返回符合条件的第一条数据(参数为json)
db.集合名称.findOne(参数)
  • 返回指定条数的记录
db.集合名称.find().limit(条数)
  • 修改文档(条件和修改后的数据为json)
db.集合名称.update(条件,{$set:修改后的数据})
  • 删除文档(条件为json)
db.集合名称.remove(条件)
  • 删除全部文档,请慎用
db.集合名称.remove({})
  • 统计条数
db.集合名称.count()
  • 按条件统计条数(条件为json)
db.集合名称.count(条件)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章