최근 mongodb 사용법을 배우고 있는데, 온라인에서 검색해 보니 많은 사람들이 메모리를 지우기 위해 admin;db.runCommand({closeAllDatabases:1})를 사용하는 것으로 나타났습니다. 3.0에는 그런 명령어가 없습니다.
이 명령이 3.0에서 취소된 건가요, 아니면 여는 방법이 잘못된 건가요? 매뉴얼을 확인했는데 유사한 대체 명령을 찾지 못했는데, 최신 버전에서도 이 명령을 사용할 수 있나요? 그렇다면 어떻게 사용해야 할까요?
저도 최근 mongodb를 배우고 있어요. mongodb 학습자료 http://www.hubwiz.com/course/54bdfcb188dba012b4b95c9c/
많은 사람들이 데이터베이스가 메모리를 너무 많이 차지해서 문제가 있다고 생각합니다. 사실 이는 전혀 문제가 되지 않으며 해결할 필요도 없습니다.
우선, 데이터베이스의 주요 업무는 데이터를 관리하는 것입니다. 데이터 쿼리를 어떻게 더 빠르게 제공할 것인가는 모든 데이터베이스가 해결해야 할 문제입니다. SQLServer, MySQL, MongoDB 등 각 회사의 솔루션은 모두 효율성을 위해 공간을 교환합니다. 일반인의 말로는, 메모리를 최대한 많이 사용하고 유용한 것(인덱스, 데이터 등)을 모두 메모리에 최대한 로드하여 실행 속도를 향상시키는 것입니다. 따라서 이는 확실히 버그가 아니라 예상되는 동작입니다. 반대로 생각해보면, 메모리를 절약하기 위해 데이터베이스가 느리게 실행된다면 이는 데이터베이스의 기본 목적에 위배되는 것입니다.
이것을 이해했다면, 질문을 살펴보겠습니다.
참고:
MongoDB에는 많은 RAM이 필요합니까?
Linux 시스템에서 버퍼와 캐시를 어떻게 비우나요?