Windows下安装MongoDB
项目当中用到MongoDB最为NoSQL数据库,运行的平台为 Windows Server 2008,下面是MongoDB的安装过程笔记:
1、下载软件
官方下载地址:http://www.mongodb.org/downloads
例如,我下载的版本是 http://downloads.mongodb.org/win32/mongodb-win32-x86_64-2.2.6.zip
2、安装
把压缩包里的bin文件夹拷贝到目录 d:\PHP\MongoDB,再新建目录
d:\PHP\MongoDB\data #数据文件夹
d:\PHP\MongoDB\logs #日志文件夹
3、配置环境变量
把 d:\PHP\MongoDB\bin 添加加到 环境变量(我的电脑/计算机 --> 右键“属性” --> 高级 --> 环境变量) Path 中。
4、运行MongoDB
D:\PHP\MongoDB> mongod --dbpath d:/PHP/MongoDB/data
......
Sun Oct 24 15:07:05 db version v1.7.1, pdfile version 4.5
Sun Oct 24 15:07:05 git version: cee2d0d6816a704126c283401db24c949d5f52a3
Sun Oct 24 15:07:05 sys info: windows (5, 1, 2600, 2, 'Service Pack 3') BOOST_LIB_VERSION=1_35
Sun Oct 24 15:07:05 [initandlisten] waiting for connections on port 27017
Sun Oct 24 15:07:05 [websvr] web admin interface listening on port 28017
最后两行说明的数据库端口和Web端口,分别是27017和28017,在浏览器中打开 http://localhost:28017,可以看到一些相关信息。
5、注册Windows服务
每次运行 mongod --dbpath d:/php/MongoDB/data 命令行来启动MongoDB不是方便,如果把它作为Windows服务,这样就方便多了。
cmd运行如下命令,注意:cmd必须通过系统管理员运行才行!!!
D:\PHP\MongoDB\bin> mongod --logpath d:\PHP\MongoDB\logs\MongoDB.log --logappend --dbpath d:\PHP\MongoDB\data --directoryperdb --serviceName MongoDB --install
all output going to: D:\PHP\MongoDB\logs\MongoDB.log
Creating service MongoDB.
Service creation successful.
Service can be started from the command line via 'net start "MongoDB"'.
注意:这条命令要到MongoDB的 bin目录 下运行,刚开始的时 候,我就直接在D:\下运行,结果服务的可执行目录为【"D:\mongod" --logpath "D:\MongoDB\logs\MongoDB.log" --logappend --dbpath "D:\MongoDB\data" --directoryperdb --service 】,肯定是不对的。
该命令行指定了日志文件:D:\PHP\MongoDB\logs\MongoDB.log,日志是以追加的方式输出的;
数据文件目录:D:\PHP\MongoDB\data,并且参数--directoryperdb说明每个DB都会新建一个目录;
Windows服务的名称:MongoDB;
以上的三个参数都是可以根据自己的情况而定的,可以通过 mongod --help 查看更多的参数 。
最后是安装参数:--install,与之相对的是--remove
启动MongoDB:net start MongoDB
停止MongoDB:net stop MongoDB
6、安装PHP的MongoDB扩展
下载地址:http://github.com/mongodb/mongo-php-driver/downloads
例如,我下载的版本是 https://github.com/downloads/mongodb/mongo-php-driver/php_mongo-1.3.2RC1.zip
[PHP扩展官方下载]:http://pecl.php.net/package/mongo
拷贝其中的 php_mongo-1.3.2RC1-5.3-vc9.dll 到php的扩展目录。
在php.ini中加入:extension=php_mongo-1.3.2RC1-5.3-vc9.dll
重启apache,在phpinfo()中查看是否有一项关于mongo的。
推荐一款MongoDB管理工具:
http://rockmongo.com/wiki/introduction?lang=zh_cn
另外,卸载MongoDB的方式为:
mongodb:mongod.exe --remove --serviceName "MongoDB"
安装MongoDB服务时报错:
运行命令 net start MongoDB ,提示 “服务名无效”,查看日志文件 d:\PHP\MongoDB\logs\MongoDB.log :
Tue Oct 08 11:03:41 Trying to install Windows service 'MongoDB'
Tue Oct 08 11:03:41 Error connecting to the Service Control Manager: 拒绝访问。 (5)
这是操作系统权限问题。cmd必须通过系统管理员运行才行!!!
从开始菜单定位到 cmd右键,以管理员身份运行。
重新定位到 d:\PHP\MongoDB\bin\ 目录,执行服务安装命令即可。