1. 서버 설정/정보 확인하기

/* 서버 빌드 정보 (버전 포함) */
db.serverBuildInfo();

/* 서버 런타임 정보 (시스템 정보) */
db.serverStatus();

/* 실행 옵션 (MongoDB 설정) */
db.serverCmdLineOpts();

/* 해당 DB 의 Storage 정보 (간략 정보) */
db.stats();


2. Replica Set 정보 확인하기

/* Replica Set 멤버 설정 */

rs.conf();


/* Replica Set 멤버 상태 */

rs.status();



Posted by jungtae17
,

링크1> http://luckyyowu.tistory.com/353


링크2> https://github.com/uyu423/TIL/blob/master/Vim/Syntastic%20Plugin%EC%97%90%20eslint-es6-airbnb%20%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0.md


Posted by jungtae17
,

1. 설정 파일에 ReplicaSet 옵션을 추가한다.

replication:
  replSetName: {ReplicaSet이름}

2. MongoDB 서버 실행 후 Primary 가 될 MongoDB 서버로 접속한다.

   a. ReplicaSet 초기화한다.
rs.initiate();

   b. Primary 이름을 변경한다.
conf = rs.conf();

conf.members[0].host = "IP주소:포트";

rs.reconfig(conf);
   참고> MongoDB 는 hostname 을 기본 값으로 사용하기 때문에 문제가 생기는 경우가 있음.

3. ReplicaSet 멤버를 추가한다.

/* 일반 멤버 추가 */
rs.add("IP주소:포트");

/* Arbiter 멤버 추가 */
rs.addArb("IP주소:포트");


4. Delayed 멤버를 설정해야 될 경우

conf = rs.conf();

conf.members[{멤버번호}].hidden = true;
conf.members[{멤버번호}].priority = NumberInt(0);
conf.members[{멤버번호}].slaveDelay = NumberLong({지연시간(초)});

rs.reconfig(conf);



Posted by jungtae17
,

npm build

npm cache

npm config

npm dedupe

npm install

npm link

npm list

npm outdated

npm pack

npm ping

npm rebuild

npm repo

npm search


참고> https://docs.npmjs.com/


Posted by jungtae17
,

1. Collection Export

mongoexport \
  --host {ReplicaSet이름}/{호스트:포트,...} \
  --readPreference primary \
  --username {사용자계정} \
  --password {비밀번호} \
  --authenticationDatabase admin \
  --db {DB이름} \
  --collection {Collection이름} \
  --out {출력파일}



2. Collection Import

mongoimport \
  --host {ReplicaSet이름}/{호스트:포트,...} \
  --writeConcern 1 \
  --username {사용자계정} \
  --password {비밀번호} \
  --authenticationDatabase admin \
  --db {DB이름} \
  --collection {Collection이름} \
  --drop \
  --file {입력파일}



Posted by jungtae17
,

1. DB 또는 Collection 백업하기

mongodump \

  --host={호스트:포트} \

  --readPreference=secondary \

  --username={관리자계정} \

  --password={비밀번호} \

  --authenticationDatabase=admin \

  --db={DB이름} \

  --collection={Collection이름} \

  --query='{DB 쿼리 조건}' \

  --gzip \

  --out={결과가 저장될 경로명}

  --archive={결과가 저장될 파일명}


옵션> --out--archive 옵션은 중복 사용할 수 없음


참고> https://docs.mongodb.com/manual/reference/program/mongodump/


2. 복원하기

mongorestore ^

  --host={호스트:포트} ^

  --db={DB이름} ^

  --collection={Collection이름} ^

  --drop ^

  --gzip ^

  {복원될 데이터가 있는 경로명}

  --archive={복원될 데이터가 있는 파일명}


옵션> 복원할 경로명--archive 옵션은 중복 사용할 수 없음


참고> https://docs.mongodb.com/manual/reference/program/mongorestore/


Posted by jungtae17
,

MongoDB 접속을 위한 URI 문자열을 이용하여 Replica Set 옵션(Write Concern, Read Concern, Read Preference)을 설정할 수 있다.


1. Replica Set 옵션

2. Write Concern 옵션


3. Read Concern 옵션


4. Read Preference 옵션



Posted by jungtae17
,

mongo shell 로 접속할 때 다음과 같은 메시지를 보게 될 때가 있다.


$ mongo
MongoDB shell version: 3.2.9
connecting to: test
Server has startup warnings:
2016-08-18T11:36:03.292+0900 I CONTROL  [initandlisten]
2016-08-18T11:36:03.292+0900 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2016-08-18T11:36:03.292+0900 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2016-08-18T11:36:03.292+0900 I CONTROL  [initandlisten]
2016-08-18T11:36:03.292+0900 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2016-08-18T11:36:03.292+0900 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2016-08-18T11:36:03.292+0900 I CONTROL  [initandlisten]
>


아래의 링크를 참고하여 해결할 수 있다.


https://docs.mongodb.com/manual/tutorial/transparent-huge-pages/#init-script


Posted by jungtae17
,

1. .NET Core 설치


2. 프로젝트 만들기

$ mkdir project

$ cd project

$ dotnet new --type Lib


3. 프로젝트 빌드

$ dotnet restore
$ dotnet build


4. edge 모듈을 사용할 경우 (필요한 패키지 설치)

$ sudo apt-get -y install g++ make



'Node.js > npm 모듈' 카테고리의 다른 글

유용한 npm 명령어  (0) 2016.09.26
npm 설치 중 'fetch failed' 오류 해결 방법  (0) 2015.12.16
npm 스크립트 사용하기  (0) 2015.12.07
socket.io 관련 npm 모듈  (0) 2015.11.23
Posted by jungtae17
,

aggregation 의 $project 스테이지에서 필드값이 아닌 상수값을 지정할 수 있다.


아래와 같이 $literal 오퍼레이터를 이용한다.


db.statistics.aggregate([
  { $match: { _id: { $lte: 1000 } } },
  { $project: { _id: 0, "Tags": { $literal: "User" } } }
]);


Tags 필드 값은 "User"(문자열)으로 반환된다.



Posted by jungtae17
,