Saya ingin tahu apakah ada perintah untuk menghapus setiap database dari MongoDB saya?
Saya tahu jika saya ingin menghapus hanya satu dataTable, saya hanya perlu mengetikkan nama database seperti kode di bawah ini tetapi saya tidak ingin menentukannya.
mongo DB_NAME --eval 'db.dropDatabase();'
var mongo = db.getMongo(); mongo.getDBNames().forEach(function (dbname) { var db = mongo.getDB(dbname); db.dropDatabase(); });
Coba perintah ini:
sumber
docker exec mongodb sh -c "mongo --quiet --eval 'db.getMongo().getDBNames().forEach(function(i){db.getSiblingDB(i).dropDatabase()})'"
Anda juga dapat melakukan ini dengan perintah mongo sederhana:
sumber
Menambahkan jawaban @ ALoR, untuk kenyamanan Anda dapat meletakkan berikut ini di ~ / .mongorc.js
Kemudian di cangkang mongo bisa langsung Anda lakukan
Dari dokumen:
sumber
Simpan ini ke drop_all_dbs.js:
Sekarang Anda dapat menjalankan:
dan semua database (kecuali admin dan lokal) akan dihapus.
Jawaban ini adalah salinan dari ALoR, cukup perbaiki penurunan dbs sistem
sumber
Anda dapat melakukannya dengan mudah melalui c # driver resmi:
sumber
var mongo = db.getMongo(); mongo.getDBNames().filter(n => n != 'admin' && n != 'local' && n != 'config').forEach(function (dbname) { var db = mongo.getDB(dbname); db.dropDatabase(); });
Yang ini aman untuk disalin dan dijalankan di mongoshell. Penghargaan untuk semua jawaban di atas. Cukup kecualikan database 'config' juga.
sumber
Semudah itu
Atau, Anda dapat memulai sesi mongo di terminal Anda dan menulis
Yang persis sama.
sumber