본문 바로가기

mongo

MongoDB 백업(dump)와 복구(restore) MongoDB를 백업하는 방법에는 Journaling을 지원하는 Block 장치일 경우 snapshot, lock & fsync, mongodump & mongorestore 등의 여러 가지가 있다. mongo.org 에 의하면 증분 백업(incremental backup)을 지원하지는 않고 있으며, 아직까지 이러한 기능을 수행하는 도구 또한 존재하지 않는 상황이다. 데이터베이스 엔진이 중단되지 않아야 하는 상황의 경우 dump & restore를 통한 방법이 일반적이므로 아래에 그 사용법에 대해 정리해 둔다. 이 방식은 쉽게 표현하자면 단순히 레코드 단위로 백업(dump)을 받고, 복구시에도 레코드 단위로 insert를 반복적으로 수행하게 된다. [mongodump] # 전체 데이터베이스 Full ba.. 더보기
MongoDB Replica set 활용(v2.0+ 기준) Mongo DB를 사용한 Replication은 그 조합과 목적에 따라 여러 가지 구조로 구현된다. Master-Slave 이중화 및 다중화, Master-Master 이중화, Master-Master Circular 구조의 다중화, Cluster 기술이 적용된 Replica Set 등, ... 결국은 데이터베이스의 고가용성을 갖추기 위한 목적은 같지만 말이다. 가장 대표적이고 단순한 것은 Master-Slave이다. 이를 통해서 Data redundancy는 구현되지만, Fail-over 문제, 자원의 비효율적 사용 때문에 Master-Master 구조를 선호하는 것이 일반적이다. 또한 그 구조도 비교적 단순하며 Fail-over 를 통한 Availability 뿐 아니라 Read/Write 부하의 분.. 더보기
mongoDB 보안 설정하기(1.2.2 기준) mongo db는 몽고 라는 나라와 전혀 상관이 없다. Humongous 하는 단어에서 만들어진 것. 설치후 아무런 제약 없이 ./mongo 만 치면 db에 접속된다. 개발환경이라면 문제 없지만 개념 없이 쓰다가 큰 일 ㅡ_-? 이 날지도... 우선 mongod를 기동시킬 때 --auth 옵션을 추가해 두자. 다음 글에서 mongod 를 시스템 스타트시에 기동되도록 설정하는 방법을 정리할 것이다. ubuntu, centos, suse 등 거의 모든 linux 머신에서 특정 App을 기동시키는 일반적인 방법이 되겠다. 각설하고, mongo db는 system 영역 내에 admin 이라는 DB 관리를 위한 스키마 영역(database)를 가진다. * 메서드 Name에 대소문자 구분 주의 # ./mongo #.. 더보기