在CentOS中使用 yum 安裝MongoDB及服務器端配置

原文鏈接 http://zuoqiang.iteye.com/blog/1155069

一、準備工作:

 

  運行yum命令查看MongoDB的包信息 [root@vm ~]# yum info mongo-10gen

(提示沒有相關匹配的信息,)

說明你的centos系統中的yum源不包含MongoDB的相關資源,所以要在使用yum命令安裝MongoDB前需要增加yum源,也就是 在 /etc/yum.repos.d/目錄中增加 *.repo yum源配置文件,以下分別是針對centos 64位和32位不同的系統的MongoDB yum 源配置內容:

 

我們這裏就將該文件命名爲:/etc/yum.repos.d/10gen.repo

 

For 64-bit yum源配置:

 

vi /etc/yum.repos.d/10gen.repo

 

[10gen]

name=10gen Repository

baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64

gpgcheck=0

For 32-bit yum源配置:

 

vi /etc/yum.repos.d/10gen.repo

 

[10gen]

name=10gen Repository

baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/i686

gpgcheck=0

根據自己的系統選擇相應的配置內容

 

查看系統是32位還是64位的方法:

 

$ uname -a

 

含有x86_64的那說明是64位的,例如我的centos6.0 64bit系統執行這個命令後顯示:

 

Linux vm.centos6 2.6.32-71.29.1.el6.x86_64 #1 SMP Mon Jun 27 19:49:27 BST 2011 x86_64 x86_64 x86_64 GNU/Linux

 

 

做好yum源的配置後,如果配置正確執行下面的命令便可以查詢MongoDB相關的信息:

 

查看mongoDB的服務器包的信息

 

[root@vm ~]# yum info mongo-10gen-server

****(省略多行不重要的信息)*********

Available Packages

Name       : mongo-10gen-server

Arch       : x86_64

Version    : 1.8.2

Release    : mongodb_1

Size       : 4.7 M

Repo       : 10gen

Summary    : mongo server, sharding server, and support scripts 

URL        : http://www.mongodb.org

License    : AGPL 3.0

Description: Mongo (from "huMONGOus") is a schema-free document-oriented

           : database.

           :

           : This package provides the mongo server software, mongo sharding

           : server softwware, default configuration files, and init.d scripts.

 

[root@vm ~]#

 

 

查看客戶端工具的信息

 

[root@vm ~]# yum info mongo-10gen

Loaded plugins: fastestmirror

**(省略多行不重要的信息)**

Installed Packages

Name       : mongo-10gen

Arch       : x86_64

Version    : 1.8.2

Release    : mongodb_1

Size       : 55 M

Repo       : 10gen

Summary    : mongo client shell and tools 

URL        : http://www.mongodb.org

License    : AGPL 3.0

Description: Mongo (from "huMONGOus") is a schema-free document-oriented

           : database. It features dynamic profileable queries, full indexing,

           : replication and fail-over support, efficient storage of large

           : binary data objects, and auto-sharding.

           :

           : This package provides the mongo shell, import/export tools, and

           : other client utilities.

 

[root@vm ~]#

 

 

二、安裝MongoDB的服務器端和客戶端工具

 

1.安裝服務器端:

 

[root@vm ~]# yum install mongo-10gen-server

[root@vm ~]# ls /usr/bin/mongo(tab鍵)

mongo         mongod        mongodump     mongoexport   mongofiles    mongoimport   mongorestore  mongos        mongostat

 

-----------------------------------------------

這些就是MongoDB的程序文件

因爲mongo-10gen-server包依賴於mongo-10gen,所以安裝了服務器後就不需要單獨安裝客戶端工具包mongo-10gen了

 

 

 

2.單獨安裝可客戶端:

 

[root@vm ~]# yum install mongo-10gen

 

 

3.檢查

 

[root@vm ~]# /etc/init.d/mongod

Usage: /etc/init.d/mongod {start|stop|status|restart|reload|force-reload|condrestart}

[root@vm ~]# /etc/init.d/mongod status

mongod (pid 1341) is running...

[root@vm ~]#

說明安後服務器端已經在運行了

 

 

 

4.服務器配置: /etc/mongod.conf

 

[root@vm ~]# cat /etc/mongod.conf

# mongo.conf

 

#where to log

logpath=/var/log/mongo/mongod.log

 

logappend=true #以追加方式寫入日誌

 

# fork and run in background

fork = true

 

#port = 27017 #端口

 

dbpath=/var/lib/mongo #數據庫文件保存位置

 

# Enables periodic logging of CPU utilization and I/O wait

#啓用定期記錄CPU利用率和 I/O 等待

#cpu = true

 

# Turn on/off security.  Off is currently the default

# 是否以安全認證方式運行,默認是不認證的非安全方式

#noauth = true

#auth = true

 

# Verbose logging output.

# 詳細記錄輸出

#verbose = true

 

# Inspect all client data for validity on receipt (useful for

# developing drivers)用於開發驅動程序時的檢查客戶端接收數據的有效性

#objcheck = true

 

# Enable db quota management 啓用數據庫配額管理,默認每個db可以有8個文件,可以用quotaFiles參數設置

#quota = true

# 設置oplog記錄等級

# Set oplogging level where n is

#   0=off (default)

#   1=W

#   2=R

#   3=both

#   7=W+some reads

#oplog = 0

 

# Diagnostic/debugging option 動態調試項

#nocursors = true

 

# Ignore query hints 忽略查詢提示

#nohints = true

# 禁用http界面,默認爲localhost:28017

# Disable the HTTP interface (Defaults to localhost:27018).這個端口號寫的是錯的

#nohttpinterface = true

 

# 關閉服務器端腳本,這將極大的限制功能

# Turns off server-side scripting.  This will result in greatly limited

# functionality

#noscripting = true

# 關閉掃描表,任何查詢將會是掃描失敗

# Turns off table scans.  Any query that would do a table scan fails.

#notablescan = true

# 關閉數據文件預分配

# Disable data file preallocation.

#noprealloc = true

# 爲新數據庫指定.ns文件的大小,單位:MB

# Specify .ns file size for new databases.

# nssize = <size>

 

# Accout token for Mongo monitoring server.

#mms-token = <token>

# mongo監控服務器的名稱

# Server name for Mongo monitoring server.

#mms-name = <server-name>

# mongo監控服務器的ping 間隔

# Ping interval for Mongo monitoring server.

#mms-interval = <seconds>

 

# Replication Options 複製選項

 

# in replicated mongo databases, specify here whether this is a slave or master 在複製中,指定當前是從屬關係

#slave = true

#source = master.example.com

# Slave only: specify a single database to replicate

#only = master.example.com

# or

#master = true

#source = slave.example.com

[root@vm ~]#

以上是默認的配置文件中的一些參數,更多參數可以用 mongod -h 命令來查看

 

 

 

[root@vm ~]# mongod -h

Allowed options:

 

General options:

  -h [ --help ]          show this usage information

  --version              show version information

  -f [ --config ] arg    configuration file specifying additional options 指定啓動配置文件路徑

  -v [ --verbose ]       be more verbose (include multiple times for more

                         verbosity e.g. -vvvvv)

  --quiet                quieter output

  --port arg             specify port number 端口

  --bind_ip arg          comma separated list of ip addresses to listen on -

                         all local ips by default 綁定ip,可以多個

  --maxConns arg         max number of simultaneous connections 最大併發連接數

  --logpath arg          log file to send write to instead of stdout - has to

                         be a file, not directory 日誌文件路徑

  --logappend            append to logpath instead of over-writing 日誌寫入方式

  --pidfilepath arg      full path to pidfile (if not set, no pidfile is

                         created) pid文件路徑

  --keyFile arg          private key for cluster authentication (only for

                         replica sets)集羣認證私鑰,僅適用於副本集

  --unixSocketPrefix arg alternative directory for UNIX domain sockets

                         (defaults to /tmp)替代目錄

  --fork                 fork server process

  --auth                 run with security 使用認證方式運行

  --cpu                  periodically show cpu and iowait utilization 定期顯示的CPU和IO等待利用率

  --dbpath arg           directory for datafiles 數據庫文件路徑

  --diaglog arg          0=off 1=W 2=R 3=both 7=W+some reads oplog記錄等級

  --directoryperdb       each database will be stored in a separate directory

                         每個數據庫存儲到單獨目錄

  --journal              enable journaling 記錄日誌,建議開啓,在異常宕機時可以恢復一些數據

  --journalOptions arg   journal diagnostic options

  --ipv6                 enable IPv6 support (disabled by default)

  --jsonp                allow JSONP access via http (has security

                         implications)允許JSONP通過http訪問,該方式存在安全隱患

  --noauth               run without security 不帶安全認證的方式

  --nohttpinterface      disable http interface 禁用http接口

  --noprealloc           disable data file preallocation - will often hurt

                         performance 禁用數據文件的預分配,往往會損害性能

  --noscripting          disable scripting engine 禁用腳本引擎

  --notablescan          do not allow table scans 不允許表掃描

  --nounixsocket         disable listening on unix sockets禁止unix sockets監聽

  --nssize arg (=16)     .ns file size (in MB) for new databases 爲新數據設置.ns文件的大小

  --objcheck             inspect client data for validity on receipt 檢查在收到客戶端的數據的有效性

  --profile arg          0=off 1=slow, 2=all

  --quota                limits each database to a certain number of files (8

                         default)啓用數據庫配額管理,默認每個db可以有8個文件,可以用quotaFiles參數設置

  --quotaFiles arg       number of files allower per db, requires --quota

  --rest                 turn on simple rest api 開啓rest api

  --repair               run repair on all dbs 修復所有數據庫

  --repairpath arg       root directory for repair files - defaults to dbpath修復文件的根目錄,默

                         認爲dbpath指定的目錄

  --slowms arg (=100)    value of slow for profile and console log

  --smallfiles           use a smaller default file size

  --syncdelay arg (=60)  seconds between disk syncs (0=never, but not

                         recommended)與硬盤同步數據的時間,默認60秒,0表示不同步到硬盤(不建議)

  --sysinfo              print some diagnostic system information打印一些診斷系統信息

  --upgrade              upgrade db if needed 如果必要,將數據庫文件升級到新的格式

                        (<=1.0到1.1+升級時所需的)

 

Replication options:    複製選項

  --fastsync            indicate that this instance is starting from a dbpath

                        snapshot of the repl peer 從一個dbpath快照開始同步

  --autoresync          automatically resync if slave data is stale 自動同步,如果從機的數據不是新的

                        自動同步

  --oplogSize arg       size limit (in MB) for op log oplog的大小

 

Master/slave 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從屬服務器上指定要複製的

                        數據庫

  --slavedelay arg      specify delay (in seconds) to be used when applying

                        master ops to slave 指定從主服務器上同步數據的時間間隔 單位秒

 

Replica set options:    副本集選項

  --replSet arg         arg is <setname>[/<optionalseedhostlist>]

                        參數:<名稱>[<種子主機列表>]

 

Sharding options:       分片設置選項

  --configsvr           declare this is a config db of a cluster; default port

                        27019; default dir /data/configdb 聲明這是一個集羣的配置數據庫,

                        默認的端口是27019 默認的路徑是/data/configdb

  --shardsvr            declare this is a shard db of a cluster; default port

                        27018 聲明這是集羣的一個分片數據庫,默認端口爲27018

  --noMoveParanoia      turn off paranoid saving of data for moveChunk.  this

                        is on by default for now, but default will switch

                        關閉偏着保存大塊數據。現在它是默認的,但是會變換

 

[root@vm ~]#


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章