Поделиться через


Удалить основную базу данных из группы доступности Always On

Область применения:SQL Server

В этом разделе описывается удаление базы данных-источника и соответствующих баз данных-получателей из группы доступности AlwaysOn с использованием среды SQL Server Management Studio, Transact-SQLили PowerShell в SQL Server.

Требования и ограничения

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

Разрешения

Необходимо разрешение ALTER AVAILABILITY GROUP для группы доступности, разрешение CONTROL AVAILABILITY GROUP, разрешение ALTER ANY AVAILABILITY GROUP или разрешение CONTROL SERVER.

Использование среды SQL Server Management Studio

Удаление базы данных доступности

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

  2. Разверните узел Высокий уровень доступности AlwaysOn и узел Группы доступности .

  3. Выберите группу доступности и разверните узел Базы данных доступности .

  4. Этот шаг зависит от того, удаляется несколько баз данных или только одна база данных.

  5. Щелкните правой кнопкой мыши выбранную базу данных или базы данных и выберите в контекстном меню команду Удаление базы данных из группы доступности .

  6. В диалоговом окне Удаление баз данных из группы доступности нажмите кнопку ОК, чтобы удалить все выбранные базы данных. Если все удалять не нужно, нажмите кнопку Отмена.

Использование Transact-SQL

Удаление базы данных доступности

  1. Подключитесь к экземпляру сервера, на котором находится первичная реплика.

  2. Используйте оператор ALTER AVAILABILITY GROUP следующим образом:

    ALTER AVAILABILITY GROUP имя_группы УДАЛИТЬ БАЗУ ДАННЫХ имя_базы_данных_доступности

    где имя_группы — имя группы доступности, а имя_базы_данных_доступности — имя удаляемой базы данных.

    В следующем примере удаляется база данных с именем Db6 из группы доступности MyAG .

    ALTER AVAILABILITY GROUP MyAG REMOVE DATABASE Db6;  
    

Использование PowerShell

Удаление базы данных доступности

  1. Перейдите в каталог (cd) экземпляра сервера, в котором находится первичная реплика.

  2. Используйте командлет Remove-SqlAvailabilityDatabase , указав имя базы данных доступности, которую требуется удалить из группы доступности. Если вы подключены к экземпляру сервера, на котором размещается первичная реплика, из группы доступности удаляются первичная база данных и соответствующие вторичные базы данных.

    Например, следующая команда удаляет базу данных доступности MyDb9 из группы доступности с именем MyAg. Поскольку команда выполняется в экземпляре сервера, на котором размещается первичная реплика, из группы доступности удаляется как база данных-источник, так и все соответствующие базы данных-получатели. Синхронизация данных для этой базы данных во всех вторичных репликах больше происходить не будет.

    Remove-SqlAvailabilityDatabase `   
    -Path SQLSERVER:\Sql\PrimaryComputer\InstanceName\AvailabilityGroups\MyAg\AvailabilityDatabases\MyDb9
    

    Примечание.

    Чтобы просмотреть синтаксис командлета, используйте командлет Get-Help в среде SQL Server PowerShell. Дополнительные сведения см. в разделе Get Help SQL Server PowerShell.

Настройка и использование поставщика SQL Server PowerShell

Дальнейшие действия. После удаления базы данных доступности из группы доступности

При удалении базы данных доступности из группы доступности выполнение синхронизации данных между бывшей главной базой данных и соответствующими вторичными базами данных прекращается. Бывшая основная база данных остаётся доступной в интернете. Все соответствующие вторичные базы данных переводятся в состояние RESTORING.

На данном этапе с удаленной вторичной базой данных можно поступить следующим образом.

  • Если данная вторичная база данных больше не нужна, ее можно удалить.

    Дополнительные сведения см. в разделе Удаление базы данных.

  • Если вы хотите получить доступ к вспомогательной базе данных после ее удаления из группы доступности, вы можете восстановить эту базу данных. Однако, если вы восстанавливаете удаленную вторичную базу данных, появляются две разрозненные, независимые базы данных с одним именем. Нужно обеспечить, чтобы клиент имел доступ только к одной из них — обычно самой последней базе данных-источнику.

    Дополнительные сведения см. в разделе Восстановление базы данных без восстановления данных (Transact-SQL).

См. также

Обзор групп доступности Always On (SQL Server)
Удалить вторичную базу данных из группы доступности (SQL Server)