“MongoDB”的版本间的差异
来自Blueidea
小 (→Windows 中安装MongoDB) |
|||
| (未显示同一用户的4个中间版本) | |||
| 第1行: | 第1行: | ||
| − | <p style="background:#a00;color:#fff;"> | + | <p style="background:#a00;color:#fff;">此页尚待完成,或有瑕疵,请量力改善。</p> |
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 | MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。 | ||
| 第13行: | 第13行: | ||
*sudo apt-get install mongodb-10gen | *sudo apt-get install mongodb-10gen | ||
| + | |||
| + | 推荐安装Mongoose,这样nodeJS就能更加方便的操作数据库。 | ||
| + | |||
| + | ===Install Mongoose=== | ||
| + | |||
| + | 首先安装npm:https://github.com/isaacs/npm | ||
| + | |||
| + | 然后:npm install mongoose | ||
| + | |||
| + | 示例请看:http://www.csser.com/dev/469.html | ||
| 第26行: | 第36行: | ||
而后,可以通过命令行 net start MongoDB 来启动服务。 | 而后,可以通过命令行 net start MongoDB 来启动服务。 | ||
| + | |||
| + | |||
| + | ==NodeJS中利用Mongoose操作MongoDB== | ||
| + | |||
| + | ==Install NodeJS== | ||
| + | |||
| + | http://apptob.org/ | ||
| + | |||
| + | |||
| + | 前提:须安装Mongoose以便使用下方示例。 | ||
| + | |||
| + | 参考了来自 http://www.csser.com/ 的文章。 | ||
| + | |||
| + | <source lang="bash"> | ||
| + | var http = require('http'); | ||
| + | var mongoose = require('mongoose'); | ||
| + | var Schema = mongoose.Schema, | ||
| + | ObjectId = Schema.ObjectId; | ||
| + | mongoose.connect('mongodb://127.0.0.1:27017/test'); | ||
| + | http.createServer( | ||
| + | function (req, res) { | ||
| + | /* | ||
| + | * createServer方法需要一个回调函数,由于NodeJS基于事件驱动,因此回调函数会调用多次。 | ||
| + | * 这里选择在end事件中进行数据写入,当然这不是必须的。 | ||
| + | * http://nodejs.org/docs/latest/api/http.html#http.Server | ||
| + | */ | ||
| + | req.on('end', function() { | ||
| + | var Comments = new Schema({ | ||
| + | title : String, | ||
| + | body : String, | ||
| + | date : Date | ||
| + | }); | ||
| + | var BlogPost = new Schema({ | ||
| + | author : ObjectId , | ||
| + | title : String, | ||
| + | body : String, | ||
| + | date : Date, | ||
| + | comments : [Comments] | ||
| + | }); | ||
| + | //创建模型 | ||
| + | var BlogPost = mongoose.model('BlogPost', BlogPost); | ||
| + | //根据模型产生一个实例 | ||
| + | var post = new BlogPost(); | ||
| + | |||
| + | //填充数据 | ||
| + | post.title = "第一篇Blog"; | ||
| + | post.body="Hello MongoDB!"; | ||
| + | post.date=new Date(); | ||
| + | |||
| + | //插入评论 | ||
| + | post.comments.push({ title: '第一条回复' }); | ||
| + | |||
| + | //Save | ||
| + | post.save(function (err) { | ||
| + | if (!err) console.log('保存成功!'); | ||
| + | }); | ||
| + | res.writeHead(200, {'Content-Type': 'text/html'}); | ||
| + | res.end('<h1>Hello MongoDB\n</h1>'); | ||
| + | }); | ||
| + | }).listen(1337, "127.0.0.1"); | ||
| + | </source> | ||
2011-09-29T09:05:22的最后版本
此页尚待完成,或有瑕疵,请量力改善。
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
目录
Ubuntu中安装MongoDB
环境:Ubuntu 11.04
- sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
- sudo vim '/etc/apt/sources.list'
- 添加:deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen
- sudo apt-get update
- sudo apt-get install mongodb-10gen
推荐安装Mongoose,这样nodeJS就能更加方便的操作数据库。
Install Mongoose
首先安装npm:https://github.com/isaacs/npm
然后:npm install mongoose
示例请看:http://www.csser.com/dev/469.html
Windows 环境中启动
首先在官网下载对应压缩包,解压到本地某个目录。
进入bin目录,执行:
mongod --logpath E:\log.txt --logappend --dbpath E:\data\db --serviceName MongoDB --install
目录按需要自行设置。需要注意的是,logpath参数需要指定一个文件,而不是目录。
而后,可以通过命令行 net start MongoDB 来启动服务。
NodeJS中利用Mongoose操作MongoDB
Install NodeJS
前提:须安装Mongoose以便使用下方示例。
参考了来自 http://www.csser.com/ 的文章。
var http = require('http'); var mongoose = require('mongoose'); var Schema = mongoose.Schema, ObjectId = Schema.ObjectId; mongoose.connect('mongodb://127.0.0.1:27017/test'); http.createServer( function (req, res) { /* * createServer方法需要一个回调函数,由于NodeJS基于事件驱动,因此回调函数会调用多次。 * 这里选择在end事件中进行数据写入,当然这不是必须的。 * http://nodejs.org/docs/latest/api/http.html#http.Server */ req.on('end', function() { var Comments = new Schema({ title : String, body : String, date : Date }); var BlogPost = new Schema({ author : ObjectId , title : String, body : String, date : Date, comments : [Comments] }); //创建模型 var BlogPost = mongoose.model('BlogPost', BlogPost); //根据模型产生一个实例 var post = new BlogPost(); //填充数据 post.title = "第一篇Blog"; post.body="Hello MongoDB!"; post.date=new Date(); //插入评论 post.comments.push({ title: '第一条回复' }); //Save post.save(function (err) { if (!err) console.log('保存成功!'); }); res.writeHead(200, {'Content-Type': 'text/html'}); res.end('<h1>Hello MongoDB\n</h1>'); }); }).listen(1337, "127.0.0.1");