쉘에서 스토리지 엔진 점검


35

3.0으로 업그레이드하고 업그레이드 관련 문제가 발생했습니다. 특히,를 mongod통해 시작하려고 할 때 오류가 발생 ssh했습니다 dbpath. 새 YAML 구성 파일에 지정된 값 대신 기본값을 사용하려고했습니다 . 계속해서 컴퓨터를 재부팅 mongod했는데 이제 다시 작동합니다. 나는이 시점에서 약간 편집증이며 스토리지 엔진이 wiredtiger쉘에서 나오는지 확인하는 방법이 있는지 알고 싶습니다 .

답변:


61

현재 사용중인 스토리지 엔진을 찾는 가장 쉬운 방법입니다.

내부 몽고 콘솔 유형

db.serverStatus().storageEngine

현재 사용중인 스토리지 엔진을 반환합니다.

{ "name" : "wiredTiger" }

wiredTiger가 사용되고 있음을 확인한 후 다음을 입력하십시오.

db.serverStatus().wiredTiger

wiredTiger의 모든 구성 세부 정보를 가져옵니다.


2
확인하기 위해 이것은 Windows에서도 작동합니다.
Chris Paton

9

면책 조항 : MongoDB 전문가가 아님

Linux에서 프로세스 목록을 확인하십시오.

WIREDTIGER_CONFIGURED=`ps -ef|grep mongod|grep -i storageengine|grep -ic wiredtiger`
echo ${WIREDTIGER_CONFIGURED}

1은 거기에 있다는 것을 의미합니다

몽고 껍질에서

db.serverStatus()

당신은 이와 같은 것을보아야합니다

"wiredTiger" : {
   ...
   "cache" : {
      "tracked dirty bytes in the cache" : <num>,
      "bytes currently in the cache" : <num>,
      "maximum bytes configured" : <num>,
      "bytes read into cache" :<num>,

또는 스토리지 엔진 이름을

db.serverStatus().storageEngine.name

당신은 얻을 것이다 mmapv1또는wiredTiger

또는 명령 줄에서

MONGO_ENGINE=`mongo -u... -p... --eval "db.serverStatus().storageEngine.name"`

우분투를 사용하고 있으므로 Linux 명령을 시도했지만 0을 표시했지만 db.serverStatus ()는 wiredTiger 노드를 보여줍니다.
ton.yeung

어느 쪽이든 db.serverStatus는 고무적입니다. 이것으로 나는 다른 서버를 업데이트하고 mongo로 티켓을 넣어 명확한 대답을 할 것입니다.
ton.yeung

이것에 대한 업데이트? 이것을 실행할 때 여전히 0을 얻습니다.
chaitanya.varanasi

2
@ chaitanya.varanasi 다른 답변을보십시오. 그것은 당신이 원하는 것을 가지고 있습니다. 명확성을 위해 다음과 같이 말하겠습니다. MongoDB 3.x를 실행하는 경우을 실행하십시오 db.serverStatus().storageEngine.name. mmapv1또는 라고 말합니다 wiredTiger.
RolandoMySQLDBA

--storageEngine매개 변수에 대한 grepping은 매개 변수가 명령 행에 명시 적으로 제공되는 MongoDB 3.0과 같은 제한된 상황에서만 작동합니다. 일반적으로 mongod구성 값은 구성 파일에 제공되므로 ps출력에 표시되지 않습니다 . MongoDB 3.2 이상에서는 WiredTiger가 기본 스토리지 엔진이므로 추가 매개 변수가 필요하지 않습니다. 권장되는 접근 방식 db.serverStatus().storageEngine.namemongo쉘 을 통한 두 번째 제안입니다 . 참고로 MongoDB 2.6 이상을 사용하는 경우 작동하지 않습니다. 유일한 스토리지 엔진은 MMAP입니다.
Stennie

1

mongod.log파일은 사용중인 스토리지 엔진을 설명하는 문자열로 채워됩니다;
그래서 당신은 실행할 수 있습니다 :

cat /var/log/mongodb/mongod.log  | grep STORAGE | tail -n 1

다음과 같은 것을 반환합니다.

2017-06-28T21:45:24.745+0200 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=4G,session_max=20000,eviction=(threads_min=4,threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.