MongoDB Server 설치 (몽고DB 서버 설치)
운영체제 : LINUX - Redhat 7.3 64bit (리눅스 레드햇)
설치방식 : 소스설치 ("mongodb-linux-x86_64-3.2.13.tgz")
아래 순서대로 차근차근 따라오시면 정상적으로 설치 가능하실거에요 !
[설치]
*** 모든 절차는 ROOT 계정으로 수행 합니다 ***
1. 소스 다운로드
(다운로드 경로는 임의로 / (root) 경로로 지정하겠습니다)
$ cd /
2. 압축 해제 후 디렉토리명칭 변경
$ tar -zxvf mongodb-linux-x86_64-3.2.13.tgz
$ mv mongodb-linux-x86_64-rhel70-3.4.4/ mongodb
3. 환경변수 등록
$ vi ~/.bashrc
(아래 내용을 "~/.bashrc" 파일에 작성)
export PATH=/mongodb/bin:$PATH
4. bashrc 적용
$ source ~/.bashrc
5. 설치확인
$ mongo --version
(버전출력되면 정상)
[DB 설정파일 작성 및 실행]
6. 변경 전 open file 수 변경확인 (아마 1024 일것이다)
$ ulimit -a
7. linux open file 수 설정
$ ulimit -n 65536 (리눅스 오픈파일수 최대치)
$ vi /etc/security/limits.conf nproc)
(재부팅 후에도 반영될수있도록 아래내용 작성)
(혹시모르니 openfile 말고도 open proccess 도 변경함)
root soft nproc 65536
root hard nproc 65536
root soft nofile 65536
root hard nofile 65536
8. 변경 후 open file 수 변경확인
$ ulimit -a
9. DB 스토리지 생성
$ mkdir -p /mongodb/data/db
10. LOG 디렉토리 생성
$ mkdir -p /mongodb/log
11. mongo.conf 파일 작성
$ vi /mongodb/mongod.conf
(아래내용 작성)
dbpath=/mongodb/data/db
logpath=/mongodb/log/mongodb.log
logappend=true
fork=true
port=27017
#이걸살리면.. 퍼미션오류 남 error number 1
#pidfilepath=/var/run/mongodb/mongod.pid
#bind_ip=127.0.0.1,106.254.245.42
bind_ip=0.0.0.0
# Disables write-ahead journaling
#nojournal=true
# Enables periodic logging of CPU utilization and I/O wait
#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
#quota=true
# Set oplogging level where n is
# 0=off (default)
# 1=W
# 2=R
# 3=both
# 7=W+some reads
#diaglog=0
# Ignore query hints
#nohints=true
# Enable the HTTP interface (Defaults to port 28017).
#httpinterface=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
# Specify .ns file size for new databases.
# nssize=<size>
# Replication Options
# in replicated mongo databases, specify the replica set name here
#replSet=setname
# maximum size in megabytes for replication operation log
#oplogSize=1024
# path to a key file storing authentication info for connections
# between replica set members
#keyFile=/path/to/keyfile
12. 실행
(mongod.conf 에 작성한 내용을 반영해서 실행하려면 아래와같이 수행)
$ mongod --config /mongodb/mongod.conf
13. 서비스 스크립트 작성
(소스설치의 경우 자동으로 서비스등록이 되질 않으므로..직접 해준다)
$ vi /mongodb/mongodb
(아래내용 작성)
#!/bin/sh
# mongodb mongodb service shell
# chkconfig: 2345 90 90
# description: mongodb
# processname: mongod
# config: /mongodb/mongod.conf
# pidfile:
MONGO_HOME='/mongodb'
MONGO_CONF_PATH=$MONGO_HOME/mongod.conf
MONGO_DATA_PATH=$MONGO_HOME/data/db
MONGO_LOG_PATH=$MONGO_HOME/log/mongodb.log
case "$1" in
start)
echo -en "Starting mongoDB...\n"
$MONGO_HOME/bin/mongod --config $MONGO_CONF_PATH
echo -e "\n"
;;
stop)
echo -en "Shutting down mongoDB...\n"
$MONGO_HOME/bin/mongod --config $MONGO_CONF_PATH --shutdown
echo -e "\n"
;;
restart)
$0 stop
sleep 5
$0 start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0
14. 서비스 스크립트 실행권한 조정
$ chmod 755 /mongodb/mongodb
15. 서비스 등록
$ cp /mongodb/mongodb /etc/rc.d/init.d/mongodb
$ chkconfig --add mongodb
16. 서비스 구동 테스트
$ service mongodb start
$ service mongodb restart
$ service mongodb stop
[추가설정]
17 Configure SELinux
$ vi /etc/selinux/config
(아래내용 작성)
SELINUX=disabled
댓글
댓글 쓰기