Запуск Помощник по миграции данных из командной строки
Внимание
Помощник по миграции данных (DMA) не рекомендуется. Варианты миграции из SQL Server в SQL Azure см. в параметрах миграции SQL Server в Sql Azure.
При установке Помощник по миграции данных версии 2.1 и более поздних версий она также устанавливается dmacmd.exe
в %ProgramFiles%\Microsoft Data Migration Assistant
. Используйте DMACMD для оценки баз данных в автоматическом режиме и вывода результата в JSON или CSV-файл. Этот метод особенно полезен при оценке нескольких баз данных или огромных баз данных.
DMACMD поддерживает только выполнение оценок. Миграции в настоящее время не поддерживаются.
Оценки с помощью интерфейса командной строки (CLI)
dmacmd.exe /AssessmentName="string"
/AssessmentDatabases="connectionString1" ["connectionString2"]
[/AssessmentSourcePlatform="SourcePlatform"]
[/AssessmentTargetPlatform="TargetPlatform"]
/AssessmentEvaluateFeatureParity|/AssessmentEvaluateCompatibilityIssues
[/AssessmentOverwriteResult]
/AssessmentResultJson="file"|/AssessmentResultCsv="file"
Аргумент | Description | Обязательный (Y/N) |
---|---|---|
/help or /? |
Использование текста справки dmacmd.exe | N |
/AssessmentName |
Имя проекта оценки | Y |
/AssessmentDatabases |
Список строка подключения с разделителями пробелов. Имя базы данных (начальный каталог) учитывает регистр. | Y |
/AssessmentSourcePlatform |
Исходная платформа для оценки: Поддерживаемые значения для оценки: SqlOnPrem ( RdsSqlServer по умолчанию)Поддерживаемые значения для оценки готовности целевого объекта: SqlOnPrem , RdsSqlServer (по умолчанию), Cassandra (предварительная версия) |
N |
/AssessmentTargetPlatform |
Целевая платформа для оценки: Поддерживаемые значения для оценки: AzureSqlDatabase , ManagedSqlServer , SqlServer2012 , SqlServer2014 , SqlServerLinux2017 SqlServer2016 , и SqlServerWindows2017 (по умолчанию)Поддерживаемые значения для оценки готовности целевого объекта: ManagedSqlServer (по умолчанию), CosmosDB (предварительная версия) |
N |
/AssessmentEvaluateFeatureParity |
Запустите правила четности функций. Если исходная платформа — RdsSqlServer, оценка четности функций не поддерживается для целевой платформы AzureSqlDatabase | Y (ОценкаEvaluateCompatibilityIssues или AssessmentEvaluateFeatureParity является обязательным.) |
/AssessmentEvaluateCompatibilityIssues |
Выполнение правил совместимости | Y (Либо AssessmentEvaluateCompatibilityIssues AssessmentEvaluateFeatureParity требуется.) |
/AssessmentOverwriteResult |
Перезапись файла результата | N |
/AssessmentResultJson |
Полный путь к файлу результата JSON | Y (Либо AssessmentResultJson AssessmentResultCsv требуется) |
/AssessmentResultCsv |
Полный путь к CSV-файлу результатов | Y (Либо AssessmentResultJson AssessmentResultCsv требуется) |
/AssessmentResultDma |
Полный путь к файлу .dma результата |
N |
/Action |
Используйте SkuRecommendation для получения рекомендаций SKU.Используется AssessTargetReadiness для оценки готовности целевого объекта.Используется AzureMigrateUpload для отправки всех файлов оценки DMA в массовой отправке AssessmentResultInputFolder в службу "Миграция Azure". Action Использование типа /Action=AzureMigrateUpload |
N |
/SourceConnections |
Разделенный пробелами список строка подключения. Имя базы данных (начальный каталог) является необязательным. Если имя базы данных не указано, то оцениваются все базы данных в источнике. | Y (Требуется, если Action есть AssessTargetReadiness ) |
/TargetReadinessConfiguration |
Полный путь к XML-файлу, описывающий значения для имени, исходных подключений и результирующих файлов. | Y (Либо TargetReadinessConfiguration SourceConnections требуется) |
/FeatureDiscoveryReportJson |
Путь к отчету JSON обнаружения функций. Если этот файл создается, его можно использовать для повторной оценки готовности к целевому объекту без подключения к источнику. | N |
/ImportFeatureDiscoveryReportJson |
Путь к отчету JSON обнаружения функций, созданному ранее. Вместо исходных подключений этот файл используется. | N |
/EnableAssessmentUploadToAzureMigrate |
Включение отправки и публикации результатов оценки в службу "Миграция Azure" | N |
/AzureCloudEnvironment |
Выбирает облачную среду Azure для подключения, по умолчанию используется общедоступное облако Azure. Поддерживаемые значения: Azure (по умолчанию), AzureChina , AzureGermany . AzureUSGovernment |
N |
/SubscriptionId |
Идентификатор подписки Azure. | Y (Требуется, если EnableAssessmentUploadToAzureMigrate задан аргумент) |
/AzureMigrateProjectName |
Имя проекта миграции Azure для отправки результатов оценки. | Y (Требуется, если EnableAssessmentUploadToAzureMigrate задан аргумент) |
/ResourceGroupName |
Имя группы ресурсов службы "Миграция Azure". | Y (Требуется, если EnableAssessmentUploadToAzureMigrate задан аргумент) |
/AssessmentResultInputFolder |
Путь к входной папке, .dma содержащий файлы оценки для отправки в службу "Миграция Azure". |
Y (Требуется, если Action есть AzureMigrateUpload ) |
Примеры оценки с помощью интерфейса командной строки
DMACMD
dmacmd.exe /?
Или сделайте так:
dmacmd.exe /help`
Оценка одной базы данных с помощью проверка подлинности Windows и выполнения правил совместимости
dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName;Initial
Catalog=DatabaseName;Integrated Security=true"
/AssessmentEvaluateCompatibilityIssues /AssessmentOverwriteResult
/AssessmentResultJson="C:\\temp\\Results\\AssessmentReport.json"
Оценка отдельных баз данных с помощью проверки подлинности SQL Server и четности функций
dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName;Initial
Catalog=DatabaseName;User Id=myUsername;Password=myPassword;"
/AssessmentEvaluateFeatureParity /AssessmentOverwriteResult
/AssessmentResultCsv="C:\\temp\\Results\\AssessmentReport.csv"
Оценка одной базы данных для целевой платформы SQL Server 2012, сохранение результатов в .json и .csv файле
dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName;Initial
Catalog=DatabaseName;Integrated Security=true"
/AssessmentTargetPlatform="SqlServer2012"
/AssessmentEvaluateFeatureParity /AssessmentOverwriteResult
/AssessmentResultJson="C:\\temp\\Results\\AssessmentReport.json"
/AssessmentResultCsv="C:\\temp\\Results\\AssessmentReport.csv"
Оценка одной базы данных для целевой платформы База данных SQL Azure, сохранение результатов в .json и .csv файла
dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName;Initial
Catalog=DatabaseName;Integrated Security=true"
/AssessmentTargetPlatform="AzureSqlDatabaseV12"
/AssessmentEvaluateCompatibilityIssues /AssessmentEvaluateFeatureParity
/AssessmentOverwriteResult
/AssessmentResultCsv="C:\\temp\\AssessmentReport.csv"
/AssessmentResultJson="C:\\temp\\AssessmentReport.json"
Оценка нескольких баз данных
dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName1;Initial
Catalog=DatabaseName1;Integrated Security=true"
"Server=SQLServerInstanceName1;Initial Catalog=DatabaseName2;Integrated
Security=true" "Server=SQLServerInstanceName2;Initial
Catalog=DatabaseName3;Integrated Security=true"
/AssessmentTargetPlatform="SqlServer2016"
/AssessmentEvaluateCompatibilityIssues /AssessmentOverwriteResult
/AssessmentResultCsv="C:\\temp\\Results\\AssessmentReport.csv"
/AssessmentResultJson="C:\\Results\\test2016.json"
Оценка готовности целевой целевой базы данных с помощью проверка подлинности Windows
dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/SourceConnections="Server=SQLServerInstanceName;Initial Catalog=DatabaseName;Integrated Security=true"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"
Оценка готовности целевой базы данных с помощью проверки подлинности SQL Server
dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/SourceConnections="Server=SQLServerInstanceName;Initial Catalog=DatabaseName;User Id=myUsername;Password=myPassword;" /AssessmentEvaluateFeatureParity
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"
Оценка одной базы данных для целевой платформы База данных SQL Azure, сохранение результатов в .json и .csv файла
dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName;Initial
Catalog=DatabaseName;Integrated Security=true"
/AssessmentSourcePlatform="SqlOnPrem"
/AssessmentTargetPlatform="AzureSqlDatabase"
/AssessmentEvaluateCompatibilityIssues /AssessmentEvaluateFeatureParity
/AssessmentOverwriteResult
/AssessmentResultCsv="C:\\temp\\AssessmentReport.csv"
/AssessmentResultJson="C:\\temp\\AssessmentReport.json"
Оценка готовности к работе с несколькими базами данных
dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/AssessmentSourcePlatform=SourcePlatform
/AssessmentTargetPlatform=TargetPlatform
/SourceConnections="Server=SQLServerInstanceName1;Initial Catalog=DatabaseName1;Integrated Security=true" "Server=SQLServerInstanceName1;Initial Catalog=DatabaseName2;Integrated Security=true" "Server=SQLServerInstanceName2;Initial Catalog=DatabaseName3;Integrated Security=true"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\Results\test2016.json"
(/AssessmentSourcePlatform
и /AssessmentTargetPlatform
являются необязательными.)
Оценка целевой готовности для всех баз данных на сервере с помощью проверка подлинности Windows
dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/SourceConnections="Server=SQLServerInstanceName;Integrated Security=true"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"
Оценка готовности целевого объекта путем импорта отчета об обнаружении компонентов, созданного ранее
dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/ImportFeatureDiscoveryReportJson="c:\temp\feature_report.json"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"
Оценка готовности целевого объекта путем предоставления файла конфигурации
dmacmd.exe /Action=AssessTargetReadiness
/TargetReadinessConfiguration=.\Config.xml
Содержимое файла конфигурации при использовании исходных подключений:
<?xml version="1.0" encoding="utf-8" ?>
<TargetReadinessConfiguration xmlns="http://microsoft.com/schemas/SqlServer/Advisor/TargetReadinessConfiguration">
<AssessmentName>name</AssessmentName>
<SourcePlatform>Source Platform</SourcePlatform> <!-- Optional. The default is SqlOnPrem -->
<TargetPlatform>TargetPlatform</TargetPlatform> <!-- Optional. The default is ManagedSqlServer -->
<SourceConnections>
<SourceConnection>connection string 1</SourceConnection>
<SourceConnection>connection string 2</SourceConnection>
<!-- ... -->
<SourceConnection>connection string n</SourceConnection>
</SourceConnections>
<AssessmentResultJson>path\to\file.json</AssessmentResultJson>
<FeatureDiscoveryReportJson>path\to\featurediscoveryreport.json</FeatureDiscoveryReportJson>
<OverwriteResult>true</OverwriteResult> <!-- or false -->
</TargetReadinessConfiguration>
Содержимое файла конфигурации при импорте отчета об обнаружении компонентов:
<TargetReadinessConfiguration xmlns="http://microsoft.com/schemas/SqlServer/Advisor/TargetReadinessConfiguration">
<AssessmentName>name</AssessmentName>
<ImportFeatureDiscoveryReportJson>path\to\featurediscoveryfile.json</ImportFeatureDiscoveryReportJson>
<AssessmentResultJson>path\to\resultfile.json</AssessmentResultJson>
<OverwriteResult>true</OverwriteResult><!-- or false -->
</TargetReadinessConfiguration>
Оценка и отправка в службу "Миграция Azure" в общедоступном облаке Azure (по умолчанию)
dmacmd.exe
/Action="Assess"
/AssessmentSourcePlatform=SqlOnPrem
/AssessmentTargetPlatform=ManagedSqlServer
/AssessmentEvaluateCompatibilityIssues
/AssessmentEvaluateFeatureParity
/AssessmentOverwriteResult
/AssessmentName="assess-myDatabase"
/AssessmentDatabases="Server=myServer;Initial Catalog=myDatabase;Integrated Security=true"
/AssessmentResultDma="C:\assessments\results\assess-1.dma"
/SubscriptionId="Subscription Id"
/AzureMigrateProjectName="Azure Migrate project ame"
/ResourceGroupName="Resource Group name"
/AzureAuthenticationInteractiveAuthentication
/AzureAuthenticationTenantId="Azure Tenant Id"
/EnableAssessmentUploadToAzureMigrate
Пакетная отправка файлов оценки DMA в службу "Миграция Azure" в общедоступном облаке Azure (по умолчанию)
dmacmd.exe
/Action="AzureMigrateUpload"
/AssessmentResultInputFolder="C:\assessments\results"
/SubscriptionId="Subscription Id"
/AzureMigrateProjectName="Azure Migrate project name"
/ResourceGroupName="Resource Group name"
/AzureAuthenticationInteractiveAuthentication
/AzureAuthenticationTenantId="Azure Tenant Id"
/EnableAssessmentUploadToAzureMigrate
База данных SQL Azure / Управляемый экземпляр SQL Azure / SQL Server в SKU виртуальной машины Azure с помощью интерфейса командной строки
При установке Помощник по миграции данных версии 5.4 и более поздних версий она также устанавливается SqlAssessment.exe
в %ProgramFiles%\Microsoft Data Migration Assistant\SQLAssessmentConsole
. Используйте SqlAssessment.exe для сбора данных о производительности для экземпляра SQL в течение длительного периода времени и вывода результата в JSON-файл или CSV-файл.
Эти команды поддерживают рекомендации по развертыванию виртуальных машин Azure База данных SQL Azure отдельной базе данных, Управляемый экземпляр SQL Azure и SQL Server.
.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlManagedInstance
Аргумент | Description | Обязательный (Y/N) |
---|---|---|
PerfDataCollection |
Начинает сбор данных о производительности. | Y |
GetSkuRecommendation |
Выполняет агрегирование и анализ собранных данных о производительности и определяет рекомендации SKU. | Y |
GetMetadata |
Выполняет коллекцию метаданных целевых экземпляров SQL, включая количество и свойства экземпляров сервера, баз данных и файлов баз данных, определяемых пользователем объектов и т. д. Полный отчет экспортируется в MetadataReport.json . |
Y |
--outputFolder |
Папка, из которой записываются данные о производительности, отчеты и журналы. | N (по умолчанию: текущий каталог) |
--sqlConnectionStrings |
Заключаемые в кавычки формальные строка подключения для целевых экземпляров SQL. | Y |
--overwrite |
Следует ли перезаписать существующие отчеты об оценке или номере SKU. | N (Значение по умолчанию: true .) |
--perfQueryIntervalInSec |
Интервал запроса данных о производительности в секундах. | N (Конкретно для PerfDataCollection действия. По умолчанию 30 ) |
--staticQueryIntervalInSec |
Интервал запроса и сохранения статических данных конфигурации в секундах. | N (Конкретно для PerfDataCollection действия. По умолчанию 30 ) |
--numberOfIterations |
Количество итерации сбора данных о производительности перед сохранением в файле. | N (Конкретно для PerfDataCollection действия. По умолчанию 20 ) |
--perfQueryIntervalInSec |
Интервал, в течение которого запрашивались данные о производительности в секундах. | N (Конкретно для GetSkuRecommendation действия. Это должно соответствовать значению, которое изначально использовалось во время сбора данных о производительности. По умолчанию: 30 ) |
--targetPlatform |
Целевая платформа для рекомендации SKU: AzureSqlDatabase либо , AzureSqlVirtualMachine AzureSqlManagedInstance либо Any . |
N (Конкретно для GetSkuRecommendation действия. По умолчанию: Any ) |
--targetSqlInstance |
Имя экземпляра SQL, на который ориентирована рекомендация SKU. | N (Конкретно для GetSkuRecommendation действия) |
--targetPercentile |
Процентиль точек данных, используемых во время агрегирования данных производительности. | N (Конкретно для GetSkuRecommendation действия. Используется только для базовой стратегии (nonelastic). По умолчанию: 95 ) |
--scalingFactor |
Коэффициент масштабирования (комфорт), используемый во время рекомендации SKU. | N (Конкретно для GetSkuRecommendation действия. По умолчанию: 100 ) |
--startTime |
Время начала utc точек данных производительности, которые следует учитывать во время агрегирования в "YYYY-MM-DD HH:MM" формате. |
N (Конкретно для GetSkuRecommendation действия. Используется только для базовой стратегии (nonelastic) |
--endTime |
Время окончания utc точек данных производительности, которые следует учитывать во время агрегирования в "YYYY-MM-DD HH:MM" формате |
N (Конкретно для GetSkuRecommendation действия. Используется только для базовой стратегии (nonelastic) |
--elasticStrategy |
Следует ли использовать эластичную стратегию для рекомендаций SKU на основе профилирования использования статистических ресурсов. В настоящее время эластичная стратегия доступна для База данных SQL Azure и Управляемый экземпляр SQL, пока недоступна для SQL Server на целевом объекте виртуальной машины Azure. | N (Конкретно для GetSkuRecommendation действия. По умолчанию: false ) |
--databaseAllowList |
Разделенный пробелом список имен баз данных для рекомендаций SKU | N (Конкретно для GetSkuRecommendation действия. По умолчанию: null ) |
--databaseDenyList |
Разделенный пробелами список имен баз данных, которые следует исключить для рекомендаций SKU. Задайте только одно из следующих или ни одно из следующих элементов: databaseAllowList databaseDenyList |
N (Конкретно для GetSkuRecommendation действия. По умолчанию: null ) |
--displayResult |
Независимо от того, следует ли распечатать результаты рекомендаций SKU в консоли. Задайте только одно из следующих или ни одно из следующих элементов: databaseAllowList databaseDenyList |
N (Конкретно для GetSkuRecommendation действия. По умолчанию: true ) |
Примеры оценки SKU с помощью интерфейса командной строки
SqlAssessment.exe
SqlAssessment.exe --help
Запуск процесса сбора данных для локальных экземпляров SQL Server
.\SqlAssessment.exe PerfDataCollection
--sqlConnectionStrings "Data Source=Server1;Initial Catalog=master;Integrated Security=True;" "Data Source=Server2;Initial Catalog=master;Integrated Security=True;"
--outputFolder C:\Output
База данных SQL Azure / Управляемый экземпляр SQL Azure / SQL Server в рекомендациях SKU виртуальной машины Azure
.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform Any
Управляемый экземпляр SQL Azure рекомендации по SKU с определенным процентом агрегирования для точек данных и настраиваемым коэффициентом масштабирования
.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlManagedInstance
--targetPercentile 90
--scalingFactor 80
Рекомендации SQL Server на SKU виртуальной машины Azure с пользовательской временной шкалой агрегирования
.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlVirtualMachine
--startTime "2021-06-05 00:00"
--endTime "2021-06-07 00:00"