CentOS6.5上源码安装MongoDB3.2.1


1、环境准备:

1 mkdir /home/mongodb           #创建MongoDB程序存放目录
2 mkdir /data/mongodata -p      #创建数据存放目录
3 mkdir /data/log/mongolog -p   #创建日志存放目录

2、下载:

1 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.2.1.tgz

3、安装:

1 tar xf mongodb-linux-x86_64-3.2.1.tgz
2 cd mongodb-linux-x86_64-3.2.1
3 cp -r * /home/mongodb

为了便于命令启动,需要编辑全局变量PATH

1 vim /etc/profile.d/mongo.sh
2 export PATH=$PATH:/home/mongodb/bin
source /etc/profile.d/mongo.sh

4、启动服务

首先查看mongod的帮助信息

  1 [root@test ~]# mongod --help
  2 Options:
  3 
  4 General options:
  5   -h [ --help ]                         show this usage information
  6   --version                             show version information
  7   -f [ --config ] arg                   configuration file specifying 
  8                                         additional options
  9   -v [ --verbose ] [=arg(=v)]           be more verbose (include multiple times
 10                                         for more verbosity e.g. -vvvvv)
 11   --quiet                               quieter output
 12   --port arg                            #指定mongodb服务的端口号,默认为:27017 
 13   --bind_ip arg                         #在多网卡的机器上指定mongodb服务绑定到哪一个ip上 
 15   --ipv6                                enable IPv6 support (disabled by 
 16                                         default)
 17   --maxConns arg                        #指定最大客户端连接数 
 19   --logpath arg                         #指定日志文件路径,必须是一个文件,而不是目录 
 20   --syslog                              log to system's syslog facility instead
 23                                         of file or stdout
 24   --syslogFacility arg                  syslog facility used for mongodb syslog
 25                                         message
 26   --logappend                           #以追加的方式打印日志到--logpath参数指定的日志文件中 
 28   --logRotate arg                       set the log rotation behavior 
 29                                         (rename|reopen)
 30   --timeStampFormat arg                 Desired format for timestamps in log 
 31                                         messages. One of ctime, iso8601-utc or 
 32                                         iso8601-local
 33   --pidfilepath arg                     full path to pidfile (if not set, no 
 34                                         pidfile is created)
 35   --keyFile arg                         private key for cluster authentication
 36   --setParameter arg                    Set a configurable parameter
 37   --httpinterface                       enable http interface
 38   --clusterAuthMode arg                 Authentication mode used for cluster 
 39                                         authentication. Alternatives are 
 40                                         (keyFile|sendKeyFile|sendX509|x509)
 41   --nounixsocket                        disable listening on unix sockets
 42   --unixSocketPrefix arg                alternative directory for UNIX domain 
 43                                         sockets (defaults to /tmp)
 44   --filePermissions arg                 permissions to set on UNIX domain 
 45                                         socket file - 0700 by default
 46   --fork                                #以daemon的形式运行服务进程
 47   --auth                                run with security
 48   --noauth                              run without security
 49   --jsonp                               allow JSONP access via http (has 
 50                                         security implications)
 51   --rest                                turn on simple rest api
 52   --slowms arg (=100)                   value of slow for profile and console 
 53                                         log
 54   --profile arg                         0=off 1=slow, 2=all
 55   --cpu                                 periodically show cpu and iowait 
 56                                         utilization
 57   --sysinfo                             print some diagnostic system 
 58                                         information
 59   --noIndexBuildRetry                   don't retry any index builds that were 
 60                                         interrupted by shutdown
 61   --noscripting                         disable scripting engine
 62   --notablescan                         do not allow table scans
 63   --shutdown                            kill a running server (for init 
 64                                         scripts)
 65 
 66 Replication options:
 67   --oplogSize arg                       size to use (in MB) for replication op 
 68                                         log. default is 5% of disk space (i.e. 
 69                                         large is good)
 70 
 71 Master/slave options (old; use replica sets instead):
 72   --master                              master mode
 73   --slave                               slave mode
 74   --source arg                          when slave: specify master as 
 75                                         <server:port>
 76   --only arg                            when slave: specify a single database 
 77                                         to replicate
 78   --slavedelay arg                      specify delay (in seconds) to be used 
 79                                         when applying master ops to slave
 80   --autoresync                          automatically resync if slave data is 
 81                                         stale
 82 
 83 Replica set options:
 84   --replSet arg                         arg is <setname>[/<optionalseedhostlist
 85                                         >]
 86   --replIndexPrefetch arg               specify index prefetching behavior (if 
 87                                         secondary) [none|_id_only|all]
 88   --enableMajorityReadConcern           enables majority readConcern
 89 
 90 Sharding options:
 91   --configsvr                           declare this is a config db of a 
 92                                         cluster; default port 27019; default 
 93                                         dir /data/configdb
 94   --configsvrMode arg                   Controls what config server protocol is
 95                                         in use. When set to "sccc" keeps server
 96                                         in legacy SyncClusterConnection mode 
 97                                         even when the service is running as a 
 98                                         replSet
 99   --shardsvr                            declare this is a shard db of a 
100                                         cluster; default port 27018
101 
102 Storage options:
103   --storageEngine arg                   what storage engine to use - defaults 
104                                         to wiredTiger if no data files present
105   --dbpath arg                          #指定数据目录路径
107   --directoryperdb                      each database will be stored in a 
108                                         separate directory
109   --noprealloc                          disable data file preallocation - will 
110                                         often hurt performance
111   --nssize arg (=16)                    .ns file size (in MB) for new databases
112   --quota                               limits each database to a certain 
113                                         number of files (8 default)
114   --quotaFiles arg                      number of files allowed per db, implies
115                                         --quota
116   --smallfiles                          use a smaller default file size
117   --syncdelay arg (=60)                 seconds between disk syncs (0=never, 
118                                         but not recommended)
119   --upgrade                             upgrade db if needed
120   --repair                              run repair on all dbs
121   --repairpath arg                      root directory for repair files - 
122                                         defaults to dbpath
123   --journal                             enable journaling
124   --nojournal                           disable journaling (journaling is on by
125                                         default for 64 bit)
126   --journalOptions arg                  journal diagnostic options
127   --journalCommitInterval arg           how often to group/batch commit (ms)
128 
129 WiredTiger options:
130   --wiredTigerCacheSizeGB arg           maximum amount of memory to allocate 
131                                         for cache; defaults to 1/2 of physical 
132                                         RAM
133   --wiredTigerStatisticsLogDelaySecs arg (=0)
134                                         seconds to wait between each write to a
135                                         statistics file in the dbpath; 0 means 
136                                         do not log statistics
137   --wiredTigerJournalCompressor arg (=snappy)
138                                         use a compressor for log records 
139                                         [none|snappy|zlib]
140   --wiredTigerDirectoryForIndexes       Put indexes and data in different 
141                                         directories
142   --wiredTigerCollectionBlockCompressor arg (=snappy)
143                                         block compression algorithm for 
144                                         collection data [none|snappy|zlib]
145   --wiredTigerIndexPrefixCompression arg (=1)
146                                         use prefix compression on row-store 
147                                         leaf pages

启动服务示例:

1 mongod --dbpath=/data/mongodata --logpath=/data/log/mongolog/mongodb.log --logappend --fork

查看是否启动:

1 netstat -tnlp | grep mongod
2 tcp        0      0 0.0.0.0:27017               0.0.0.0:*                   LISTEN      17909/mongod

以上可看出端口27017已经运行

5、测试

启动mongodb的shell:

 1 [root@test ~]# mongo
 2 MongoDB shell version: 3.2.1
 3 connecting to: test
 4 Server has startup warnings: 
 5 2016-01-25T16:12:52.960+0800 I CONTROL  [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
 6 2016-01-25T16:12:52.960+0800 I CONTROL  [initandlisten] 
 7 2016-01-25T16:12:52.960+0800 I CONTROL  [initandlisten] 
 8 2016-01-25T16:12:52.960+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
 9 2016-01-25T16:12:52.960+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
10 2016-01-25T16:12:52.960+0800 I CONTROL  [initandlisten] 
11 2016-01-25T16:12:52.960+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
12 2016-01-25T16:12:52.960+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
13 2016-01-25T16:12:52.960+0800 I CONTROL  [initandlisten] 
14 > help
15     db.help()                    help on db methods
16     db.mycoll.help()             help on collection methods
17     sh.help()                    sharding helpers
18     rs.help()                    replica set helpers
19     help admin                   administrative help
20     help connect                 connecting to a db help
21     help keys                    key shortcuts
22     help misc                    misc things to know
23     help mr                      mapreduce
24 
25     show dbs                     show database names
26     show collections             show collections in current database
27     show users                   show users in current database
28     show profile                 show most recent system.profile entries with time >= 1ms
29     show logs                    show the accessible logger names
30     show log [name]              prints out the last segment of log in memory, 'global' is default
31     use <db_name>                set current database
32     db.foo.find()                list objects in collection foo
33     db.foo.find( { a : 1 } )     list objects in foo where a == 1
34     it                           result of the last line evaluated; use to further iterate
35     DBQuery.shellBatchSize = x   set default number of items to display on shell
36     exit                         quit the mongo shell
37 > show dbs
38 local  0.000GB
39 > 

至此,MongoDB3.2.1安装完毕。

 

更多MongoDB相关教程见以下内容

CentOS 编译安装 MongoDB与mongoDB的php扩展

CentOS 6 使用 yum 安装MongoDB及服务器端配置

Ubuntu 13.04下安装MongoDB2.4.3

MongoDB入门必读(概念与实战并重)

Ubunu 14.04下MongoDB的安装指南

《MongoDB 权威指南》(MongoDB: The Definitive Guide)英文文字版[PDF]

Nagios监控MongoDB分片集群服务实战

基于CentOS 6.5操作系统搭建MongoDB服务

MongoDB 的详细介绍:请点这里
MongoDB 的下载地址:请点这里

本文永久更新链接地址

相关内容

    暂无相关文章