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


Migrate to a Partially Contained Database

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

В этом разделе:

Подготовка к миграции базы данных

Перед началом перевода базы данных в частичную автономную модель просмотрите следующие указания.

  • Для этого потребуется понимание модели частично автономной базы данных. Дополнительные сведения см. в разделе Contained Databases.

  • Необходимо понимать риски, связанные с частично автономными базами данных. Дополнительные сведения см. в разделе Security Best Practices with Contained Databases.

  • Автономные базы данных не поддерживают репликацию, отслеживание измененных данных или отслеживание изменений. Убедитесь, что в базе данных не используются эти функции.

  • Просмотрите список функций базы данных, которые изменились для частично автономных баз данных. Дополнительные сведения см. в разделе Измененные компоненты (автономная база данных).

  • Запрос sys.dm_db_uncontained_entities (Transact-SQL) для поиска неконтированных объектов или компонентов в базе данных. Дополнительные сведения см. в разделе

  • Мониторьте XEvent database_uncontained_usage , чтобы определить, когда используются неавтономные функции.

Включение автономных баз данных

Перед созданием автономных баз данных поддержка автономных баз данных должна быть включена на экземпляре Компонент SQL Server Database Engine.

Включение автономных баз данных с помощью Transact-SQL

В следующем примере в экземпляре компонента Компонент SQL Server Database Engineсоздаются автономные базы данных.

sp_configure 'contained database authentication', 1;  
GO  
RECONFIGURE ;  
GO  

Включение автономных баз данных с помощью среды Management Studio

В следующем примере в экземпляре компонента Компонент SQL Server Database Engineсоздаются автономные базы данных.

  1. В обозревателе объектов щелкните правой кнопкой мыши имя сервера и выберите пункт Свойства.

  2. На странице Расширенные в разделе Включение установите параметр Включить автономные базы данных в значение True.

  3. Нажмите кнопку ОК.

Преобразование базы данных в частично автономную

База данных преобразуется в автономную путем изменения ее параметра CONTAINMENT .

Преобразование базы данных в частично автономную с помощью Transact-SQL

В следующем примере база данных показано преобразование Accounting в частично автономную базу данных.

USE [master]  
GO  
ALTER DATABASE [Accounting] SET CONTAINMENT = PARTIAL  
GO  

Преобразование базы данных в частично автономную с помощью среды Management Studio

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

  1. В обозревателе объектов разверните узел Базы данных, щелкните правой кнопкой мыши базу данных, которую нужно преобразовать, а затем выберите пункт Свойства.

  2. На странице Параметры измените параметр Тип вложения на Частичный.

  3. Нажмите кнопку ОК.

Миграция пользователей в пользователей автономной базы данных

В следующем примере выполняется миграция всех пользователей, основанных на имени входа SQL Server , в пользователей автономной базы данных с паролями. Этот пример исключает имена входа, которые не были включены. Этот пример должен выполняться в автономной базе данных.

DECLARE @username sysname ;  
DECLARE user_cursor CURSOR  
    FOR   
        SELECT dp.name   
        FROM sys.database_principals AS dp  
        JOIN sys.server_principals AS sp   
        ON dp.sid = sp.sid  
        WHERE dp.authentication_type = 1 AND sp.is_disabled = 0;  
OPEN user_cursor  
FETCH NEXT FROM user_cursor INTO @username  
    WHILE @@FETCH_STATUS = 0  
    BEGIN  
        EXECUTE sp_migrate_user_to_contained   
        @username = @username,  
        @rename = N'keep_name',  
        @disablelogin = N'disable_login';  
    FETCH NEXT FROM user_cursor INTO @username  
    END  
CLOSE user_cursor ;  
DEALLOCATE user_cursor ;  

См. также:

Автономные базы данных
sp_migrate_user_to_contained (Transact-SQL)
sys.dm_db_uncontained_entities (Transact-SQL)