轉載請表明出處 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工具連接
- Robo 3T
官網下載
常用命令
- 顯示數據庫
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(條件)