Development Tip

명령 줄에서 MongoDB 데이터베이스를 삭제하려면 어떻게해야합니까?

yourdevel 2020. 9. 28. 10:14
반응형

명령 줄에서 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데이터 디렉토리에서 데이터 파일을 중지 하고 삭제 한 다음 다시 시작할 수 있습니다.

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


당신은 heredocs 또는 평가를 필요로하지 않는 , mongo그 자체가 통역의 역할을 수행 할 수 있습니다.

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

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


기억하기 쉬웠습니다.

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 }

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>

다음은 mongo shell을 사용하여 mongodb에 대한 전체 삭제 작업을 사용하는 것입니다.

컬렉션에서 특정 문서삭제 하려면 :db.mycollection.remove( {name:"stack"} )

컬렉션의 모든 문서삭제 하려면 :db.mycollection.remove()

컬렉션 삭제 하기 :db.mycollection.drop()

데이터베이스삭제하려면 먼저 use mydb명령 으로 해당 데이터베이스로 이동 한 다음

db.dropDatabase()

명령 프롬프트 또는 blash에서 직접 : mongo mydb --eval "db.dropDatabase()


터미널에서 실행 :

mongo // To go to shell

show databases // To show all existing databases.

use <DATA_BASE> // To switch to the wanted database.

db.dropDatabase() // To remove the current database.

다른 터미널 창을 열고 다음 명령을 실행하십시오.

mongodb
use mydb
db.dropDatabase()

해당 작업의 출력은 다음과 같습니다.

MAC:FOLDER USER$ mongodb
> show databases
local      0.78125GB
mydb       0.23012GB
test       0.23012GB
> use mydb
switched to db mydb
>db.dropDatabase()
{ "dropped" : "mydb", "ok" : 1 }
>

Please note that mydb is still in use, hence inserting any input at that time will initialize the database again.


Using Javascript, you can easily create a drop_bad.js script to drop your database:

create drop_bad.js:

use bad;
db.dropDatabase();

Than run 1 command in terminal to exectue the script using mongo shell:

mongo < drop_bad.js

Eventhough there are several methods, The best way (most efficient and easiest) is using db.dropDatabase()


In you command prompt, First connect to mongodb using following command:

mongo -h [host-name]:[port:number] -d [dbname] -u [username] -p [password]

you will be accessing db with <dbname>.

Run the following command to drop the whole database:

db.dropDatabase()

LogIn into your mongoDB command line: And type the below commands. use "YOUR_DATABASE_NAME"; db.dropDatabase();


one liner remote remove all collections from mongo database

note must use --host, (-h is help for mongo command), and -d is not an option, select the db and command after password.

mongo --host <mongo_host>:<mongo_port> -u <db_user> -p <db_pass> <your_db> --eval "db.dropDatabase()"

use following command from mongo shell to drop db

use ; db.dropDatabase();

참고URL : https://stackoverflow.com/questions/8857276/how-do-i-drop-a-mongodb-database-from-the-command-line

반응형