MongoDB 초보자를 위한 가장 일반적인 MongoDB 명령 [2022]
게시 됨: 2021-01-06목차
MongoDB로 로깅
다음 명령은 MongoDB로 로그인할 때 적용됩니다.
mongo -u <사용자 이름> -p <비밀번호> –authenticationDatabase <db_name> |
참고: 사용자가 액세스하려면 올바른 자격 증명과 데이터베이스 이름이 있어야 합니다.
데이터베이스 생성 및 작업할 데이터베이스 선택
MongoDB에서 ' use' 명령은 새 데이터베이스를 생성하는 첫 번째 단계입니다.
통사론:
db_name 사용 |
실행 시 이 명령은 특정 이름에 대한 새 데이터베이스를 생성합니다. 특정 이름의 데이터베이스가 있는 경우 기존 데이터베이스와 함께 반환됩니다.
데이터베이스를 선택하고 작업을 시작할 때도 동일한 ' 사용' 명령이 사용됩니다.

예시:
데이터베이스 'edudb'를 사용하여 새 교육 프로젝트를 시작한다고 가정합니다. 그러면 명령은 다음과 같습니다.
> edudb 사용 db edudb로 전환 |
읽기: MongoDB 실제 사용 사례: 장점 및 주요 기업
현재 데이터베이스 확인
다음과 같이 db 명령을 사용하여 현재 데이터베이스를 확인할 수도 있습니다.
>db 에두브 |
전체 목록에 표시하려면 데이터베이스에 하나 이상의 파일이나 문서가 있어야 합니다. insert 명령을 사용하면 쉽게 할 수 있습니다.
통사론:
> db . 파일 . 삽입({"이름":"클래스"}) |
모든 현재 데이터베이스 표시
다음 명령을 사용하여 show dbs를 사용하여 현재 데이터베이스를 다음과 같이 확인할 수 있습니다.
>DB 표시 로컬 0.53443GB 테스트 0.12332GB 에듀 브 0.02423GB |
MongoDB에서 테스트는 기본 데이터베이스로 존재합니다. 기본적으로 모든 컬렉션은 테스트에만 저장됩니다.
MongoDB 명령 인터페이스를 사용하여 비 CRUD 작업과 관련된 작업을 관리할 수 있습니다. 인터페이스를 통해 사용자는 서버에서 정확한 정보를 가져와 현재 시나리오를 복제하고 특정 맵 축소 작업을 실행할 수 있습니다.
현재 및 관리 데이터베이스에서 실행할 특정 명령도 있습니다.
MondDB의 현재 데이터베이스의 경우 다음 db.runCommand()를 사용합니다.
db.runCommand( { <명령> } ) |
관리 데이터베이스의 경우 다음 db.adminCommand()를 사용합니다.
DB 관리자 명령( { <명령> } ) |
컬렉션을 만들려면 다음 명령을 사용하십시오.
db.createCollection("컬렉션 이름"); |
컬렉션에 문서를 삽입하려면:
// // 컬렉션에 단일 문서를 삽입하는 경우 // db.<collectionName>.insert({필드1: "값", 필드2: "값"}) // // 컬렉션에 여러 문서를 삽입하는 경우 // db.<collectionName>.insert([{필드1: "값1"}, {필드1: "값2"}]) db.<collectionName>.insertMany([{필드1: "값1"}, {필드1: "값2"}]) |
문서를 저장하고 업데이트하려면
여기에서 '저장' 명령은 완전히 새로운 문서를 삽입하거나 기존 문서를 업데이트하는 두 가지 기능을 모두 수행할 수 있습니다.
db.<collectionName>.save({"_id": new ObjectId("jhgsdjhgdsf"), 필드1: "값", 필드2: "값"}); |
참고: 일치하는 문서 ID가 있으면 업데이트됩니다. 그렇지 않으면 새 문서가 생성됩니다.
사용자, 역할 및 컬렉션 나열
이러한 명령은 사용자 수, 역할 및 컬렉션을 나열합니다.
// // 현재 데이터베이스의 모든 컬렉션을 나열하는 명령 // 쇼 컬렉션; db.getCollectionNames(); // // 현재 데이터베이스의 모든 사용자에게 명령 // 사용자를 표시합니다. db.getUsers(); // // 모든 사용자 역할을 나열하는 명령 // 역할을 보여주다 |
컬렉션 기록을 표시하려면
// // 모든 레코드를 검색하는 명령 // db.<컬렉션 이름>.find(); // // 이 명령은 처음 10개의 결과를 가져옵니다. // db.<컬렉션 이름>.find().limit(10); // // 이 명령은 id로 레코드를 검색합니다. // db.<collectionName>.find({“_id”: ObjectId(“someid”)}); // // 이 명령은 개체와 0 또는 1의 할당된 값이 있는 특정 컬렉션 속성에서 값을 가져옵니다. // db.<collectionName>.find({"_id": ObjectId("someid")}, {필드1: 1, 필드2: 1}); db.<collectionName>.find({"_id": ObjectId("someid")}, {field1: 0}); // field1 제외 // // 이 명령은 데이터베이스의 컬렉션 수를 확인합니다. // db.<컬렉션 이름>.count();
|
관리 명령의 경우
이 명령을 사용하면 전체 크기, 저장 공간 및 다중 통계와 함께 컬렉션 세부 정보에 대한 정보를 얻을 수 있습니다.
// // 이 명령은 수집 통계를 검색합니다. // db.<컬렉션 이름>.stats() db.printCollectionStats() // // // 이 명령은 읽기 및 쓰기에 대한 대기 시간 통계와 특정 수의 작업을 검색합니다. // db.<collectionName>.latencyStats() // // 이 명령은 인덱스 및 데이터에 대한 특정 컬렉션 크기를 검색합니다. // db.<collectionName>.dataSize() // 컬렉션의 크기를 가져옵니다. db.<collectionName>.storageSize() // 저장된 문서의 전체 크기를 가져옵니다. db.<collectionName>.totalSize() // 컬렉션 데이터와 인덱스의 총 크기를 바이트 단위로 가져옵니다. ![]() db.<collectionName>.totalIndexSize() // 컬렉션에 있는 모든 인덱스의 전체 크기를 가져옵니다. |
데이터베이스에서 로그아웃하려면:
db.logout() |
다음과 같이 시작하여 MongoDB에서 사용할 수 있는 다양한 유형의 명령이 있습니다.
사용자 명령
데이터베이스 작업
1. 사용자 명령
집계 명령
이름 | 설명 |
골재 | 그룹에서 집계 작업을 수행하는 명령입니다. |
세다 | 문서의 특정 수를 계산하는 명령입니다. |
별개의 | 컬렉션의 특정 키에 대한 고유 값을 표시하는 명령입니다. |
맵리듀스 | 대규모 데이터 세트에서 맵 축소 작업 집계를 수행하는 명령입니다. |
지리 공간 명령
이름 | 설명 |
지리 검색 | MongoDB haystack 인덱스 기능을 통해 지리정보 쿼리를 수행하는 명령어입니다. |
쿼리 및 쓰기 작업 명령
이름 | 설명 |
삭제 | 하나 이상의 문서를 삭제하는 명령입니다. |
찾기 | 보기에서 하나 또는 여러 개의 문서를 선택하는 명령입니다. |
끼워 넣다 | 보기에 하나 이상의 문서를 삽입하는 명령입니다. |
업데이트 | 하나 이상의 문서를 업데이트하는 명령입니다. |
쿼리 계획 캐시 명령
이름 | 설명 |
계획캐시 지우기 | 컬렉션에서 캐시된 쿼리 계획을 제거하는 명령입니다. |
planCacheClearFilters | 컬렉션에서 인덱스 필터를 지우는 명령입니다. |
planCacheListFilters | 컬렉션의 인덱스 필터를 나열하는 명령입니다. |
planCacheSetFilter | 컬렉션에서 인덱스 필터를 설정하는 명령입니다. |
2. 데이터베이스 작업
인증 문제
이름 | 설명 |
인증하다 | 사용자 이름과 암호를 확인한 후 인증된 세션을 시작하는 명령입니다. |
게넌스 | 인증을 위한 일회용 비밀번호를 생성하는 명령입니다. |
로그 아웃 | 주어진 인증된 세션을 종료하는 명령입니다. |
사용자 관리 명령
이름 | 설명 |
사용자 생성 | 새 사용자를 만드는 명령입니다. |
dropUser | 특정 사용자를 제거하는 명령입니다. |
업데이트 사용자 | 특정 사용자 데이터를 업데이트하는 명령입니다. |
사용자 정보 | 특정 단일 또는 여러 사용자로부터 정보를 검색하는 명령입니다. |
역할 관리 명령
이름 | 설명 |
역할 만들기 | 특정 사용자 역할 및 권한을 구축하는 명령입니다. |
dropRole | 데이터베이스에서 특정 사용자 정의 역할을 삭제하는 명령입니다. |
업데이트 역할 | 특정 사용자 정의 역할을 업데이트하는 명령입니다. |
복제 명령
이름 | 설명 |
적용 작업 | 현재 데이터 세트와 함께 oplog 항목을 추가하는 명령입니다. |
이스마스터 | 현재 레플리카 세트에서 특정 사용자에 대한 정보를 표시하여 마스터인지 여부를 확인하는 명령입니다. |
replSet 시작 | 특정 새 복제본 세트를 초기화하는 명령입니다. |
샤딩 명령어
이름 | 설명 |
추가 샤드 | 새 샤드 또는 샤드 클러스터를 추가하는 명령입니다. |
목록 샤드 | 사전 구성된 샤드 목록을 반환하는 명령입니다. |
샤드 제거 | 클러스터에서 특정 샤드를 제거하는 명령입니다. |
세션 명령
이름 | 설명 |
중단트랜잭션 | 트랜잭션을 중단하는 명령입니다. |
종료 세션 | 시간 초과 전에 세션을 만료하는 명령입니다. |
killAllSessions | 모든 세션을 종료하는 명령 |
새로고침 세션 | 유휴 세션을 새로 고치는 명령입니다. |
시작 세션 | 새 세션을 시작하는 명령입니다. |
관리 명령
이름 | 설명 |
깨끗한 | 내부 네임스페이스를 나타내는 명령입니다. |
만들다 | 컬렉션 또는 특정 보기를 만드는 명령입니다. |
하락 | 현재 데이터베이스에서 특정 컬렉션을 제거하는 명령입니다. |
재인덱스 | 특정 컬렉션에 대한 모든 인덱스를 다시 작성하는 명령입니다. |
일시 휴업 | mongos 또는 mongod 프로세스를 종료하는 명령입니다. |
무료 모니터링 명령
이름 | 설명 |
setFree모니터링 | 이를 통해 사용자는 런타임 내에서 무료 모니터링을 활성화하거나 비활성화할 수 있습니다. |
감사 명령

이름 | 설명 |
logApplication 메시지 | 명령은 현재 감사 로그와 함께 사용자 정의된 메시지를 추가하거나 게시합니다. |
명령 응답
모든 명령 실행에서 MongoDB는 특정 필드가 포함된 응답을 검색합니다.
들 | 설명 |
좋아요 | 명령이 성공(1) 또는 실패(0)임을 나타냅니다. |
가동시간 | 이것은 oplog 항목의 타임스탬프를 사용하여 MongoDB에서 작업을 수행하는 특정 시간을 나타냅니다. 작업이 작동하지 않는 경우 oplog 항목을 생성하지 않습니다. 그런 다음 작동 시간이 반환됩니다. local: 가장 최근 항목부터 oplog까지. 그리고 다수 및 선형화 가능한 읽기의 경우 oplog를 통해 최근 다수 승인 항목의 타임스탬프입니다. |
$clusterTime | 특정 작업을 주문하기 위한 논리적 시간을 정의합니다. |
확인: MongoDB의 CRUD 작업
다음은?
빅 데이터에 대해 더 알고 싶다면 PG 디플로마 빅 데이터 소프트웨어 개발 전문화 프로그램을 확인하십시오. 이 프로그램은 실무 전문가를 위해 설계되었으며 7개 이상의 사례 연구 및 프로젝트를 제공하고 14개 프로그래밍 언어 및 도구, 실용적인 실습을 다룹니다. 워크샵, 400시간 이상의 엄격한 학습 및 최고의 기업과의 취업 지원.
세계 최고의 대학에서 온라인으로 소프트웨어 개발 과정 을 배우십시오 . 이그 제 큐 티브 PG 프로그램, 고급 인증 프로그램 또는 석사 프로그램을 획득하여 경력을 빠르게 추적하십시오.
