建立容器
# 拉取映象
docker pull mongo
# 建立容器
# 定義容器名稱 --name my-mongo
# 宿主機埠 27018 與容器埠 27017 對映繫結 -p 27018:27017
# -d 後臺執行容器,並返回容器id
# 如果加需要驗證就加--auth,不需要驗證,就去掉。預設mongodb是不使用使用者認證
docker run --name my-mongo -p 27018:27017 -d mongo --auth
進入容器
docker exec -it 容器id /bin/bash
mongo
use admin
db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]}) //建立使用者,此使用者建立成功,則後續操作都需要使用者認證
exit
或者直接進入admin
docker exec -it ly-mongo mongo admin
db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]}) //建立使用者,此使用者建立成功,則後續操作都需要使用者認證
exit
測試
# 在容器中執行
# mongo 宿主機ip/admin -uroot -p
root@ae8c7278eab6:/# mongo 192.168.136.148:27018/admin -uroot -p
MongoDB shell version v4.4.5
Enter password:
輸入之前設定的密碼 root
哦了,測試環境就這樣了,可以開始練習mongodb的相關命令了
在學習mongodb之前相關的概念有必要理解以下,畢竟在mongodb中沒有表這個概念
SQL術語/概念 | MongoDB術語/概念 | 解釋/說明 |
---|---|---|
database | database | 資料庫 |
table | collection | 資料庫表/集合 |
row | document | 資料記錄行/文件 |
column | field | 資料欄位/域 |
index | index | 索引 |
table joins | 表連線,MongoDB不支援 | |
primary key | primary key | 主鍵,MongoDB自動將_id欄位設定為主鍵 |
相關操作命令
# 選擇(建立)資料庫,在資料庫沒有資料之前並沒有實際建立資料庫
use test_db
# 顯示資料庫列表
show dbs
# 建立集合,集合名 user
db.createCollection('user')
# 在集合中新增文件,即新增了個 json 資料 {'ab':'xyz'}
db.user.insert({'ab':'xyz'})
# 新增多個文件
db.user.insert([{'ab':'xyz'},{'11':'22'}])
# 查詢文件,查詢 欄位 ab=xyz 的文件
db.user.find({'ab':'xyz'})
相關事項
…
筆記就先寫到這裡,還在學習中,日後再更新
相關連結
本作品採用《CC 協議》,轉載必須註明作者和本文連結