Ответ 1
Вот так:
mongo <dbname> --eval "db.dropDatabase()"
Подробнее о скрипте оболочки из командной строки здесь: https://docs.mongodb.com/manual/tutorial/write-scripts-for-the-mongo-shell/#scripting
Какой самый простой способ сделать это из моей подсказки 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>
Вот некоторые из них используют полные операции удаления для mongodb, используя оболочку mongo
Чтобы удалить определенный документ в коллекциях: db.mycollection.remove( {name:"stack"} )
Чтобы удалить все документы в коллекциях: db.mycollection.remove()
Чтобы удалить коллекцию: db.mycollection.drop()
чтобы удалить базу данных: сначала перейдите в эту базу данных с use mydb
команды 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 }
>
Обратите внимание, что mydb
все еще используется, поэтому вставка любого ввода в это время снова инициализирует базу данных.
Используя Javascript, вы можете легко создать drop_bad.js script, чтобы удалить свою базу данных:
создать drop_bad.js:
use bad;
db.dropDatabase();
Запустите команду 1 в терминале, чтобы вывести script с помощью оболочки mongo:
mongo < drop_bad.js
Несмотря на то, что существует несколько методов, лучший способ (наиболее эффективный и простой) - использовать db.dropDatabase()
В командной строке сначала подключитесь к mongodb, используя следующую команду:
mongo -h [host-name]:[port:number] -d [dbname] -u [username] -p [password]
вы будете обращаться к БД с <dbname>
.
Выполните следующую команду, чтобы удалить всю базу данных:
db.dropDatabase()
Войдите в вашу командную строку mongoDB: и введите следующие команды. использовать "YOUR_DATABASE_NAME"; db.dropDatabase();
один лайнер удаленный удалить все коллекции из базы данных Монго
примечание должно использовать --host, (-h - справка для команды mongo), а -d не является опцией, выберите db и команду после пароля.
mongo --host <mongo_host>:<mongo_port> -u <db_user> -p <db_pass> <your_db> --eval "db.dropDatabase()"
используйте следующую команду из оболочки Монго, чтобы сбросить дб
использование; db.dropDatabase();
Команда dropDatabase отбрасывает текущую базу данных, удаляя связанные файлы данных. Существует два способа сброса базы данных в MongoDB. Во-первых, если вы хотите сбросить базу данных погода из MongoDB. Чтобы сбросить базу данных, первое, что нужно сделать, - это переключиться на базу данных с помощью команды use и дать команду drop, как показано ниже.
использовать погоду
db.runCommand({dropDatabaase: 1})
Во-вторых, оболочка mongo также предоставляет вспомогательный метод db.dropDatabase(). Шаги такие же, как указано выше.
использовать погоду
db.dropDatabase()
Если вам нравится больше узнать об этом, пожалуйста, посмотрите http://docs.mongodb.org/manual/reference/command/dropDatabase/