新聞中心
從MongoDB3.0版起,其安裝包比以前更細(xì)化,有的朋友可能不太了解區(qū)別,簡單說明一下:
linux 64-bit legacy 這個版本即mongodb-linux-x86_64-3.0.1.tgz 不推薦在正式環(huán)境使用,這個版本特點(diǎn)是沒有連接ssl相關(guān)的庫,并且可能缺少針對操作系統(tǒng)的一些性能優(yōu)化,但是可以測試用,安裝簡單。推薦按相應(yīng)操作系統(tǒng)版本選擇對應(yīng)的安裝包如CentOS6 rhel6選擇RHEL 6 Linux 64-bit,即mongodb-linux-x86_64-rhel62-3.0.1.tgz這個安裝包。

根據(jù)服務(wù)器的硬盤情況,其中/home為固態(tài)盤,/data為固態(tài)盤 /storage為機(jī)械盤
安裝openssl
#yum install -y openssl-devel openssl
# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.0.1.tgz
# tar xzvf mongodb-linux-x86_64-rhel62-3.0.1.tgz
# mkdir -p /home/local/
# mv mongodb-linux-x86_64-rhel62-3.0.1 /home/local/mongodb
# mkdir -p /data/mongodb
# mkdir -p /data/logs/mongodb
# touch /data/logs/mongodb/mongodb.log
# chmod -R 777 /data/logs/mongodb/mongodb.log
設(shè)置ulimit -n和ulimit -u的值大于20000。如果ulimit的值設(shè)置過低的話,當(dāng)MongoDB處于 頻繁訪問的狀態(tài)下,將會產(chǎn)生錯誤,最終導(dǎo)致無法連接到MongoDB實(shí)例。
# ulimit -n 25000
# ulimit -u 25000
# cd /home/local/mongodb/bin/
# vi mongodb.conf
port=20000 #端口
dbpath= /data/mongodb #數(shù)據(jù)文件存放目錄
logpath=/data/logs/mongodb/mongodb.log #日志文件存放目錄
logappend=true #使用追加的方式寫日志
fork=true #以守護(hù)程序的方式啟用,即在后臺運(yùn)行
maxConns=5000 #最大同時連接數(shù) 默認(rèn)2000
bind_ip=127.0.0.1,172.16.20.126 #只允許通過局域網(wǎng)IP:172.16.20.126及本機(jī)訪問
noauth=true #不啟用驗證
nohttpinterface=true
rest=false
設(shè)置防火墻,以便局域網(wǎng)內(nèi)的其它服務(wù)器可以訪問
vi /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 20000 -j ACCEPT
/etc/init.d/iptables restart
如果沒有numactl命令,使用yum安裝
yum install -y numactl
在proc中關(guān)閉NUMA
# echo 0 > /proc/sys/vm/zone_reclaim_mode
# sysctl -w vm.zone_reclaim_mode=0
啟動命令:
# numactl --interleave=all /home/local/mongodb/bin/mongod --config /home/local/mongodb/bin/mongodb.conf
或
# numactl --interleave=all /home/local/mongodb/bin/mongod -f /home/local/mongodb/bin/mongodb.conf
about to fork child process, waiting until server is ready for connections.
forked process: 25071
child process started successfully, parent exiting
正常停止方法:
# ps aux | grep mongod
# kill -2 PID
或
# /home/local/mongodb/bin/mongo -port 20000
> use admin
> db.shutdownServer();
2015-03-19T00:43:27.760+0800 I CONTROL [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2015-03-19T00:43:27.760+0800 I CONTROL [initandlisten] ** We suggest setting it to 'never'
不重啟服務(wù)器的情況下解決辦法,在Linux下執(zhí)行:
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
服務(wù)器重啟后立即生效辦法:
# vi /etc/rc.local
if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
echo never > /sys/kernel/mm/transparent_hugepage/enabled
fi
if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
echo never > /sys/kernel/mm/transparent_hugepage/defrag
fi
開機(jī)自動啟動mongodb
# vi /etc/rc.d/rc.local
rm -rf /data/mongodb/mongod.lock
numactl --interleave=all /home/local/mongodb/bin/mongod -f /home/local/mongodb/bin/mongodb.conf
說明:啟動時必須加numactl --interleave=all
當(dāng)前文章:CentOS6.6下安裝MongoDB3.0.1
當(dāng)前URL:http://m.fisionsoft.com.cn/article/djpcdhd.html


咨詢
建站咨詢
