CentOS에서 MongoDB를 설치 하는 방법이며 굉장히 쉽습니다.

우선 MongoDB 저장소를 추가 합니다.

[root@ruo91 ~]# nano /etc/yum.repos.d/10gen.repo

[10gen]
name=10gen Repository
baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64
gpgcheck=0
enabled=1

MongoDB를 설치 합니다.

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

mongo-10gen : MongoDB에 관한 도구들이 포함되어 있습니다.
mongo-10gen-server : MongoDB의 init 스크립트 및 mongod와 mongos 데몬이 포함되어 있습니다.

** 만약 yum update 시 MongoDB가 자동으로 업데이트가 되는 것을 방지 하고자 할경우 /etc/yum.conf 파일에 아래와 같은 구문을 넣으시면 됩니다.

[root@ruo91 ~]# nano /etc/yum.conf

exclude=mongo-10gen,mongo-10gen-server

설치가 완료 되면 MongoDB 설정 파일은 /etc/mongod.conf에.. 데이터 파일은 /var/lib/mongo, 로그는 /var/log/mongo에 위치해 있습니다. 또한, MongoDB를 실행하기 위한 mongod 계정이 자동 생성 됩니다.

MongoDB 설정 파일 : /etc/mongod.conf
MongoDB Data 파일 : /var/lib/mongo
MongoDB Log 경로 : /var/log/mongo

[root@ruo91 ~]# cat /etc/passwd | grep mongod
mongod:x:498:498:mongod:/var/lib/mongo:/bin/false

시스템이 부팅시 MongDB가 자동으로 실행 되도록 설정 합니다.

[root@ruo91 ~]# chkconfig mongod on

이제 MongoDB의 데몬을 시작 해봅니다.

[root@ruo91 ~]# service mongod start

Starting mongod: about to fork child process, waiting until server is ready for connections.
forked process: 28327
all output going to: /var/log/mongo/mongod.log
child process started successfully, parent exiting
[  OK  ]

mongod의 로그를 살펴보면 정상적으로 실행이 됐음을 확인 해볼수 있습니다.

[root@ruo91 ~]# cat /var/log/mongo/mongod.log

Mon Aug  5 22:19:11.176 [initandlisten] preallocating a journal file /var/lib/mongo/journal/prealloc.1
Mon Aug  5 22:19:13.010 [initandlisten] preallocating a journal file /var/lib/mongo/journal/prealloc.2
Mon Aug  5 22:19:15.071 [FileAllocator] allocating new datafile /var/lib/mongo/local.ns, filling with zeroes…
Mon Aug  5 22:19:15.077 [FileAllocator] creating directory /var/lib/mongo/_tmp
Mon Aug  5 22:19:15.150 [FileAllocator] done allocating datafile /var/lib/mongo/local.ns, size: 16MB,  took 0.002 secs
Mon Aug  5 22:19:15.187 [FileAllocator] allocating new datafile /var/lib/mongo/local.0, filling with zeroes…
Mon Aug  5 22:19:15.198 [FileAllocator] done allocating datafile /var/lib/mongo/local.0, size: 64MB,  took 0.01 secs
Mon Aug  5 22:19:15.208 [initandlisten] command local.$cmd command: { create: “startup_log”, size: 10485760, capped: true } ntoreturn:1 keyUpdates:0  reslen:37 164ms
Mon Aug  5 22:19:15.213 [websvr] admin web console waiting for connections on port 28017
Mon Aug  5 22:19:15.216 [initandlisten] waiting for connections on port 27017

MongoDB를 사용하고자 할때에는 mongo를 입력하시면 됩니다.

[root@ruo91 ~]# mongo

MongoDB shell version: 2.4.5
connecting to: test
Welcome to the MongoDB shell.
For interactive help, type “help”.
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
>