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 即可。