Подтвердить что ты не робот

Удалите одну базу данных ravendb, в то время как ravendb работает с хостингом других баз данных

Есть ли способ удалить все данные в одной базе данных, пока RavenDB все еще работает, размещая другие базы данных?

В рабочей среде с RavenDB, где размещаются несколько баз данных для разных клиентов, недопустимо останавливать RavenDB для удаления данных из одной базы данных. Нужно ли настраивать инструмент самостоятельно, чтобы удалить отдельные документы для этого?

4b9b3361

Ответ 1

Если вы удалите документ, описывающий базу данных, то вы заблокировали доступ к нему. RavenDB не предоставляет способ фактического удаления базы данных, но база данных будет отключена, если вы удалите документ, описывающий ее. Затем вы можете удалить каталог базы данных или выполнить резервное копирование в соответствии с вашими потребностями.

Ответ 2

В версии 2.0.3 (возможно, даже в предыдущих выпусках) студия вызывает следующую конечную точку http для удаления базы данных:

/администратор/базы данных /nameOfYourDatabase? Трудно удалить = True
? hard-delete = true необязательно.

Основываясь на исходном коде студии, я создал эту функцию:

    public void DeleteDatabase(string name, bool hardDelete = false)
    {
        if (string.IsNullOrEmpty(name))
            throw new ArgumentNullException("name");

        var databaseCommands = _documentStore.DatabaseCommands;
        var relativeUrl = "/admin/databases/" + name;

        if (hardDelete)
            relativeUrl += "?hard-delete=true";

        var serverClient = databaseCommands.ForSystemDatabase() as ServerClient;
        if (serverClient == null)
            throw new ApplicationException("Please use a more intelligent exception here");

        var httpJsonRequest = serverClient.CreateRequest("DELETE", relativeUrl);
        httpJsonRequest.ExecuteRequest();
    }

Ответ 3

Я хочу обновить ваше решение, это единственное решение для "удаления" базы данных.

На самом деле в новой версии (2.0) RavenDB, которые все еще нестабильны, вы можете удалить базу данных с новой версией студии.

Вы можете скачать его здесь: http://hibernatingrhinos.com/builds/ravendb-unstable-v2.0/

Я надеюсь, что это поможет вам в айденде хороший ответ.

Бест, Dario