Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:SQL Server
Este tópico discute como se preparar para alterar para o modelo de banco de dados parcialmente contido e, em seguida, fornece as etapas de migração.
Neste tópico:
Convertendo um banco de dados em banco de dados parcialmente contido
Migrando usuários para usuários de banco de dados independente
Preparando-se para migrar um banco de dados
Analise os itens a seguir ao considerar a migração de um banco de dados para o modelo de banco de dados parcialmente contido.
Você deve entender o modelo de banco de dados parcialmente contido. Para obter mais informações, consulte Bancos de dados contidos.
Você deve entender os riscos que são exclusivos de bancos de dados parcialmente contidos. Para obter mais informações, consulte Práticas recomendadas de segurança com bancos de dados contidos.
Os bancos de dados contidos não oferecem suporte à replicação, à captura de dados de alteração ou ao controle de alterações. Confirme se o banco de dados não usa esses recursos.
Analise a lista de recursos de banco de dados modificados para bancos de dados parcialmente contidos. Para obter mais informações, consulte Recursos Modificados (Banco de Dados Contido).
Consulta sys.dm_db_uncontained_entities (Transact-SQL) para localizar objetos ou recursos não contidos no banco de dados. Para obter mais informações, consulte.
Monitore o database_uncontained_usage XEvent para ver quando funcionalidades não contidas são usadas.
Habilitar bancos de dados contidos
Os bancos de dados contidos devem ser habilitados na instância do Mecanismo de Banco de Dados do SQL Server antes que os bancos de dados contidos possam ser criados.
Habilitando bancos de dados contidos usando Transact-SQL
O exemplo a seguir habilita bancos de dados contidos na instância do Mecanismo de Banco de Dados do SQL Server.
sp_configure 'contained database authentication', 1;
GO
RECONFIGURE ;
GO
Habilitando bancos de dados contidos usando o Management Studio
O exemplo a seguir habilita bancos de dados contidos na instância do Mecanismo de Banco de Dados do SQL Server.
No Pesquisador de Objetos, clique com o botão direito do mouse no nome do servidor e clique em Propriedades.
Na página Avançado, na seção Contenção, defina a opção Ativar Bancos de Dados Contidos como Verdadeiro.
Selecione OK.
Convertendo um banco de dados em parcialmente contido
Uma base de dados é convertida numa base de dados contida alterando a opção CONTENÇÃO.
Convertendo um banco de dados em parcialmente contido usando Transact-SQL
O exemplo a seguir converte um banco de dados chamado Accounting em um banco de dados parcialmente contido.
USE [master]
GO
ALTER DATABASE [Accounting] SET CONTAINMENT = PARTIAL
GO
Converter uma base de dados para parcialmente contida usando o Management Studio
O exemplo a seguir converte um banco de dados em um banco de dados parcialmente contido.
No Explorador de Objetos, expanda Bases de Dados, clique com o botão direito no banco de dados a ser convertido e depois clique em Propriedades.
Na página Opções, altere a opção Tipo de contenção para Parcial.
Selecione OK.
Migrando usuários para usuários de banco de dados contidos
O exemplo a seguir migra todos os usuários baseados em logons do SQL Server para usuários de banco de dados contidos com senhas. O exemplo exclui logons que não estão habilitados. O exemplo deve ser executado no banco de dados contido.
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 ;
Ver também
Bases de Dados Contidas
sp_migrate_user_to_contained (Transact-SQL)
sys.dm_db_uncontained_entities (Transact-SQL)