mongodb 安裝+操作命令 筆記
阿新 • • 發佈:2018-12-17
mongodb筆記
安裝
Mac
brew install mongodb
Ubuntu
# 安裝
sudo apt-get install mongodb
啟動和關閉
啟動
- 服務啟動(
sudo apt-get install mongodb
安裝可以)
sudo service mongodb start
- 直接啟動(開發階段使用這種方案啟動)
sudo mongod
【注意事項】:
- 資料庫檔案找到引發的錯誤
Data directory /data/db not found., terminating
sudo mkdir /data
sudo mkdir /data/db
- 許可權不夠新增
sudo
- 可能虛擬機器的硬碟大小太小了,小到mongodb不允許你啟動
sudo mongod --smallfiles
啟動引數
--dbpath
資料庫檔案路徑 預設/data/db
--port
設定監聽埠 預設27017
--bind_ip
允許訪問的IP地址 預設127.0.0.1
=> 0.0.0.0
表示允許所有機器遠端訪問,但是【切忌注意】:上線版本千萬別這麼設定
--auth
啟動驗證模式(後續會講)
--config
指定配置檔案,把所有的相關配置都放到配置檔案中
關閉
- 服務關閉
sudo service mongodb stop
- 直接關閉
# 1. ctrl + C
# 2. 登入到mongodb中退出
use admin
db.shutdownServer()
# 3. kill 程序(不推薦使用,特別是線上的資料庫)
操作資料庫
利用客戶端進行登入
# 伺服器啟動,
sudo mongod
# 進行客戶端登入
mongo
資料庫操作
列出資料庫
show dbs/databases
建立資料庫
use 資料庫
// 插入資料即可建立
刪除資料庫
use 資料庫
db.dropDatabase()
資料表操作(table => collection)
顯示資料庫中的集合列表
show collections
建立集合
// 1. 插入資料即建立
db. 集合名稱.insert({"a":"b"})
// 2. 建立集合不建立資料
db.createCollection('mycoll')
刪除集合
db.集合名稱.drop()
集合重新命名
db.集合名稱.renameCollection('新的集合名稱')
資料庫表中資料操作(collection中資料操作)
增
// mongodb內部的指令碼是一套 類似於語法 javascript引擎
// 單條資料插入
db.mycoll.insert(
{
"a":5,
"b":"abc",
"c":['q','w','e'],
"d":{
"h":"u"
}
}
)
// 多條資料插入
data = [
{"x":"b"},
{"y":"d"}
]
db.集合名.insertMany(data)
改
【注意】,預設更新是整體更新,區域性更新使用
$set
,預設更新只更新一條,如果要批量更新就新增第三個引數{multi:true}
// 整體更新
db.stu.update(
// 更新條件
{
"hometown":"蒙古"
},
// 更新內容
{
"name":"江蘇"
}
)
// 區域性更新
db.stu.update(
// 更新條件
{
"hometown":"桃花島"
},
// 更新內容
{
$set:{
"name":"鹽城"
}
}
)
// 批量更新
db.stu.update(
// 更新條件
{
"age":18
},
// 更新內容
{
$set:{
"name":"py"
}
},
// 更新方式
{
multi:true
}
)
刪
// 通過刪除條件進行刪除
db.stu.remove(
// 刪除條件
{
age:18
},
// 刪除方式
{
justOne:true
}
)
// 清空資料
db.stu.remove({})
儲存
按照
_id
欄位進行判定,如果存在就進行更新,如果不存在就插入
db.stu.save(
{
"_id":6,
"a":5,
"b":7
}
)
查
// 基本查詢
db.集合名.find()