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
创建集合
db
.集合名称
.insert({"a":"b"})
db
.createCollection('mycoll')
删除集合
db
.集合名称
.drop()
集合重命名
db
.集合名称
.renameCollection('新的集合名称')
数据库表中数据操作(collection中数据操作)
增
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()