Definir configurações para Assistente de Migração de Dados

Importante

O Assistente de Migração de Dados (DMA) está obsoleto. Para opções de migração do SQL Server para o SQL do Azure, consulte opções de migração do SQL Server para o SQL do Azure.

Você pode ajustar determinado comportamento do Assistente de Migração de Dados definindo valores de configuração no arquivo dma.exe.config. Este artigo descreve os principais valores de configuração.

Você pode encontrar o arquivo dma.exe.config para o aplicativo da área de trabalho Assistente de Migração de Dados e o utilitário de linha de comando nas pastas a seguir em seu computador.

  • Aplicativo da área de trabalho

    %ProgramFiles%\Microsoft Data Migration Assistant\dma.exe.config

  • Utilitário de linha de comando

    %ProgramFiles%\Microsoft Data Migration Assistant\dmacmd.exe.config

Salve uma cópia do arquivo de configuração original antes de fazer modificações. Depois de fazer alterações, reinicie o Assistente de Migração de Dados para que os novos valores de configuração entrem em vigor.

Número de bancos de dados a serem avaliados em paralelo

O Assistente de Migração de Dados avalia vários bancos de dados em paralelo. Durante a avaliação, o Assistente de Migração de Dados extrai o aplicativo da camada de dados (dacpac) para entender o esquema de banco de dados. Essa operação poderá demorar se vários bancos de dados no mesmo servidor forem avaliados em paralelo.

A partir do Assistente de Migração de Dados v2.0, você pode controlar isso definindo o valor de configuração parallelDatabases. O valor padrão é 8.

<advisorGroup>
<workflowSettings>
<assessment parallelDatabases="8" />
</workflowSettings>
</advisorGroup>

Número de bancos de dados a serem migrados em paralelo

O Assistente de Migração de Dados migra vários bancos de dados em paralelo antes de migrar logons. Durante a migração, o Assistente de Migração de Dados fará um backup do banco de dados de origem, opcionalmente copiará o backup e o restaurará no servidor de destino. Você pode encontrar falhas de tempo limite quando vários bancos de dados são selecionados para migração.

Começando com o Assistente de Migração de Dados v2.0, se você tiver esse problema, poderá reduzir o valor de configuração parallelDatabases. Você pode aumentar o valor para reduzir o tempo de migração geral.

<advisorGroup>
<workflowSettings>
<migration parallelDatabases="8″ />
</workflowSettings>
</advisorGroup>

Configurações do DacFX

Durante a avaliação, o Assistente de Migração de Dados extrai o aplicativo da camada de dados (dacpac) para entender o esquema de banco de dados. Essa operação pode falhar nos tempos limite em caso de bancos de dados grandes ou se o servidor estiver com carga. A partir da Migração de Dados v1.0, você pode modificar os valores de configuração a seguir para evitar erros.

Observação

Toda a entrada <dacfx> é comentada por padrão. Remova os comentários e modifique o valor conforme a necessidade.

  • commandTimeout

    Esse parâmetro define a propriedade IDbCommand.CommandTimeout em segundos. (Default=60)

  • databaseLockTimeout

    Esse parâmetro é equivalente a SET LOCK_TIMEOUT em milissegundos. (Default=5000)

  • maxDataReaderDegreeOfParallelism

    Esse parâmetro define o número de conexões do pool de conexões SQL a serem usadas. (Default=8)

<advisorGroup>
<advisorSettings>
<dacFx commandTimeout="60" databaseLockTimeout="5000" maxDataReaderDegreeOfParallelism="8"/>
</advisorSettings>
</advisorGroup>

Stretch Database: limite de recomendação

Importante

O banco de dados de ampliação foi preterido no SQL Server 2022 (16.x) e no Banco de Dados SQL do Azure. Esse recurso será removido em uma versão futura do mecanismo de banco de dados. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.

Com o SQL Server Stretch Database, você pode esticar dinamicamente dados transacionais de pouco uso ou uso frequente do Microsoft SQL Server 2016 para o Azure. A recomendação do Stretch Database não está mais disponível como uma opção de assistente.

Tempo limite da conexão SQL

Você pode controlar o tempo limite de conexão SQL de instâncias de origem e destino durante a execução de uma avaliação ou migração pela definição do valor do tempo limite da conexão como um número específico de segundos. O valor padrão é 15 segundos.

<appSettings>
<add key="ConnectionTimeout" value="15" />
</appSettings>

Ignorar códigos de erro

Cada regra tem um código de erro em seu título. Se você não precisar de regras e quiser ignorá-las, use a propriedade ignoreErrorCodes. Você pode especificar para ignorar um único erro ou vários erros. Para ignorar vários erros, use um ponto e vírgula, por exemplo, ignoreErrorCodes="46010;71501". O valor padrão é 71501, que está associado a referências não resolvidas identificadas quando um objeto faz referência a objetos do sistema, como procedimentos, exibições, etc.

<workflowSettings>
<assessment parallelDatabases="8" ignoreErrorCodes="71501" />
</workflowSettings>