[mongodb] 명령 행에서 MongoDB 데이터베이스를 삭제하는 방법

내 bash 프롬프트에서 가장 쉬운 방법은 무엇입니까?



답변

이처럼 :

mongo <dbname> --eval "db.dropDatabase()"

명령 행에서 쉘 스크립팅에 대한 자세한 정보는 https://docs.mongodb.com/manual/tutorial/write-scripts-for-the-mongo-shell/#scripting


답변

이를 수행하는 가장 좋은 방법은 mongodb 콘솔에서 수행하는 것입니다.

> use mydb;
> db.dropDatabase();

또는 mongod데이터 디렉토리에서 데이터 파일을 중지 하고 삭제 한 다음 다시 시작할 수 있습니다.

힌트 : 데이터 파일을 하위 폴더로 이동하고 더 이상 필요하지 않은 경우 삭제할 수 있습니다.


답변

나는 이것을 기억하기 쉽다는 것을 알았다.

mongo //to start the mongodb shell

show dbs //to list existing databases

use <dbname> //the <dbname> is the database you'd like to drop

db //should show <dbname> just to be sure I'm working with the right database

db.dropDatabase() //will delete the database & return { "dropped" : "<dbname>", "ok" : 1 }


답변

heredocs 또는 eval이 필요하지 않으며 , mongo그 자체가 통역사 역할을 할 수 있습니다.

#!/usr/bin/env mongo
var db = new Mongo().getDB("someDatabase");
db.dropDatabase();

파일을 실행 가능하게 만들고 실행하십시오.


답변

MongoDB 시작

데이터베이스 삭제 명령은 다음과 같습니다.

1. 먼저 삭제하려는 데이터베이스를 선택하십시오

use < database name >

2. 이것을 사용하십시오.

db.dropDatabase()


답변

“heredoc”을 사용할 수도 있습니다 :

mongo localhost/db <<EOF
db.dropDatabase()
EOF

다음과 같은 결과가 출력됩니다.

mongo localhost/db <<EOF
db.dropDatabase()
EOF
MongoDB shell version: 2.2.2
connecting to: localhost/db
{ "dropped" : "db", "ok" : 1 }
bye

더 복잡한 명령 시퀀스를 원할 경우 heredocs를 사용하여 이와 같은 작업을 수행하고 싶습니다.


답변

다른 방법 :

echo "db.dropDatabase()" | mongo <database name>