大家好,前面跟大家分享了MongoDB数据库的介绍以及基本使用,下面继续跟大家分享一下如何使用 Docker 安装 MongoDB 数据库,关于 MongoDB 数据库的介绍和基础使用,大家可以参考:
MongoDB数据库基础指南
docker pull mongo:latest
等待镜像下载完成...
下载完成后,查看镜像。
依次执行下面命令:
# 创建一个名为/data/mongo/config的目录。-p选项表示如果父目录不存在,则同时创建父目录。 mkdir -p /data/mongo/config # 创建了一个名为/data/mongo/data的目录,用于存储 MongoDB 的数据。 mkdir -p /data/mongo/data # 创建了一个名为/data/mongo/logs的目录,用于存储 MongoDB 的日志文件。 mkdir -p /data/mongo/logs # 创建了一个空文件/data/mongo/config/mongod.conf。这个文件是 MongoDB 的配置文件。 touch /data/mongo/config/mongod.conf # 将/data/mongo目录的权限设置为 777,这意味着任何人都可以对该目录进行读、写和执行操作。 chmod 777 /data/mongo
使用 vi 或 vim 编辑器打开mongod.conf文件
vim /data/mongo/config/mongod.conf
在文件中添加以下内容(可以根据自己的需求进行调整):
# 数据库存储路径 dbpath=/data/mongo/data # 日志文件路径 logpath=/data/mongo/logs/mongod.log # 监听的端口 port=27017 # 允许所有的 IP 地址连接 bind_ip=0.0.0.0 # 启用日志记录 journal=true # 是否后台运行 fork=true # 启用身份验证 #auth=true
docker run -dit --name mongo \ -p 17017:27017 \ -v /data/mongo/config/mongod.conf:/etc/mongod.conf \ -v /data/mongo/data:/data/db \ -v /data/mongo/logs:/var/log/mongodb \ -e MONGO_INITDB_ROOT_USERNAME=admin \ -e MONGO_INITDB_ROOT_PASSWORD=123456 \ --restart=always \ mongo
命令解释:
执行完成后如下图:
查看容器运行状态:
此时,MongoDB数据库容器启动完成!
进入 mongo 容器内部:
# 如果MongoDB6.0及以上使用 docker exec -it mongo /bin/mongo # 如果是6.0以下的版本使用 docker exec -it mongo /bin/mongo
切换到 admin 库
use admin
执行数据库登录操作,否则后面执行命令会提示 MongoServerError[Unauthorized]: Command createUser requires authentication
# 使用创建容器时的用户名和密码 db.auth("admin","123456")
登录成功后,创建新用户 testuser
db.createUser( { user:"testuser", pwd:"123456", roles:[{role:"root",db:"admin"}] } );
创建完成后,尝试使用上面创建的新用户信息进行连接
db.auth('testuser','123456')
返回 { ok:1} 则说明连接成功。
1、更新用户角色,修改用户权限,不会覆盖原权限信息,只新增权限
db.updateUser("admin",{roles:[{role:"readWrite",db:"admin"}]})
2、更新用户密码
db.changeUserPassword("admin","123456")
3、删除用户
db.dropUser({'admin'})
4、查看所有用户
show users
打开 Navicat 新建数据库连接,选择MongoDB
填写配置信息
填写完成配置信息后,点击左下角“测试连接”按钮
提示连接成功,此时,在点击右下角“保存”按钮,即可保存连接配置,这样就可以通过Navicat去访问MongoDB数据库了。
上一篇:MySQL多表创建关联及操作