一、准备
1、linux虚机
2、ssh程序
二、mongodb安装
1、用ssh连上服务器
2、下载mongodb
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.9.tgz
3、解压并删除压缩包
tar -zxvf mongodb-linux-x86_64-rhel62-3.4.9.tgz
rm mongodb-linux-x86_64-rhel62-3.4.9.tgz 然后y回车
4、将解压完的文件夹里的内容移动到/usr/local/mongodb这个目录下,即下文所指的根目录
mv mongodb-linux-x86_64-rhel62-3.4.9/ /usr/local/mongodb
5、进入根目录,创建data、conf、log三个文件夹
mkdir data
mkdir log
mkdir conf
6、进入conf目录,创建数据库的启动配置文件
vim mongod.conf
在该文件内写入
port = 12345
dbpath = data
logpath =log/mongod.log
fork=true
输入:wq保存关闭
7、在根目录下指定mongod启动时的配置文件
bin/mongod -f conf/mongod.conf
如无异常,此时mongodb服务已启动
8、在根目录下连接数据库
bin/mongo 127.0.0.1:12345
三、mongodb基本操作
1、显示所有数据库
show dbs
2、进入数据库(如没有的话会隐式创建)
use test
3、插入文档,test_collection为集合名(如没有的话会隐式创建),{x:1}是插入的文档
db.test_collection.insert({x:1})
4、批量插入
for(i=0;i<100;i++)db.imooc_collection.insert({x:i})
5、显示所有集合
show collections
6,显示某集合所有文档
show tables
7、查询集合里的相关文档,find()不传参数默认查全部,skip(3)代表返回的结果过滤掉前3条,limit(2)表示只取2条数据,sort({x:1})对取到的数据进行x字段的排序,1为正序,-1为倒序
db.test_collection.find({x:1}).skip(3).limit(2).sort({x:1})
8、统计该查询条件下文档的数量
db.test_collection.find({x:1}).count()
9、更新文档,第一个参数进行文档查找,第二个参数对文档进行更新,第三个参数为true则在查找不存在时自动创建,第四个参数为true则进行多文档更新,默认false,只更新一条(该参数为true时必须使用$set标识符)。以下两例第一例整个文档更新,查询不到该文档时自动创建,只更新一个文档;第二例更新文档的某个字段,查询不到该文档时不自动创建,更新查询到的所有文档。
db.test_collection.update({x:1},{x:999},true)
db.test_collection.update({z:100},{$set:{y:999}},false,true)
10、文档删除,第一种必传参,会删除所有匹配的文档,第二种是清空该集合下所有文档。
db.test_collection.remove({x:1})
db.test_collection.drop()