发表时间:2012-08-24
最后修改:2012-08-24
下载MongoDB安装包
下载地址:http://www.mongodb.org/downloads,现在最新版是2.0.7,由于我现在打算把它装在ubuntu服务器(在虚拟机上装),所以我下载了mongodb-linux-i686-2.0.7.tgz
如果有网络的话,可以用wget命令直接下载:
wget http://fastdl.mongodb.org/linux/mongodb-linux-i686-2.0.7.tgz
上传与解压
如果你在window平台下载,你首先要上传到linux平台,我直接用WinSCP上传到了/usr/local目录下。
huangyineng@ubuntu:/usr/local$ sudo tar
zxvf mongodb-linux-i686-2.0.7.tgz
|
由于解压后的目录名(mongodb-linux-i686-2.0.7)太长了,我们给改为mongodb
huangyineng@ubuntu:/usr/local$ sudo mv
mongodb-linux-i686-2.0.7 mongodb
|
进去mongodb的bin目录,可以看到有12个文件
huangyineng@ubuntu:/usr/local/mongodb/bin$
ls
bsondump
mongod mongoexport mongoimport mongos
mongostat
mongo
mongodump mongofiles mongorestore mongosniff
mongotop
|
注:MongoDB没有具体的安装过程,解压文件包后就可以直接使用,非常高效和方便
创建数据库和日志存放目录
创建数据库文件夹(默认数据库文件的位置是/data/db,启动时会自动创建)
huangyineng@ubuntu:/usr/local/mongodb$
sudo mkdir data
huangyineng@ubuntu:/usr/local/mongodb$
sudo touch dblogs
huangyineng@ubuntu:/usr/local/mongodb$
ls
bin data
dblogs
|
启动MongoDB
运行mongodb命令启动
huangyineng@ubuntu:/usr/local/mongodb$
sudo /usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data/
--logpath=/usr/local/mongodb/dblogs --fork
forked process: 1156
all output going to:
/usr/local/mongodb/dblogs
|
--dbpath执行数据库存放路径(默认是/data/db)
--fork是以Daemon(进程、后台)方式运行
注意:如果指定--fork参数,必须指定--logpath日志文件路径,如果不加--fork,则需要再开启一个窗口进行操作
启动命令常用参数选项说明
--dbpath 指定数据库的目录
--port 指定数据库的端口,默认是
--bind_ip 绑定IP
--directoryperdb 为每个db创建一个独立子目录
--logpath 指定日志存放目录
--logappend 指定日志生成方式(追加/覆盖)
--pidfilepath 指定进程文件路径,如果不指定,将不产生进程文件
--keyFile 集群模式的关键标识
--journal 启用日志
--nssize 指定.ns文件的大小,单位MB,默认是16M,最大是2GB
--maxConns 最大的并发连接数
--notablescan 不允许进行表扫描
--noprealloc 关闭数据文件的预分配功能
--fork 以后台Daemon形式运用服务
更多的参数选项请查看:huangyineng@ubuntu:/usr/local/mongodb/bin$
./mongod --help
查看MongoDB进程
huangyineng@ubuntu:/usr/local/mongodb$
pstree -p | grep mongod
|-mongod(1156)-+-{mongod}(1157)
| |-{mongod}(1158)
| |-{mongod}(1159)
| |-{mongod}(1160)
| |-{mongod}(1161)
| |-{mongod}(1162)
| `-{mongod}(1163)
huangyineng@ubuntu:/usr/local/mongodb$ ps
-ef | grep mongod
root
1156 1 0 08:37 ? 00:00:04
/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data/
--logpath=/usr/local/mongodb/dblogs --fork
1000
1182 787 0 08:46 pts/0 00:00:00 grep --color=auto mongod
|
关闭MongoDB进程
用pkill
huangyineng@ubuntu:/usr/local/mongodb/bin$
sudo pkill mongod
|
用killall
huangyineng@ubuntu:/usr/local/mongodb/bin$
sudo killall mongod
|
注:不能用kill -9,用了kill -9会出现启动不了
huangyineng@ubuntu:/usr/local/mongodb/bin$
ps -ef | grep mongod
root 1238
1 0 08:58 ? 00:00:00
/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data/
--logpath=/usr/local/mongodb/dblogs --fork
1000 1249
787 0 09:00 pts/0 00:00:00 grep --color=auto mongod
huangyineng@ubuntu:/usr/local/mongodb/bin$
sudo kill -9 1238
huangyineng@ubuntu:/usr/local/mongodb/bin$
ps -ef | grep mongod
1000 1253
787 0 09:00 pts/0 00:00:00 grep --color=auto mongod
huangyineng@ubuntu:/usr/local/mongodb/bin$
sudo /usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data/
--logpath=/usr/local/mongodb/dblogs --fork
forked process: 1258
all output going to:
/usr/local/mongodb/dblogs
huangyineng@ubuntu:/usr/local/mongodb/bin$
ps -ef | grep mongod
1000 1263
787 0 09:00 pts/0 00:00:00 grep --color=auto mongod
|
看到没有,虽然启动不出错,但就是没法启动进程,解决方法是把data目录下的mongod.lock删除再启动
huangyineng@ubuntu:/usr/local/mongodb/data$
sudo rm mongod.lock
huangyineng@ubuntu:/usr/local/mongodb/bin$
sudo /usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data/
--logpath=/usr/local/mongodb/dblogs --fork
forked process: 1281
all output going to:
/usr/local/mongodb/dblogs
huangyineng@ubuntu:/usr/local/mongodb/bin$
ps -ef | grep mongod
root 1281
1 1 09:04 ? 00:00:00
/usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data/
--logpath=/usr/local/mongodb/dblogs --fork
1000 1290
787 0 09:04 pts/0 00:00:00 grep --color=auto mongod
|
设置开机自启动
将mongodb启动项目加入/etc/rc.local
./usr/local/mongodb/bin/mongod
--dbpath=/usr/local/mongodb/data/ --logpath=/usr/local/mongodb/dblogs --fork
|
我重启后直接连接客户端出错
huangyineng@ubuntu:/usr/local/mongodb/bin$
./mongo
MongoDB
shell version: 2.0.7
connecting
to: test
Mon
Aug 20 07:49:30 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84
exception:
connect failed
|
待解决
使用客户端操作
使用mongo命令
huangyineng@ubuntu:/usr/local/mongodb/bin$
./mongo
MongoDB shell version: 2.0.7
connecting to: test
>
|
看到这个画面,已经进入MongoDB的客户端了,默认是进入test库。
退出客户端操作用ctrl+c或exit回车
本文链接:http://www.656463.com/portal.php?mod=view&aid=76,转载请注明出处
下一节:MongoDB的体系结构