日期:2014-05-16  浏览次数:20439 次

mongoDB windows安装(已测试成功)
mongodb 主页 http://www.mongodb.org/



1:下载http://www.mongodb.org/display/DOCS/Downloads 选择你要下载的版本

    (我下载的是1.6.3版本 Windows 32bit)

    > 解压软件包,你会看到解压后的文件夹中有个BIN目录,进去之后会看到很多.exe可执行文件,只用关注两个即可(mongod.exe,mongo.exe)

       mongod.exe //mongodb的服务器端,运行该执行文件可以设置mongodb的端口号,数据文件存储目录等

       mongo.exe   //mongodb的客户端,用来连接mongodb并进行相关数据的查询



2.部署,假如我压缩包解压的位置为 d:\program files\mongodb\

   > 创建一个存放数据库文件的文件夹 我是放到E盘data文件夹,路径e:\data

      设置存放数据库文件的路径

      进入 cmd 提示符控制台

      cd d:\program files\mongodb\bin>

      mongod.exe --dbpath e:\data

      (这个cmd不要关了!)



3:新打开一个CMD输入:cd d:\mongodb\bin>mongo.exe,如果出现下面提示,恭喜你安装成功了,很简单吧

D:\mongodb\bin>d:\mongodb\bin\mongo.exe
MongoDB shell version: 1.6.3
connecting to: test


5:退出测试

> exit (输入exit退出) 
bye (提示)


6:为了平时使用方便,把mongod注册为系统服务,免得以后麻烦,每次要启动

d:\Program Files\mongodb\bin>mongod.exe --logpath d:\data --install
all output going to: d:\data
Creating service MongoDB.
Service creation successful.
Service can be started from the command line via 'net start "MongoDB"'.


     mongo 此时即可进行客户端与mongodb的连接了,成功后将自动连接mongodb的test库,如果你想连接指定的库,那就使用命令:mongo 数据库名称,如果你将mongodb部署在服务器上,那就使用命令:mongo 服务器IP/数据库名称,此处是"/",而非"\",用错了就无法连接成功。



      讲完部署,接下来讲讲它的性能如何,mongodb的数据写入与数据读取速度是关系性数据库的很多倍以上,具体多少倍可以去看看老赵的空间,他有进行相关的测试,MONGODB现在已经被国内很多网站用来记录网站的日志。MONGODB也属于内存数据库,它会自动将一些数据缓存到内存中,这个我想也是大家平时自己会去做的事情,毕竟占内存总比占CPU好,MONGODB支持分布式部署,这样我们可以分多台服务器来进行部署。注:MONGODB不建议部署在windows 32的机器上,当数据超过2G的时候会出问题,官方建议安装在windows 64位或linux上。(随着microsoft在全球范围内打击盗版的力度越来越大,加之国外的开源软件都慢慢的转向LINUX平台,我们这些跟着微软走的people也该学着跨跨平台了,为了大家今后更好的发展,可以自学一下python或者是ruby)



      讲完性能,接下来讲讲它的应用环境,MONGODB有好处,那么自然也有它不足的地方,相对于关系性数据库来说,它的安全性就大打折扣了,所以我们应该有选择性的使用,譬如网站的日志记录,网站访问统计等可以使用MONGODB来进行数据存储。



      讲完应用,接下来讲讲它的语法:

sql: select * from t_user

mongodb: db.t_user.find()

sql: select count(*) from t_user

mongodb: db.t_user.find().count()

sql: select top 10 * from t_user where id < (select min(id) from (select top 10 id from t_user order by id desc)) order by id desc //分页取第11条到第20条的数据

mongodb: db.t_user.find().limit(10).skip(10).sort({})

sql: update t_user set username='lucky' where id=1

mongodb: db.t_user.update({id:1},{username:"lucky"})

sql: delete t_user where id=1

mongodb: db.t_user.delete({id:1})

......