Как удалить базу данных, используя node.js и MongoDB Atlas? - PullRequest
0 голосов
/ 11 апреля 2019

Я новичок в MongoDB и node.js и хочу знать, как удалить базу данных. Я искал и обнаружил, что это делается с помощью метода dropDatabase(). Проблема в том, что он показывает MongoError: user is not allowed to do action [dropDatabase] on [test.]. Я также искал эту ошибку, и я нашел ответ, что пользователь должен быть зарегистрирован как Data Access Read Write. Тем не менее, мой пользователь в атласе Монго зарегистрирован как Project Owner и, как говорится в ответе. Я удалил Project Owner, и он по-прежнему отображает ошибку.

MongoClient.connect(uri, { useNewUrlParser: true }, (err, client)=>{
    if(err) throw err;
    console.log("Connected...");
    const db = client.db("test");
    db.dropDatabase();
    console.log("asdfghj")
    client.close();
});

Фактически, всякий раз, когда я искал, чтобы решить проблему, набирая Mongo atlas в строке поиска, результаты были похожи на How to delete cluster in mongo atlas, хотя я набираю delete database in mongo atlas. Так что я не знаю, можно ли удалить базу данных в атласе Монго. Заранее спасибо.

1 Ответ

0 голосов
/ 11 апреля 2019

Вы можете войти в Atlas, щелкнуть имя кластера, перейти на вкладку «коллекции», а затем при наведении курсора на имя базы данных слева, появится значок мусорной корзины, которая удалит БД (при условии, что ваш пользовательимеет соответствующие разрешения)

Если вы хотите удалить базу данных в коде, нет способа сделать это напрямую из mongoose, но вы можете получить доступ к базовому драйверу mongodb:

mongoose.connection.db.dropDatabase(cb)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...