명령줄에서 MongoDB 데이터베이스 삭제하기
MongoDB 데이터베이스를 GUI 도구 없이 명령줄(커맨드 라인)에서 바로 삭제하고 싶다면 mongo 셸에 --eval 옵션을 조합하여 사용하면 됩니다. 기본 문법은 다음과 같습니다.
mongo yourDatabaseName --eval "db.dropDatabase()"
여기서 --eval 옵션은 mongo 셸에 접속한 뒤 지정된 JavaScript 코드를 즉시 실행하라는 의미이며, db.dropDatabase()는 현재 접속한 데이터베이스 전체를 삭제하는 명령입니다.
1단계: 현재 존재하는 데이터베이스 목록 확인
먼저 어떤 데이터베이스들이 있는지 확인해 보겠습니다. mongo 셸에서 다음 명령을 실행합니다.
> show dbs;
실행 결과는 다음과 같습니다.
StudentTracker 0.000GB admin 0.000GB config 0.000GB local 0.000GB sample 0.000GB test 0.003GB
목록을 보면 StudentTracker 데이터베이스가 존재하는 것을 확인할 수 있습니다.
2단계: 명령줄에서 데이터베이스 삭제 실행
이제 'StudentTracker' 데이터베이스를 삭제해 보겠습니다. 운영체제의 명령 프롬프트(CMD) 또는 터미널에서 다음과 같이 입력합니다.
C:\Program Files\MongoDB\Server\4.0\bin>mongo StudentTracker --eval "db.dropDatabase()"
위 명령은 MongoDB가 설치된 bin 디렉터리에서 실행한 예시입니다. PATH 환경 변수에 mongo가 등록되어 있다면 어느 위치에서든 실행할 수 있습니다.
3단계: 실행 결과 확인
명령을 실행하면 다음과 같은 출력이 나타납니다.
MongoDB shell version v4.0.5
connecting to: mongodb://127.0.0.1:27017/StudentTracker?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("afc34e93-b4c0-46f0-85bd-b80ed17b8c11") }
MongoDB server version: 4.0.5
{ "dropped" : "StudentTracker", "ok" : 1 }출력 마지막 줄의 { "dropped" : "StudentTracker", "ok" : 1 }는 StudentTracker 데이터베이스가 성공적으로 삭제되었음을 의미합니다. ok : 1은 명령이 오류 없이 정상 처리되었다는 표시입니다.
4단계: 삭제 여부 최종 확인
실제로 데이터베이스가 삭제되었는지 다시 한번 확인해 보겠습니다.
> show dbs
실행 결과는 다음과 같습니다.
admin 0.000GB config 0.000GB local 0.000GB sample 0.000GB test 0.003GB
출력 결과에서 더 이상 'StudentTracker' 데이터베이스가 보이지 않습니다. 이로써 명령줄에서 MongoDB 데이터베이스가 성공적으로 삭제된 것을 확인할 수 있습니다.
주의 사항
db.dropDatabase()는 해당 데이터베이스의 모든 컬렉션과 문서를 영구적으로 삭제하며 복구할 수 없습니다. 따라서 운영 환경에서 실행하기 전에 반드시 대상 데이터베이스 이름을 정확히 확인하고, 필요하다면 mongodump 등으로 백업을 먼저 수행하는 것이 좋습니다.