标签:
从官网下载MongoDB的压缩包。http://www.mongodb.org/downloads
将mongodb-linux-x86_64-2.6.8.tgz解压
[neil@neilhost Downloads]$ tar zxvf mongodb-linux-x86_64-2.6.8.tgz mongodb-linux-x86_64-2.6.8/README mongodb-linux-x86_64-2.6.8/THIRD-PARTY-NOTICES mongodb-linux-x86_64-2.6.8/GNU-AGPL-3.0 mongodb-linux-x86_64-2.6.8/bin/mongodump mongodb-linux-x86_64-2.6.8/bin/mongorestore mongodb-linux-x86_64-2.6.8/bin/mongoexport mongodb-linux-x86_64-2.6.8/bin/mongoimport mongodb-linux-x86_64-2.6.8/bin/mongostat mongodb-linux-x86_64-2.6.8/bin/mongotop mongodb-linux-x86_64-2.6.8/bin/mongooplog mongodb-linux-x86_64-2.6.8/bin/mongofiles mongodb-linux-x86_64-2.6.8/bin/bsondump mongodb-linux-x86_64-2.6.8/bin/mongoperf mongodb-linux-x86_64-2.6.8/bin/mongod mongodb-linux-x86_64-2.6.8/bin/mongos mongodb-linux-x86_64-2.6.8/bin/mongo
MongoDB无需安装即可应用,所以我们自己将其部署到/usr/local/下
首先在usr/local/目录下新建一个mongodb文件夹(注意要su权限)
[neil@neilhost /]$ cd / [neil@neilhost /]$ cd usr/local/ [neil@neilhost local]$ ls bin etc games include lib lib64 libexec sbin share src
[neil@neilhost local]$ sudo mkdir mongodb [sudo] password for neil: [neil@neilhost local]$ ls bin etc games include lib lib64 libexec mongodb sbin share src
之后,将之前解压好的Monggodb文件夹移动到/usr/local/mongodb下:
[neil@neilhost local]$ cd ~/Downloads/ [neil@neilhost local]$ sudo mv mongodb-linux-x86_64-2.6.8/* /usr/local/mongodb/
(或者
也可以在mongodb-linux-x86_64-2.6.8文件夹里使用如下命令:
rsync -a bin /usr/local/mongodb
)
然后为mongodb创建数据库存放的位置(默认是在/data/db下面),这里在mongodb下面建立了相应的目录data/
[neil@neilhost mongodb]$ sudo mkdir data
为mongodb创建一个日志文件dblogs
[neil@neilhost mongodb]$ sudo touch dblogs
[neil@neilhost mongodb]$ ls bin data dblogs GNU-AGPL-3.0 README THIRD-PARTY-NOTICES
至此,MongoDB就算安装好了。
——————————————————————————————
bin可以看到MongDB用到的13个二进制文件
[neil@neilhost mongodb]$ tree bin bin ├── bsondump ├── mongo ├── mongod ├── mongodump ├── mongoexport ├── mongofiles ├── mongoimport ├── mongooplog ├── mongoperf ├── mongorestore ├── mongos ├── mongostat └── mongotop 0 directories, 13 files
早先的版本MongoDB的bin只有12个二进制文件,并且部分二进制文件与现在的也不同。
————————————————————————————————————————————
如果你需要在每次服务器开机时都需要自动启动MongoDB,那么需要设置一些环境变量
将mongodb启动项目加入rc.local保证mongodb在服务器开机时启动:
echo "/usr/local/mongodb/bin/mongodb" --dbpath=/usr/local/mongodb/data">> /etc/rc/local
不过,我还是喜欢自己启动。或者自己写在一个脚本里,以后要启动哪些东西自己配置。
手动启动方式如下:
[neil@neilhost mongodb]$ cd bin [neil@neilhost bin]$ ls bsondump mongodump mongoimport mongorestore mongotop mongo mongoexport mongooplog mongos mongod mongofiles mongoperf mongostat [neil@neilhost bin]$ sudo ./mongod --dbpath=/usr/local/mongodb/data/ --logpath=/usr/local/mongodb/dblogs --fork [sudo] password for neil: about to fork child process, waiting until server is ready for connections. forked process: 6593
这里--dbpath指定的是数据库文件存储的路径,--logpath指定的是日志文件路径是什么,之前的dblogs也可以自己命名为其他名字,在这里指定即可。
--fork参数指的是在后台执行,当然也可以用&符号。
系统返回的forked process:6593指的是系统给Mongodb分配的进程号PID是6593(每次都不一样哦)
那么现在MongoDB有没有被成功启动呢?
通过命令:
[neil@neilhost bin]$ pstree -p| grep mongod |-mongod(6593)-+-{mongod}(6594) | |-{mongod}(6595) | |-{mongod}(6596) | |-{mongod}(6608) | |-{mongod}(6609) | |-{mongod}(6610) | |-{mongod}(6611) | |-{mongod}(6612) | `-{mongod}(6613)
主进程6593下有9个子进程。
上面手动启动的语句可以放到/etc/rc.local文件里,让系统开机后自动执行。(/etc/rc.local是linux开机后最后执行的脚本)
——————————————————————————————————
如何关闭mongodb服务呢?
[neil@neilhost bin]$ sudo pkill mongod [sudo] password for neil: [neil@neilhost bin]$ pstree -p| grep mongod [neil@neilhost bin]$
这样,用pkill命令就把mongdb关闭了。这里也可以用kill --all
注意:但是绝对不能用kill -9来关闭mongodb,否则就会发现下次无法成功启动mongod了!!!切记!!!
_____________________________________________
这里再增加一种方法:
写一个shell脚本文件mongodbstart.sh,文件内容如下:
sudo /usr/local/mongodb/bin/mongod --dbpath=/usr/local/mongodb/data/ --logpath=/usr/local/mongodb/dblogs --fork
然后执行该shell脚本:
[neil@neilhost Downloads]$ sh mongodbstart.sh about to fork child process, waiting until server is ready for connections. forked process: 7042 child process started successfully, parent exiting [neil@neilhost Downloads]$ pstree -p| grep mongod |-mongod(7042)-+-{mongod}(7043) | |-{mongod}(7044) | |-{mongod}(7045) | |-{mongod}(7046) | |-{mongod}(7047) | |-{mongod}(7048) | |-{mongod}(7049) | |-{mongod}(7050) | `-{mongod}(7051)
以后如果有其他需要一起启动的东西,可以都加入脚本文件中,一起启动。并且不会在开机时候启动。
Mongodb入门系列(2)——在linux下安装、启动、关闭MongoDB以及注意事项(详细)
标签:
原文地址:http://my.oschina.net/u/1156339/blog/382219