以前講了一些關於MongoDB的知識,出人意料的受歡迎,也讓我很吃驚,因此今天打算分享一些我在本身計算機的虛擬機的centos系統下安裝MongoDB的經歷,但願感興趣的大家在安裝MongoDB的時候出現問題能夠來看看我是怎麼安裝的,咱們之間又有什麼不一樣,究竟是什麼問題倒置MongoDB安裝不順利呢?php
歡迎你們積極交流本身的經歷,MongoDB的安裝和配置常常會遇到問題,咱們不能閉門造車,說出來你們一塊兒討論,一塊兒解決,同時也歡迎大牛來指正個人錯誤。html
我是在電腦VM10下安裝的centos6.5系統(32位,這個也是致使我安裝MongoDB3.0的時候出現異常提示,緣由多是MongoDB3.0的版本是64位的,我應該再找一個32位的MongoDB3.0,但事實上我找不到)。linux
操做系統:CentOS 6.5 32位mongodb
工做環境:典型LAMP(linux+apache+MongoDB+PHP)shell
MongoDB版本:2.0.0數據庫
注:配置防火牆使mongodb能順利安裝apache
首先關閉SELINUX、配置防火牆:centos
命令: vi /etc/selinux/config
修改selinux配置內容:app
#SELINUX=enforcing #註釋掉 #SELINUXTYPE=targeted #註釋掉 SELINUX=disabled #增長
保存退出tcp
命令::wq!
使配置當即生效
命令: setenforce 0
編輯防火牆配置
命令: vi /etc/sysconfig/iptables
修改防火牆配置項內容:容許27017端口經過防火牆
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 27017 -j ACCEPT
保存退出
命令::wq!
重啓防火牆使配置生效
命令:/etc/init.d/iptables restart
下載MongoDB2.0.0安裝包(注: 案例中的是64位系統的包,32位的是http://fastdl.mongodb.org/linux/mongodb-linux-i686-2.0.0.tgz)
命令: wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.0.0.tgz
解壓mongodb包:
命令: tar xzvf mongodb-linux-i686-2.0.0.tgz
移動mongodb包至安裝目錄:
命令: mv mongodb-linux-x86_64-2.0.0 /usr/local/mongodb
建立data文件夾和log文件夾(日誌文件):
命令:mkdir -p /home/data/mongodb/mongodb_data/ #建立MongoDB數據庫存放路徑 命令:mkdir -p /home/data/mongodb/mongodb_log/ #建立MongoDB數據庫日誌存放路徑 命令:touch /home/data/mongodb/mongodb_log/monglodb.log
安裝配置mongodb,而且啓動mongodb:
命令: /usr/local/mongodb/bin/mongod --port 27017 --fork --dbpath=/home/data/mongodb/mongodb_data/ --logpath=/home/data/mongodb/mongodb_log/mongodb.log --logappend
注:這裏的命令的意思大概就是啓動mongob,給出端口爲port,給出數據庫存放路徑dbpath,給出日誌文件路徑logpath,而後執行啓動。這些參數都要寫對,錯一不可運行MongoDB
查看MongoDB是否啓動
命令: netstat -lanp | grep "27017"
進入MongoDB數據庫控制檯
命令: /usr/local/mongodb/bin/mongo
關閉MongoDB數據庫
命令: db.shutdownServer()
退出
命令:exit
附上一些mongodb安裝的參考網址:
參考網址:http://www.haodaima.net/art/2900366
參考網址:http://www.osyunwei.com/archives/7629.html
->db.TestDb #建立數據庫 ->db.addUser(「root」,」rongx」) #建立用戶(用戶名:root,密碼:rongx) ->db.auth(「root」,」rongx」) #設置用戶爲容許鏈接的用戶 ->db.createCollection(「testTable」) #建立表 ->show collections #查看錶是否建立成功
案例:
在shell界面輸入db,發現db是指向了test的
-> db test ->
選擇數據庫 use [databese name]
-> use testDB switched to db testDB
建立
假設咱們有一個用戶表testTable,包含了name age tel
-> user={name:'admin',age:'21',tel:'1234567'} { "name" : "admin", "age" : "21", "tel" : "1234567" } -> db.testTable.insert(user) -> db.testTable.find() { "_id" : ObjectId("51b28b7ab73ec06e42c91596"), "name" : "admin", " age" : "21", "tel" : "1234567" } ->
附上一些mongodb基本命令參考網址
參考網址:http://blog.sina.com.cn/s/blog_998c4943010164w7.html
參考網址:http://www.cnblogs.com/ac1985482/archive/2013/06/08/3125740.html
進入MongoDB安裝目錄
命令: cd /usr/local/mongodb/
命令: vi /usr/local/mongodb/mongodb.conf #編輯
編輯內容以下:
port=27017 #端口號
dbpath=/home/data/mongodb/mongodb_data/ #數據庫路徑
logpath=/home/data/mongodb/mongodb_log/mongodb.log #日誌輸出文件路徑
pidfilepath=/usr/local/mongodb/mongo.pid
fork=true #設置後臺運行
logappend=true #日誌輸出方式
shardsvr=true
directoryperdb=true
#auth=true #開啓認證
命令::wq! #保存退出
命令:cd /usr/local/mongodb/bin/
命令:./mongod --config /usr/local/mongodb/mongodb.conf #啓動MongoDB
命令:./mongo 127.0.0.1:27017/admin --eval "db.shutdownServer()" #關閉MongoDB
命令:vi /etc/rc.d/init.d/mongod #設置開機啓動MongoDB
修改配置內容,內容以下:
ulimit -SHn 655350
#!/bin/sh
# chkconfig: - 64 36
# description:mongod
case $1 in
start)
/usr/local/mongodb/bin/mongod --maxConns 20000 --config /usr/local/mongodb/mongodb.conf
;;
stop)
/usr/local/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.shutdownServer()"
;;
status)
/usr/local/mongodb/bin/mongo 127.0.0.1:27017/admin --eval "db.stats()"
;;
esac
保存修改,啓動服務
命令: :wq! #保存退出
命令: chmod +x /etc/rc.d/init.d/mongod #添加腳本執行權限
命令: chkconfig mongod on #設置開機啓動
命令: service mongod start #啓動MongoDB
添加環境變量,編輯
命令:vi /etc/profile
在最後一行添加下面的代碼
export PATH=$PATH:/usr/local/mongodb/bin
命令: :wq! #保存退出
命令: source /etc/profile #使配置當即生效
命令: mongo #進入MongoDB控制檯
命令: show dbs #查看默認數據庫
命令: use admin #切換到admin數據庫
命令: exit #退出MongoDB控制檯
至此,centOS下mongodb安裝完成,接下來就是配置php與mongodb搭配使用,還有mongodb的主從設置等等的工做。
mongodb主從設置與測試參考網址:http://www.haodaima.net/art/2900366
mongo啓動命令: /usr/local/mongodb/bin/mongo
最新mongoDB版本 3.0+
## 總結 ##
文章屬於實戰類乾貨,操做流程比較多,不一樣狀況會有不一樣問題的出現,可是能夠說明的是,mongodb3.0以上版本的數據庫最好安裝到64位,這個我不清楚具體緣由,可是不少時候安裝到32位的時候數據庫會提醒我數據庫異常,暫時沒搞懂。
mongodb的安裝其實多安裝幾回,你就會明白不少關於mongodb的安裝所需的一些基本環境或者說是要求,首先是端口(通常是27017,若是已被佔用,最好弄一個獨立的新的端口),而後是操做系統(最好64位),數據庫文件和數據庫日誌的路徑,還有還有就是鎖的問題,這個我常常遇到,就是啓動mongodb或關閉mongodb時出現異常會出現鎖庫(lock)的問題,這個很煩,網上通常建議找到提示的那個lock文件,刪掉,重啓mongodb,我在實際上使用卻一時有用一時沒用,看來是我還沒搞懂。
mongodb安裝配置好了,命令管理界面怎麼說仍是突顯單調,因此有一種mongodb管理工具--RockMongo,這個視圖管理工具很好用,對MongoDB管理幫助很大,有興趣的同窗能夠去關注一下。