1.下載安裝包 linux
wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-2.4.3.tgz下載完成後解壓縮壓縮包
tar -xzvf mongodb-linux-x86_64-2.4.3.tgz
2. 安裝Mongo mongodb
將mongodb移動到/opt/db/server/server/mongdb文件夾 shell
mv mongodb-linux-x86_64-2.4.3 /opt/db/server/server/mongdb建立數據庫文件夾與日誌文件
mkdir /opt/dev/db/data/mongdb/ touch /opt/dev/db/data/log/mongo.log
3.啓動Mongo 數據庫
cd /opt/dev/db/server/server/mongdb.bin;#進入mongo的bin目錄 ./mongod --dbpath=/opt/db/data/mongdb/ --logpath=logpath/opt/dev/db/data/log/mongo.log --logappend --port=27017
4.測試是否啓動成功: 服務器
netstat –nptl | grep mongod
注意咱們這麼並無看到mongo相關的信息,說明啓動失敗了,上面提示裏:日誌文件在: app
好!咱們打開日誌文件看看:more /opt/dev/db/data/log/mongodb.log
日誌裏說:當前庫文件所在的磁盤過小了,至少3379MB,或者在啓動命令里加 –smallfiles 測試
好,此次咱們加上參數—smallfiles在啓動一次: ui
cd /opt/dev/db/server/server/mongdb.bin; ./mongod --smallfiles --dbpath=/opt/dev//db/data/mongdb/ –logpath=logpath/opt/dev/db/data/log/mongo.log --port=27017 --logappend&
再次驗證: this
netstat –nptl | grep mongod
OK!成功! spa
5. 設置開機自啓動
將mongodb啓動項目追加入rc.local保證mongodb在服務器開機時啓動
在命令行裏執行執行:echo 「/opt/db/dev/data/mongdb/bin/mongod --dbpath=/opt/dev/db/data/mongdb/ --logpath=logpath/opt/dev/db/data/log/mongo.log –logappend -–port=27017" >> /etc/rc.local或者手動編輯/etc/rc.local添加上去
vi /etc/rc.local 添加: /opt/db/dev/data/mongdb/bin/mongod --dbpath=/opt/dev/db/data/mongdb/ --logpath=logpath/opt/dev/db/data/log/mongo.log –-logappend -–port=27017
若出現上面數據庫存放的磁盤過小致使沒法啓動服務的問題,則直接在上面的參數里加上--smallfiles 便可
6.添加mongo環境變量
每次連接mongo都得跑到mongodb/bin下面執行,這太不方便了:
在/usr/bin下建立mongo的軟鏈接ln -s /opt/dev/db/mongodb/bin/mongo /usr/bin/mongo
而後以後就能夠在任意目錄使用mongo命令了
7. 進入數據庫的CLI管理界面
cd到mongodb目錄下的bin文件夾,執行命令./mongo
運行以下:
./bin/mongo MongoDB shell version: 2.4.3 connecting to: test > use test; switched to db test
若數據庫出現如不能連上,則是一個data目錄下的mongod.lock文件的問題,能夠用以下的修復的命令,
mongod --repair
8.配置參數
啓動說明:
//下面這個是須要權限的登陸方式, 用戶鏈接須要用戶名和密碼
/opt/db/data/mongodb/bin/mongod --dbpath=/opt/db/data/mongdb/ –logpath=logpath/opt/db/data/log/mongo.log –logappend --auth --port=27017 --fork//這個是不須要密碼的
/opt/db/data/mongodb/bin/mongod --dbpath=/opt/db/data/mongdb/ –logpath=logpath/opt/db/data/log/mongo.log –logappend --port=27017 –fork即:--auth爲是否登陸,加上該參數爲須要密碼,去掉則不須要密碼 參數說明:
--dbpath 數據庫路徑(數據文件) --logpath 日誌文件路徑 --master 指定爲主機器 --slave 指定爲從機器 --source 指定主機器的IP地址 --pologSize 指定日誌文件大小不超過64M.由於resync是很是操做量大且耗時, 最好經過設置一個足夠大的oplogSize來避免 resync (默認的 oplog大小是空閒磁盤大小的5%)。 --logappend 日誌文件末尾添加 --port 啓用端口號 --fork 在後臺運行 --only 指定只複製哪個數據庫 --slavedelay 指從複製檢測的時間間隔 --auth 是否須要驗證權限登陸(用戶名和密碼) -h [ --help ] show this usage information --version show version information -f [ --config ] arg configuration file specifying additional options --port arg specify port number --bind_ip arg local ip address to bind listener - all local ips bound by default -v [ --verbose ] be more verbose (include multiple times for more verbosity e.g. -vvvvv) --dbpath arg (=/data/db/) directory for datafiles 指定數據存放目錄 --quiet quieter output 靜默模式 --logpath arg file to send all output to instead of stdout 指定日誌存放目錄 --logappend appnd to logpath instead of over-writing 指定日誌是以追加仍是以覆蓋的方式寫入日誌文件 --fork fork server process 以建立子進程的方式運行 --cpu periodically show cpu and iowait utilization 週期性的顯示cpu和io的使用狀況 --noauth run without security 無認證模式運行 --auth run with security 認證模式運行 --objcheck inspect client data for validity on receipt 檢查客戶端輸入數據的有效性檢查 --quota enable db quota management 開始數據庫配額的管理 --quotaFiles arg number of files allower per db, requires --quota 規定每一個數據庫容許的文件數 --appsrvpath arg root directory for the babble app server --nocursors diagnostic/debugging option 調試診斷選項 --nohints ignore query hints 忽略查詢命中率 --nohttpinterface disable http interface 關閉http接口,默認是28017 --noscripting disable scripting engine 關閉腳本引擎 --noprealloc disable data file preallocation 關閉數據庫文件大小預分配 --smallfiles use a smaller default file size 使用較小的默認文件大小 --nssize arg (=16) .ns file size (in MB) for new databases 新數據庫ns文件的默認大小 --diaglog arg 0=off 1=W 2=R 3=both 7=W+some reads 提供的方式,是隻讀,只寫,仍是讀寫都行,仍是主要寫+部分的讀模式 --sysinfo print some diagnostic system information 打印系統診斷信息 --upgrade upgrade db if needed 若是須要就更新數據庫 --repair run repair on all dbs 修復全部的數據庫 --notablescan do not allow table scans 不運行表掃描 --syncdelay arg (=60) seconds between disk syncs (0 for never) 系統同步刷新磁盤的時間,默認是60s Replication options: --master master mode 主複製模式 --slave slave mode 從複製模式 --source arg when slave: specify master as <server:port> 當爲從時,指定主的地址和端口 --only arg when slave: specify a single database to replicate 當爲從時,指定須要從主複製的單一庫 --pairwith arg address of server to pair with --arbiter arg address of arbiter server 仲裁服務器,在主主中和pair中用到 --autoresync automatically resync if slave data is stale 自動同步從的數據 --oplogSize arg size limit (in MB) for op log 指定操做日誌的大小 --opIdMem arg size limit (in bytes) for in memory storage of op ids 指定存儲操做日誌的內存大小 Sharding options: --configsvr declare this is a config db of a cluster 指定shard中的配置服務器 --shardsvr declare this is a shard db of a cluster 指定shard服務器