1. Mongodb在Linux下的安装
1. 下载MongoDB:
从官方网站http://www.mongodb.org/downloads下载Linux 64-bit的安装包,解压安装包
tar -xzvf mongodb-linux-i686-1.8.1.tgz.tar
2. 解压文件到某目录下,然后重命名:
mv mongodb-linux-i686-1.8.1 /usr/local/mongodb/
bin下的mongod就是MongoDB的服务端进程,mongo就是其客户端
3.启动MongoDB
启动之前建立MongoDB存放数据文件和日志文件的目录(mongodb_data,mongodb_log),此处建立在/data下。
在控制台输入命令:
./mongod --dbpath=/data/mongodb_data/ --logpath=/data/mongodb_log/mongodb.log --logappend&
等待启动成功后,可查看是否启动成功了,默认端口号是27017,当然在启动时也可以指定未使用的其它端口。
切换到bin目录
cd /usr/local/mongodb/bin/
启动MongoDB
./mongo
到这一步说明已经安装成功了。
2. Mongodb在Linux下的环境优化实践
1.ulimit 限制虚拟内存的命令
Virtual memory size (Kbytes,-v) ulimited。
Mongo的内存使用是没法控制的,但是可以通过限制虚拟内存达到效果。向控制台输ulimit –v 1000000 限制虚拟内存为1个G。
2.ulimit 限制连接数
ulimit –n用来限制可以打开的文件数。因为默认为1024,打开的sockets被限制,通过增大打开
的文件数,可使性能有所提高。
3.ulimit 限制栈的大小
ulimit –s用来限制堆栈的大小。由于每一个连接都是一个线程,需要一个stack。Linux下缺省的stack设置一般比较大,应把stack设置小一点,Linux默认大小是10m,推荐把Stack设置小一点。
比如1024。
4.永久性配置
由于ulimit限制仅仅适用于当前shell内运行的进程或子进程,当关闭当前shell,ulimit配置将全部失效。
所以需要通过修改系统文件实现永久性。
vim /etc/security/limits.conf,添加
l * soft stack 1024
l * hard stack 1024
l * soft nofile 10240
l * hard nofile 10240
重启机器再输入ulimit –a,可以发现open files为10240,stack size 为1024。
5.取消日志记录
在配置的时候添加--nojournal。
参考文章:http://www.cnblogs.com/ylqmf/archive/2011/10/25/2224492.html
http://www.mongodb.org/display/DOCS/2.0+Release+Notes