MongoDB在Linux下安装

mongodb安装方式

1.下载安装包并解压

2.规划数据库安装目录

shell> mkdir -p /db/mongo/data
shell> mkdir -p /db/mongo/bin
shell> mv mongodb-linux-i686-2.4.10/bin/* /db/mongo/bin/
shell> touch /db/mongo/logs

将/db/mongo/bin加入环境变量,方便直接使用

3.启动mongodb

shell> mongod --logpath=/db/mongo/logs --logappend --journal --dbpath=/db/mongo/data --port=27017 --fork

4.测试mongodb是否安装成功

shell> mongo
MongoDB shell version: 2.4.10
connecting to: test

> show dbs                   --列出所有db
local        0.03125GB

> db                         --显示当前db
test

5.将MongoDB服务加入开机启动
vi /etc/rc.local在最后追加
mongod --logpath=/db/mongo/logs --logappend --dbpath=/db/mongo/data --port=27017 --fork

mongodb启动方式

  • 命令行方式启动
  • 配置文件方式启动
    与命令行方式相同,指定语法“选项=值” 区分大小写
    命令行中如--fork的开关选项其值设置为true
shell> mongod --help
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 - 27017 by default
  --bind_ip arg               comma separated list of ip addresses to listen on
                              - all local ips by default
  --maxConns arg              max number of simultaneous connections - 20000 by
                              default
  --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)
  --keyFile arg               private key for cluster authentication
  --setParameter arg          Set a configurable parameter
  --nounixsocket              disable listening on unix sockets
  --unixSocketPrefix arg      alternative directory for UNIX domain sockets 
                              (defaults to /tmp)
  --fork                      fork server process   以守护进程方式运行,创建服务器进程
  --syslog                    log to system's syslog facility instead of file 
                              or stdout
  --auth                      run with security
  --cpu                       periodically show cpu and iowait utilization
  --dbpath arg                directory for datafiles - defaults to /data/db/
  --diaglog arg               0=off 1=W 2=R 3=both 7=W+some reads
  --directoryperdb            each database will be stored in a separate 
                              directory
  --ipv6                      enable IPv6 support (disabled by default)
  --journal                   enable journaling
  --journalCommitInterval arg how often to group/batch commit (ms)
  --journalOptions arg        journal diagnostic options
  --jsonp                     allow JSONP access via http (has security 
                              implications)
  --noauth                    run without security
  --nohttpinterface           disable http interface
  --nojournal                 disable journaling (journaling is on by default 
                              for 64 bit)
  --noprealloc                disable data file preallocation - will often hurt
                              performance
  --noscripting               disable scripting engine
  --notablescan               do not allow table scans
  --nssize arg (=16)          .ns file size (in MB) for new databases
  --profile arg               0=off 1=slow, 2=all
  --quota                     limits each database to a certain number of files
                              (8 default)
  --quotaFiles arg            number of files allowed per db, requires --quota
  --repair                    run repair on all dbs
  --repairpath arg            root directory for repair files - defaults to 
                              dbpath
  --rest                      turn on simple rest api
  --shutdown                  kill a running server (for init scripts)
  --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)
  --sysinfo                   print some diagnostic system information
  --upgrade                   upgrade db if needed

Replication options:
  --oplogSize arg       size to use (in MB) for replication op log. default is 
                        5% of disk space (i.e. large is good)

Master/slave options (old; use replica sets instead):
  --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
  --autoresync          automatically resync if slave data is stale

Replica set options:
  --replSet arg           arg is <setname>[/<optionalseedhostlist>]
  --replIndexPrefetch arg specify index prefetching behavior (if secondary) 
                          [none|_id_only|all]

Sharding options:
  --configsvr           declare this is a config db of a cluster; default port 
                        27019; default dir /data/configdb
  --shardsvr            declare this is a shard db of a cluster; default port 
                        27018

mongodb停止方式

  • 向mongodb服务器发送一个SIGINT或者SIGTERM 信号
  • 使用shutdown命令
[1]
使用kill -2|-15  pid
等到当前运行的操作或者文件预分配完成,关闭所有打开的连接,将缓存的数据刷新到磁盘,最后停止
不能使用(kill -9) 导致数据库直接关闭,使数据文件损坏

[2]
>use admin
> db.shutdownServer()
Wed Jun 11 23:50:16.048 DBClientCursor::init call() failed
server should be down...
Wed Jun 11 23:50:16.049 trying reconnect to 127.0.0.1:27017
Wed Jun 11 23:50:16.069 reconnect 127.0.0.1:27017 failed couldn't connect to server 127.0.0.1:27017

整理自网络

svoid
2014-07-25

发布了54 篇原创文章 · 获赞 5 · 访问量 3万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章