头图
by emanjusaka from https://www.emanjusaka.top/2024/01/docker-create-mongo-db 彼岸花开可奈何
本文欢迎分享与聚合,全文转载请留下原文地址。

Docker 安装命令

docker run -d --name mongo --restart=always --privileged=true -p 27017:27017 -v /opt/doc/data:/data/db mongo --auth

-d 后台运行

--restart=always 自动重新启动

--privileged 允许容器以特权模式运行

-v /opt/doc/data:/data/db 数据挂载

-p 27017:27017 端口挂载

--auth 启用了身份验证

连接 MongoDB

  • 进入容器中
  • 第一次连接不需要密码,执行mongosh连接数据库
  • 创建管理员

    use admin;
    db.createUser({user:'root',pwd:'emanjusaka',roles:["root"]});
  • 创建数据库 doc 并添加用户

    db.auth('root','emanjusaka');
    use doc;
    db.createUser({user:"doc",pwd:"emanjusaka",roles:[{role:"readWrite",db:"doc"}]});

数据库备份

mongodump  -udoc -pemanjusaka --port 27017 --authenticationDatabase doc -o /doc/

-udoc 用户名

-pemanjusaka 密码

--port 27017 默认的端口号

--authenticationDatabase 指定要使用认证的数据库

-o /doc/ 指定备份文件的输出目录

数据库恢复

mongorestore  -udoc -pemanjusaka --port 27017 --authenticationDatabase doc -d doc --drop /doc/

-udoc 用户名

-pemanjusaka 密码

--port 27017 默认的端口号

--authenticationDatabase 指定要使用认证的数据库

-d doc 指定要恢复到的数据库名称

--drop 在恢复之前删除目标数据库中的所有数据

/doc/ 指定备份文件的路径

本文原创,才疏学浅,如有纰漏,欢迎指正。如果本文对您有所帮助,欢迎点赞,并期待您的反馈交流,共同成长。
原文地址: https://www.emanjusaka.top/2024/01/docker-create-mongo-db
微信公众号:emanjusaka的编程栈

emanjusaka
4 声望0 粉丝