乐趣区

Docker安装MongoDB

Docker 安装 MongoDB

查询 mongo 镜像
docker search mongo

拉取镜像
docker pull mongo

运行容器
docker run –name mongodb -p 27017:27017 -v $PWD/db:/data/db -d mongo:latest

1. 以 admin 用户身份进入 mongo:

docker exec -it  mongodb  mongo admin

2. 创建一个 admin 管理员账号:

db.createUser({user: 'admin', pwd: 'admin123456', roles: [ { role: "userAdminAnyDatabase", db: "admin"} ] });

3. 对 admin 用户 进行身份认证

db.auth("admin","admin123456");

4. 创建 用户、密码和数据库

用户 zero
密码 123456
数据库 app

db.createUser({user: 'zero', pwd: '123456', roles: [ { role: "readWrite", db: "app"} ] });

5. 对 zero 进行身份认证

db.auth("zero","123456");

6. 切换数据库

use app

7. 添加数据

向表 test 中添加数据

db.test.save({name:"zhangsan"});

8. 查询数据

db.test.find();

db.test.find();
{“_id” : ObjectId(“5d842b0a1aca998e6e302344”), “name” : null }
{“_id” : ObjectId(“5d84438a5e2a61d3c2138bc7”), “name” : “zhangsan”, “type” : “T” }
{“_id” : ObjectId(“5d84438e5e2a61d3c2138bc8”), “name” : “zhangsan”, “type” : “F” }
{“_id” : ObjectId(“5d8443945e2a61d3c2138bc9”), “name” : “one”, “type” : “F” }
{“_id” : ObjectId(“5d8443aa5e2a61d3c2138bca”), “name” : “two”, “type” : “F” }
{“_id” : ObjectId(“5d8443be5e2a61d3c2138bcb”), “name” : “two”, “code” : “A” }
{“_id” : ObjectId(“5d845421729e8c43bc60fe49”), “_class” : “com.zero.nosql.pojo.Customer” }
{“_id” : ObjectId(“5d8454f0729e8c2ea0115de2”), “name” : “name”, “code” : “CODE”, “_class” : “com.zero.nosql.pojo.Customer” }

常用命令

https://www.cnblogs.com/zhy-1992/p/6856062.html
show collections        显示数据库下所有集合

异常情况

mongodb shell 不能使用退格键的问题解决方案

在 redhat linux 下安装了 mongodb,使用 SecureCRT 连接 linux 后,使用 mongo 来操作 mongodb,在 shell 使用退格键时出现乱七八糟的字符,造成这个问题原因跟 SecureCRT 配置有关,修改设置为:选项 –> 会话选项 –> 终端 –> 仿真 –> 终端中选择 linux 即可。
退出移动版