Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A Microsoft fornece um conjunto robusto de comandos de arquivo de script para executar e controlar atividades do Assistente de Migração do SQL Server (SSMA).
O aplicativo de console usa determinados comandos de arquivo de script padrão, conforme enumerado nesta seção.
Comandos do arquivo de script do projeto
create-new-project comando
Cria um novo projeto SSMA.
Os comandos Project lidam com a criação de projetos, abertura, salvamento e saída de projetos.
Script
project-folder: Indica a pasta do projeto que está sendo criado.project-name: Indica o nome do projeto. {string}overwrite-if-exists: Atributo opcional. Indica se um projeto existente deve ser substituído. {Booleano}project-type: Atributo opcional. Indica o tipo de projeto, ou seja,sql-server-2016, ,sql-server-2017,sql-server-2019,sql-server-2022,sql-server-2025, ousql-azure. A predefinição ésql-server-2016.
Exemplo de sintaxe
<create-new-project
project-folder="<project-folder>"
project-name="<project-name>"
overwrite-if-exists="<true/false>" (optional)
project-type=="<sql-server-2016 | sql-server-2017 | sql-server-2019 | sql-server-2022 | sql-server-2025 | sql-azure>" (optional)
/>
O atributo overwrite-if-exists é false por defeito.
O atributo project-type é sql-server-2016 por defeito.
open-project comando
Abre um projeto existente.
Script
project-folderindica a pasta do projeto que está sendo criado. O comando falhará se a pasta especificada não existir. {string}project-nameindica o nome do projeto. O comando falhará se o projeto especificado não existir. {string}
Exemplo de sintaxe
<open-project
project-folder="<project-folder>"
project-name="<project-name>"
/>
Importante
SSMA For MySQL Console Application suporta compatibilidade com versões anteriores. Você pode abrir projetos criados pela versão anterior do SSMA.
save-project comando
Salva o projeto de migração.
Exemplo de sintaxe
<save-project/>
close-project comando
Fecha o projeto de migração.
Exemplo de sintaxe
<save-project/>
Ou:
<close-project
if-modified="<save/error/ignore>" (optional)
/>
O atributo if-modified é opcional, ignore por padrão.
Comandos do arquivo de script de Conexão de Banco de Dados
Os comandos Conexão de Banco de Dados ajudam a se conectar ao banco de dados.
O recurso Procurar da interface não é suportado no console.
Os windows-authentication parâmetros e port não são aplicáveis ao se conectar ao SQL Azure.
Para obter mais informações, consulte Criando arquivos de script.
connect-source-database comando
Executa a conexão com o banco de dados de origem e carrega metadados de alto nível do banco de dados de origem, mas não todos os metadados.
Se a conexão com a fonte não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução.
Script
A definição do servidor é recuperada do atributo nome definido para cada conexão, na secção de servidor do arquivo de conexão do servidor ou do arquivo de script.
Exemplo de sintaxe
<connect-source-database server="<server-unique-name>"/>
force-load-source/target-database comando
Carrega os metadados de origem.
Útil para trabalhar no projeto de migração offline.
Se a conexão com a origem/destino não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução adicional.
Script
Requer um ou vários nós da metabase como parâmetro de linha de comando.
Exemplo de sintaxe
<force-load metabase="<source/target>"
<metabase-object object-name="<object-name>"/>
</force-load>
reconnect-source-database comando
Reconecta-se ao banco de dados de origem, mas não carrega nenhum metadado, ao contrário do comando connect-source-database.
Se a (re)conexão com a origem não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução adicional.
Exemplo de sintaxe
<reconnect-source-database server="<server-unique-name>"/>
connect-target-database comando
Conecta-se ao SQL Server de destino ou ao Banco de Dados SQL do Azure e carrega metadados de alto nível do banco de dados de destino, mas não totalmente os metadados.
Se a conexão com o destino não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução.
Script
A definição do servidor é recuperada do atributo nome definido para cada conexão, na secção de servidor do arquivo de conexão do servidor ou do arquivo de script.
Exemplo de sintaxe
<connect-target-database server="<server-unique-name>"/>
reconnect-target-database comando
Reconecta-se ao banco de dados de destino, mas não carrega nenhum metadados, ao contrário do comando connect-target-database.
Se a (re)conexão com o destino não puder ser estabelecida, um erro será gerado e o aplicativo de console interromperá a execução adicional.
Exemplo de sintaxe
<reconnect-target-database server="<server-unique-name>"/>
Comandos do arquivo de script de relatório
Os comandos Report geram relatórios sobre o desempenho de várias atividades do Console SSMA.
generate-assessment-report comando
Gera relatórios de avaliação no banco de dados de origem.
Se a conexão do banco de dados de origem não for executada antes de executar esse comando, um erro será gerado e o aplicativo de console será encerrado.
A falha ao se conectar ao servidor de banco de dados de origem durante a execução do comando também resulta no encerramento do aplicativo de console.
Script
assessment-report-folder: Especifica a pasta onde o relatório de avaliação está armazenado. (atributo opcional)object-name: Especifica os objetos considerados para a geração de relatórios de avaliação (pode ter nomes de objetos individuais ou um nome de objeto de grupo).object-type: especifica o tipo do objeto especificado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").assessment-report-overwrite: Especifica se a pasta do relatório de avaliação deve ser substituída, caso ela já exista.Valor padrão: false. (atributo opcional)
write-summary-report-to: Especifica o caminho onde o relatório de resumo é gerado.Se apenas o caminho da pasta for mencionado, o arquivo por nome
AssessmentReport<n>.xmlserá criado. (atributo opcional)A criação de relatórios tem mais duas subcategorias:
-
report-errors(="true/false", com padrão como "false" (atributos opcionais)) -
verbose(="true/false", com padrão como "false" (atributos opcionais))
-
Exemplo de sintaxe
<generate-assessment-report
object-name="<object-name>"
object-type="<object-category>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
conversion-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
/>
Ou:
<generate-assessment-report
conversion-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
>
<metabase-object object-name="<object-name>"
object-type="<object-category>"/>
</generate-assessment-report>
Comandos do arquivo de script de migração
Os comandos Migration convertem o esquema do banco de dados de destino para o esquema de origem e migram dados para o servidor de destino.
A configuração de saída padrão do console para os comandos de migração é o relatório de saída 'Completo' sem relatório de erros detalhado: apenas resumo no nó raiz da árvore de objetos de origem.
convert-schema comando
Executa a conversão de esquema do esquema de origem para o esquema de destino.
Se a conexão do banco de dados de origem ou de destino não for executada antes da execução desse comando, ou se a conexão com o servidor de banco de dados de origem ou de destino falhar durante a execução do comando, um erro será gerado e o aplicativo de console será encerrado.
Script
conversion-report-folder: Especifica a pasta onde o relatório de avaliação está armazenado. (atributo opcional)object-name: Especifica os objetos considerados para converter esquema (Ele pode ter nomes de objetos individuais ou um nome de objeto de grupo).object-type: especifica o tipo do objeto especificado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").conversion-report-overwrite: Especifica se a pasta do relatório de avaliação deve ser substituída, caso ela já exista.Valor padrão: false. (atributo opcional)
write-summary-report-to: Especifica o caminho onde o relatório de resumo é gerado.Se apenas o caminho da pasta for mencionado, o arquivo por nome
SchemaConversionReport<n>.xmlserá criado. (atributo opcional)A criação de relatórios de síntese tem mais duas subcategorias:
-
report-errors(="true/false", com padrão como "false" (atributos opcionais)) -
verbose(="true/false", com padrão como "false" (atributos opcionais))
-
Exemplo de sintaxe
<convert-schema
object-name="<object-name>"
object-type="<object-category>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
conversion-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
/>
Ou:
<convert-schema
conversion-report-folder="<folder-name>" (optional)
conversion-report-overwrite="<true/false>" (optional)
<metabase-object object-name="<object-names>"
object-type="<object-category>"/>
</convert-schema>
migrate-data comando
Migra os dados de origem para o destino.
Script
object-name: Especifica os objetos de origem considerados para migrar dados (pode ter nomes de objetos individuais ou um nome de objeto de grupo).object-type: especifica o tipo do objeto especificado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").write-summary-report-to: Especifica o caminho onde o relatório de resumo é gerado.Se apenas o caminho da pasta for mencionado, o arquivo por nome
DataMigrationReport<n>.xmlserá criado. (atributo opcional)A criação de relatórios tem mais duas subcategorias:
-
report-errors(="true/false", com padrão como "false" (atributos opcionais)) -
verbose(="true/false", com padrão como "false" (atributos opcionais))
-
Exemplo de sintaxe
<migrate-data
write-summary-report-to="<file-name/folder-name>"
report-errors="true" verbose="true">
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
<data-migration-connection
source-use-last-used="true"/source-server="<server-unique-name>"
target-use-last-used="true"/target-server="<server-unique-name>"/>
</migrate-data>
Ou:
<migrate-data
object-name="<object-name>"
object-type="<object-category>"
write-summary-report-to="<file-name/folder-name>"
report-errors="true" verbose="true"/>
Comando para Arquivo de Script de Preparação da Migração
O comando Preparação da Migração inicia o mapeamento de esquema entre os bancos de dados de origem e de destino.
map-schema comando
Mapeamento de esquema do banco de dados de origem para o esquema de destino.
Script
-
source-schemaespecifica o esquema de origem que pretendemos migrar. -
sql-server-schemaespecifica o esquema de destino para onde queremos que ele seja migrado.
Exemplo de sintaxe
<map-schema
source-schema="<source-schema>"
sql-server-schema="<target-schema>"/>
Comandos de arquivo de script de gerenciabilidade
Os comandos Manageability ajudam a sincronizar os objetos do banco de dados de destino com o banco de dados de origem.
A configuração de saída padrão do console para os comandos de migração é o relatório de saída 'Completo' sem relatório de erros detalhado: apenas resumo no nó raiz da árvore de objetos de origem.
synchronize-target comando
Sincroniza os objetos de destino com o banco de dados de destino.
Se esse comando for executado no banco de dados de origem, um erro será encontrado.
Se a conexão do banco de dados de destino não for executada antes da execução desse comando ou se a conexão com o servidor de banco de dados de destino falhar durante a execução do comando, um erro será gerado e o aplicativo de console será encerrado.
Script
object-name: Especifica os objetos considerados para sincronização com o banco de dados de destino (Ele pode ter nomes de objetos individuais ou um nome de objeto de grupo).object-type: especifica o tipo do objeto especificado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").on-error: Especifica se os erros de sincronização devem ser especificados como avisos ou erro. Opções disponíveis para on-error:report-total-as-warningreport-each-as-warningfail-script
report-errors-to: Especifica o local do relatório de erros para a operação de sincronização (atributo opcional)Se apenas o caminho da pasta for fornecido, um arquivo com o nome de
TargetSynchronizationReport.xmlé criado.
Exemplo de sintaxe
<synchronize-target
object-name="<object-name>"
on-error="<report-total-as-warning/
report-each-as-warning/
fail-script>" (optional)
report-errors-to="<file-name>" (optional)
/>
Ou:
<synchronize-target
object-name="<object-name>"
object-type="<object-category>"/>
Ou:
<synchronize-target>
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
<metabase-object object-name="<object-name>"/>
</synchronize-target>
refresh-from-database comando
Atualiza os objetos de origem do banco de dados.
Se esse comando for executado no banco de dados de destino, um erro será gerado.
Script
object-name: Especifica os objetos de origem considerados para atualização do banco de dados de origem (Ele pode ter nomes de objetos individuais ou um nome de objeto de grupo).object-type: Especifica o tipo do objeto especificado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").on-error: Especifica se os erros de sincronização devem ser especificados como avisos ou erro. Opções disponíveis para on-error:report-total-as-warningreport-each-as-warningfail-script
report-errors-to: Especifica o local do relatório de erros para a operação de sincronização (atributo opcional)Se apenas o caminho da pasta for fornecido, um arquivo com o nome de
SourceDBRefreshReport.xmlé criado.
Requer um ou vários nós da metabase como parâmetro de linha de comando.
Exemplo de sintaxe
<refresh-from-database
object-name="<object-name>"
on-error="<report-total-as-warning/
report-each-as-warning/
fail-script>" (optional)
report-errors-to="<file-name>" (optional)
/>
Ou:
<refresh-from-database
object-name="<object-name>"
object-type="<object-category>"/>
Ou:
<refresh-from-database>
<metabase-object object-name="<object-name>"/>
</refresh-from-database>
Comandos do ficheiro de script de geração
Os comandos de Geração de Scripts executam duas tarefas: ajudam a salvar a saída do console em um arquivo de script; e registre a saída T-SQL no console ou em um arquivo com base no parâmetro especificado.
save-as-script comando
Usado para guardar os scripts dos objetos num ficheiro especificado quando metabase=target. Esta é uma alternativa ao comando de sincronização, no qual obtemos os scripts e executamos os mesmos no banco de dados de destino.
Script
Requer um ou vários nós da metabase como parâmetro de linha de comando.
object-name: Especifica os objetos cujos scripts devem ser salvos. (Pode ter nomes de objetos individuais ou um nome de objeto de grupo)object-type: especifica o tipo do objeto especificado no atributo object-name (se a categoria do objeto for especificada, o tipo de objeto será "category").metabase: Especifica se é a metabase de origem ou de destino.destination: Especifica o caminho ou a pasta onde o script deve ser salvo, se o nome do arquivo não for fornecido, então um nome de arquivo no formato (object_name valor do atributo).outoverwrite: se verdadeiro, então ele substitui se o mesmo nome de arquivo existir. Pode ter os valores (verdadeiro/falso).
Exemplo de sintaxe
<save-as-script
metabase="<source/target>"
object-name="<object-name>"
object-type="<object-category>"
destination="<file-name/folder-name>"
overwrite="<true/false>" (optional)
/>
Ou:
<save-as-script
metabase="<source/target>"
destination="<file-name/folder-name>"
<metabase-object object-name="<object-name>"
object-type="<object-category>"/>
</save-as-script>
convert-sql-statement comando
contextespecifica o nome do esquema.destinationespecifica se a saída deve ser armazenada em um arquivo.Se esse atributo não for especificado, a instrução T-SQL convertida será exibida no console. (atributo opcional)
conversion-report-folderEspecifica a pasta onde o relatório de avaliação está armazenado. (atributo opcional)conversion-report-overwriteespecifica se a pasta do relatório de avaliação deve ser substituída, caso ela já exista.Valor padrão: false. (atributo opcional)
write-converted-sql-toespecifica o caminho do arquivo (ou) pasta onde o T-SQL convertido deve ser armazenado. Quando um caminho de pasta é especificado junto com o atributosql-files, cada arquivo de origem tem um arquivo T-SQL de destino correspondente criado na pasta especificada. Quando um caminho de pasta é especificado junto com osqlatributo, o T-SQL convertido é gravado em um arquivo chamado Result.out na pasta especificada.sqlespecifica as instruções SQL do MySQL a serem convertidas, uma ou mais instruções podem ser separadas usando um ";"sql-filesespecifica o caminho dos arquivos sql que devem ser convertidos em código T-SQL.write-summary-report-toEspecifica o caminho onde o relatório de resumo é gerado. Se apenas o caminho da pasta for mencionado, o arquivo por nomeConvertSQLReport.xmlserá criado. (atributo opcional)A criação de relatórios tem mais duas subcategorias:
-
report-errors(="true/false", com padrão como "false" (atributos opcionais)). -
verbose(="true/false", com padrão como "false" (atributos opcionais)).
-
Script
Requer um ou vários nós da metabase como parâmetro de linha de comando.
Exemplo de sintaxe
<convert-sql-statement
context="<schema-name>"
conversion-report-folder="<folder-name>"
conversion-report-overwrite="<true/false>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
destination="stdout/file" (optional)
write-converted-sql-to="<file-name/folder-name>"
sql="SELECT 1 FROM DUAL;">
<output-window suppress-messages="<true/false>" />
</convert-sql-statement>
Ou:
<convert-sql-statement
context="<schema-name>"
conversion-report-folder="<folder-name>"
conversion-report-overwrite="<true/false>"
write-summary-report-to="<file-name/folder-name>" (optional)
verbose="<true/false>" (optional)
report-errors="<true/false>" (optional)
destination="<stdout/file>" (optional)
write-converted-sql-to="<file-name/folder-name>"
sql-files="<folder-name>\*.sql"
/>
Ou:
<convert-sql-statement
context="<schema-name>"
conversion-report-folder="<folder-name>"
conversion-report-overwrite="<true/false>"
sql-files="<folder-name>\*.sql"
/>