標籤:
從官網下載MongoDB的壓縮包。http://www.mongodb.org/downloads
將mongodb-linux-x86_64-2.6.8.tgz解壓
[[email protected] Downloads]$ tar zxvf mongodb-linux-x86_64-2.6.8.tgz mongodb-linux-x86_64-2.6.8/READMEmongodb-linux-x86_64-2.6.8/THIRD-PARTY-NOTICESmongodb-linux-x86_64-2.6.8/GNU-AGPL-3.0mongodb-linux-x86_64-2.6.8/bin/mongodumpmongodb-linux-x86_64-2.6.8/bin/mongorestoremongodb-linux-x86_64-2.6.8/bin/mongoexportmongodb-linux-x86_64-2.6.8/bin/mongoimportmongodb-linux-x86_64-2.6.8/bin/mongostatmongodb-linux-x86_64-2.6.8/bin/mongotopmongodb-linux-x86_64-2.6.8/bin/mongooplogmongodb-linux-x86_64-2.6.8/bin/mongofilesmongodb-linux-x86_64-2.6.8/bin/bsondumpmongodb-linux-x86_64-2.6.8/bin/mongoperfmongodb-linux-x86_64-2.6.8/bin/mongodmongodb-linux-x86_64-2.6.8/bin/mongosmongodb-linux-x86_64-2.6.8/bin/mongo
MongoDB無需安裝即可應用,所以我們自己將其部署到/usr/local/下
首先在usr/local/目錄下建立一個mongodb檔案夾(注意要su許可權)
[[email protected] /]$ cd /[[email protected] /]$ cd usr/local/[[email protected] local]$ lsbin etc games include lib lib64 libexec sbin share src
[[email protected] local]$ sudo mkdir mongodb[sudo] password for neil: [[email protected] local]$ lsbin etc games include lib lib64 libexec mongodb sbin share src
之後,將之前解壓好的Monggodb檔案夾移動到/usr/local/mongodb下:
[[email protected] local]$ cd ~/Downloads/[[email protected] 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
[[email protected] mongodb]$ sudo touch dblogs
[[email protected] mongodb]$ lsbin data dblogs GNU-AGPL-3.0 README THIRD-PARTY-NOTICES
至此,MongoDB就算安裝好了。
——————————————————————————————
bin可以看到MongDB用到的13個二進位檔案
[[email protected] mongodb]$ tree binbin├── bsondump├── mongo├── mongod├── mongodump├── mongoexport├── mongofiles├── mongoimport├── mongooplog├── mongoperf├── mongorestore├── mongos├── mongostat└── mongotop0 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
不過,我還是喜歡自己啟動。或者自己寫在一個指令碼裡,以後要啟動哪些東西自己配置。
手動啟動方式如下:
[[email protected] mongodb]$ cd bin[[email protected] bin]$ lsbsondump mongodump mongoimport mongorestore mongotopmongo mongoexport mongooplog mongosmongod mongofiles mongoperf mongostat[[email protected] 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有沒有被成功啟動呢?
通過命令:
[[email protected] 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服務呢?
[[email protected] bin]$ sudo pkill mongod[sudo] password for neil: [[email protected] bin]$ pstree -p| grep mongod[[email protected] 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指令碼:
[[email protected] Downloads]$ sh mongodbstart.shabout to fork child process, waiting until server is ready for connections.forked process: 7042child process started successfully, parent exiting[[email protected] 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以及注意事項(詳細)