Compartilhar via


sp_certify_removable (Transact-SQL)

Verifica se um banco de dados está configurado corretamente para distribuição em mídias removíveis e informa qualquer problema ao usuário.

Observação importanteImportante

Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam. No entanto, recomendamos o uso de CREATE DATABASE.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

sp_certify_removable [ @dbname= ] 'dbname'
          [ , [ @autofix = ] 'auto' ]

Argumentos

  • [ @dbname=] 'dbname'
    Especifica o banco de dados a ser verificado. dbname é sysname.

  • [ @autofix=] 'auto'
    Atribui a propriedade do banco de dados e todos os objetos de banco de dados ao administrador de sistema e encerra quaisquer usuários de banco de dados criados pelo usuário e permissões não padrão. auto é nvarchar (4), com um padrão de NULL.

Valores de código de retorno

0 (êxito) ou 1 (falha)

Comentários

Se o banco de dados for configurado corretamente, sp_certify_removable executará o seguinte:

  • Configura o banco de dados em modo offline para que os arquivos possam ser copiados.

  • Atualiza estatísticas em todas as tabelas e informa qualquer problema de propriedade ou usuário

  • Marca os grupos de arquivos de dados como somente leitura, para que esses arquivos possam ser copiados para mídia somente leitura.

O administrador de sistema deve ser o proprietário do banco de dados e de todos os objetos de banco de dados. O administrador de sistema é um usuário conhecido que existe em todos os servidores que estão executando o Microsoft SQL Server e é esperado que ele exista quando o banco de dados é distribuído e instalado posteriormente.

Se você executar sp_certify_removable sem o valor auto são retornadas as informações sobre qualquer uma das condições a seguir:

  • O administrador de sistema não é o proprietário do banco de dados.

  • Existem usuários criados pelo usuário.

  • O administrador de sistema não é proprietário de todos os objetos no banco de dados.

  • Permissões não padrão foram concedidas.

Você pode corrigir estas condições das seguintes formas:

  • Use as ferramentas e procedimentos SQL Server e então execute sp_certify_removable novamente.

  • Execute sp_certify_removable com o valor auto.

Note que este procedimento armazenado somente verifica os usuários e as permissões de usuário. Você pode adicionar grupos ao banco de dados e conceder permissões a esses grupos. Para obter mais informações, consulte GRANT (Transact-SQL).

Permissões

Permissões de execução são restritas aos membros da função de servidor fixa sysadmin.

Exemplos

O exemplo a seguir certifica que o banco de dados inventory está pronto para ser removido.

EXEC sp_certify_removable inventory, AUTO