突然间需要使用这个东西了,调试还遇到了问题,所以还是简单了解一下他吧。
一、mongodb的开启和关闭
1. 查找mongod是否可用
which mongod
2. 启动mongodb
指定path 和log日志mongod --dbpath /data2/db --port=27017 --fork /data2/db/log/mongod.log
3. 关闭数据库
mongod --shutdown
二、mongodb的操作
1. 连接服务器
mongod 115.29.137.34:27017
2. 使用数据库
(不存在的数据库也可以使用,插入数据之后会自动保存)use mydb
3. 权限登陆
db.auth('username','password')
4. 展示数据库列表
show dbs
5. 插入数据
(类似于mysql的表)db.users.insert({'name':'xiaomo'})
db.users.insert({'name':'xiaoming','age':25})
db.users.insert({'name':'xiaoming','age':24,'sex':'女'})
6. 查询集合
(前提是use了一个数据库)
有一个System.indexes 是索引show collections
7. 不带条件查询
db.users.find()
8. 带条件查询
(参数是一个对象)db.users.find({'name':'xiaomo'})
9. 更新数据
(有三个参数,1:查询条件,2:更新的内容 3:更新的配置)db.users.update({'name':'xiaomo',{$set:{'name:'xm}})
修改满足条件的第一条数据db.users.update({'name':'xiaomo',{$set:{'name:'xm}},{multi:true})
修改所有满足条件的数据
10. 保存数据
(只有一个参数,必须要传id,后面是要修改的数据)db.users.save({'id':'objectId(574710a97a3afd63cde56a49)','age':30})
11. 删除数据
(1:条件 2 是否删除所有符合条件的)db.users.remove({'name':'xiaomoing'},true)
12. 删除集合
db.users.drop()
三、使用mongoose操作数据库
1. 模块的介绍
连接mongdodb的驱动
2. 配置和链接
npm install --save mongoose
1
2
3
4var mongoose = require('mongoose');
<!-- var uri = 'mongodb://username:password@hostname:port/databasename'; -->
var uri = 'mongodb://xiaomo:xiaomo@115.29.137.34:27017/admin';
mongoose.connect(uri);
3. Model 和Shema
1 | // model.js |
4. 创建文档
1 | //insert.js |
5. 删除文档
1 | var mongoose = require('mongoose'); |
6. 简单查询
1 | var mongoose = require('mongoose'); |
第一个满足条件的结果1
2
3
4
5
6
7
8
9
10var mongoose = require('mongoose');
require('./model.js');
var Blog = mongoose.model('blog');
Blog.findOne({'name':'xiaomo'},function(err,doc){
if(err){
console.log(err)
return;
}
console.log('result',doc)
})
7. 条件语句
1 | // condation.js |
三、在项目中使用mongoose
1. 生成项目
koa koatest -e koatest
2. 安装依赖
cd koatest && npm install
3. 安装mongoose
npm install --save mongoose
4. 创建模型
1 | // models/users.server.model.js |
5. 创建配置文件
1 | // config/config.js |
6. 操作mongdodb 代码
1 | //routers/users.js |
嗯嗯,就这样吧,完!