Spuštění nástroje Data Migration Assistant z příkazového řádku
Důležitý
Data Migration Assistant (DMA) je zastaralé. Možnosti migrace z SQL Serveru do Azure SQL najdete v tématu možnosti migrace SQL Serveru do Azure SQL.
Při instalaci nástroje Data Migration Assistant verze 2.1 a vyšší se také nainstaluje dmacmd.exe
v %ProgramFiles%\Microsoft Data Migration Assistant
. Pomocí DMACMD můžete vyhodnotit databáze v bezobslužném režimu a výstupem výsledku do souboru JSON nebo CSV. Tato metoda je zvlášť užitečná při posuzování několika databází nebo obrovských databází.
DMACMD podporuje pouze spouštění posouzení. Migrace se v tuto chvíli nepodporují.
Posouzení pomocí rozhraní příkazového řádku (CLI)
dmacmd.exe /AssessmentName="string"
/AssessmentDatabases="connectionString1" ["connectionString2"]
[/AssessmentSourcePlatform="SourcePlatform"]
[/AssessmentTargetPlatform="TargetPlatform"]
/AssessmentEvaluateFeatureParity|/AssessmentEvaluateCompatibilityIssues
[/AssessmentOverwriteResult]
/AssessmentResultJson="file"|/AssessmentResultCsv="file"
Argument | Popis | Povinné (Y/N) |
---|---|---|
/help or /? |
Jak používat text nápovědy dmacmd.exe | N |
/AssessmentName |
Název projektu posouzení | Y |
/AssessmentDatabases |
Seznam připojovacích řetězců oddělených mezerami U názvu databáze (počáteční katalog) se rozlišují malá a velká písmena. | Y |
/AssessmentSourcePlatform |
Zdrojová platforma pro posouzení: Podporované hodnoty pro posouzení: SqlOnPrem , RdsSqlServer (výchozí)Podporované hodnoty pro posouzení připravenosti cíle: SqlOnPrem , RdsSqlServer (výchozí), Cassandra (náhled) |
N |
/AssessmentTargetPlatform |
Cílová platforma pro posouzení: Podporované hodnoty pro posouzení: AzureSqlDatabase , ManagedSqlServer , SqlServer2012 , SqlServer2014 , SqlServer2016 , SqlServerLinux2017 a SqlServerWindows2017 (výchozí)Podporované hodnoty pro posouzení připravenosti cíle: ManagedSqlServer (výchozí), CosmosDB (předběžný) |
N |
/AssessmentEvaluateFeatureParity |
Spusťte pravidla pro dosažení parity funkcí. Pokud je zdrojová platforma RdsSqlServer, vyhodnocení parity funkcí se pro cílovou platformu AzureSqlDatabase nepodporuje. | Y (Vyžaduje se AssessmentEvaluateCompatibilityIssues nebo AssessmentEvaluateFeatureParity .) |
/AssessmentEvaluateCompatibilityIssues |
Spustit pravidla kompatibility | Y (Vyžaduje se AssessmentEvaluateCompatibilityIssues nebo AssessmentEvaluateFeatureParity .) |
/AssessmentOverwriteResult |
Přepište výsledný soubor | N |
/AssessmentResultJson |
Úplná cesta k souboru výsledků JSON | Y (Vyžaduje se AssessmentResultJson nebo AssessmentResultCsv . |
/AssessmentResultCsv |
Úplná cesta k výslednému souboru CSV | Y (Vyžaduje se AssessmentResultJson nebo AssessmentResultCsv . |
/AssessmentResultDma |
Úplná cesta k souboru výsledků .dma |
N |
/Action |
K získání doporučení skladové položky použijte SkuRecommendation .K posouzení připravenosti cíle použijte AssessTargetReadiness .Pomocí AzureMigrateUpload nahrajte všechny soubory hodnocení DMA v AssessmentResultInputFolder k hromadnému nahrání do služby Azure Migrate.
Action
/Action=AzureMigrateUpload využití typů |
N |
/SourceConnections |
Seznam připojovacích řetězců oddělených mezerami Název databáze (počáteční katalog) je volitelný. Pokud není zadaný žádný název databáze, vyhodnotí se všechny databáze ve zdroji. | Y (Vyžaduje se, pokud je Action AssessTargetReadiness ) |
/TargetReadinessConfiguration |
Úplná cesta k souboru XML popisující hodnoty pro název, zdrojová připojení a výsledný soubor. | Y (Vyžaduje se TargetReadinessConfiguration nebo SourceConnections . |
/FeatureDiscoveryReportJson |
Cesta ke zprávě JSON o objevování funkcí Pokud se tento soubor vygeneruje, můžete ho použít k opětovnému spuštění posouzení připravenosti cíle bez připojení ke zdroji. | N |
/ImportFeatureDiscoveryReportJson |
Cesta k dříve vytvořené sestavě JSON zjišťování funkcí Místo zdrojových připojení se tento soubor použije. | N |
/EnableAssessmentUploadToAzureMigrate |
Umožňuje nahrávání a publikování výsledků posouzení do služby Azure Migrate. | N |
/AzureCloudEnvironment |
Vybere cloudové prostředí Azure, ke kterému se chcete připojit, výchozí je Veřejný cloud Azure. Podporované hodnoty: Azure (výchozí), AzureChina , AzureGermany , AzureUSGovernment . |
N |
/SubscriptionId |
ID předplatného Azure. | Y (Vyžaduje se, pokud je zadán argument EnableAssessmentUploadToAzureMigrate ) |
/AzureMigrateProjectName |
Název projektu Azure Migrate, do kterého se nahrají výsledky posouzení. | Y (Vyžaduje se, pokud je zadán argument EnableAssessmentUploadToAzureMigrate ) |
/ResourceGroupName |
Název skupiny prostředků Azure Migrate | Y (Vyžaduje se, pokud je zadán argument EnableAssessmentUploadToAzureMigrate ) |
/AssessmentResultInputFolder |
Cesta k vstupní složce obsahující soubory posouzení .dma pro nahrání do Azure Migrate. |
Y (Vyžaduje se, pokud je Action AzureMigrateUpload ) |
Příklady posouzení pomocí rozhraní příkazového řádku
DMACMD
dmacmd.exe /?
Nebo:
dmacmd.exe /help`
posouzení jednoúčelové databáze pomocí ověřování systému Windows a spouštění pravidel kompatibility
dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName;Initial
Catalog=DatabaseName;Integrated Security=true"
/AssessmentEvaluateCompatibilityIssues /AssessmentOverwriteResult
/AssessmentResultJson="C:\\temp\\Results\\AssessmentReport.json"
Posouzení jednoduché databáze s využitím ověřování SQL Serveru a zachování parity funkcí
dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName;Initial
Catalog=DatabaseName;User Id=myUsername;Password=myPassword;"
/AssessmentEvaluateFeatureParity /AssessmentOverwriteResult
/AssessmentResultCsv="C:\\temp\\Results\\AssessmentReport.csv"
posouzení jednoduché databáze pro cílovou platformu SQL Server 2012, uložte výsledky do souborů .json a .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"
posouzení jednoúčelové databáze pro cílovou platformu Azure SQL Database, uložte výsledky do .json a .csv souboru
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"
posouzení více databází
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"
Posouzení připravenosti cíle pro jednoduchou databázi pomocí ověřování systému Windows
dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/SourceConnections="Server=SQLServerInstanceName;Initial Catalog=DatabaseName;Integrated Security=true"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"
Posouzení připravenosti cílové jednoduché databáze pomocí ověřování SQL Serverem
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"
posouzení jednoduché databáze pro cílovou platformu Azure SQL Database, uložte výsledky do souborů .json a .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"
Posouzení připravenosti cíle pro více databází
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
a /AssessmentTargetPlatform
jsou volitelné.)
Cílové posouzení připravenosti pro všechny databáze na serveru s využitím ověřování Windows
dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/SourceConnections="Server=SQLServerInstanceName;Integrated Security=true"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"
hodnocení připravenosti cílového systému importem dříve vytvořené zprávy o objevování funkcí
dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/ImportFeatureDiscoveryReportJson="c:\temp\feature_report.json"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"
Posouzení připravenosti cíle prostřednictvím poskytnutí konfiguračního souboru
dmacmd.exe /Action=AssessTargetReadiness
/TargetReadinessConfiguration=.\Config.xml
Obsah konfiguračního souboru při použití zdrojových připojení:
<?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>
Při importu reportu o zjišťování funkcí obsah konfiguračního souboru:
<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>
posouzení a nahrání do služby Azure Migrate ve veřejném cloudu Azure (výchozí)
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
Hromadné nahrání souborů hodnocení DMA do Azure Migrate ve veřejném cloudu Azure (výchozí)
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
Azure SQL Database / Azure SQL Managed Instance / SQL Server na virtuálních počítačích Azure s doporučeními pro SKU s využitím rozhraní příkazového řádku
Při instalaci nástroje Data Migration Assistant ve verzi 5.4 a novějších verzích se také nainstalují SqlAssessment.exe
do %ProgramFiles%\Microsoft Data Migration Assistant\SQLAssessmentConsole
. Pomocí SqlAssessment.exe můžete shromažďovat údaje o výkonu pro instanci SQL po delší dobu a výstupem výsledku do souboru JSON nebo CSV.
Tyto příkazy podporují doporučení pro možnosti nasazení Azure SQL Database jako jednoho databázového serveru, Azure SQL Managed Instance a SQL Server na virtuálních počítačích Azure.
.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlManagedInstance
Argument | Popis | Povinné (Y/N) |
---|---|---|
PerfDataCollection |
Spustí shromažďování dat o výkonu. | Y |
GetSkuRecommendation |
Provádí agregaci a analýzu shromážděných dat o výkonu a určuje doporučení skladové položky. | Y |
GetMetadata |
Provádí kolekci metadat cílových instancí SQL, včetně počtu a vlastností instancí serveru, databází a databázových souborů, uživatelem definovaných objektů atd. Úplná sestava se exportuje do MetadataReport.json . |
Y |
--outputFolder |
Složka, do které se zapisují a ze které se čtou údaje o výkonu, sestavy a protokoly. | N (Výchozí: aktuální adresář) |
--sqlConnectionStrings |
Formální řetězce připojení v uvozovkách pro cílové instance SQL | Y |
--overwrite |
Zda chcete přepsat existující sestavy doporučení k posouzení nebo doporučení kódů SKU. | N (Výchozí: true ) |
--perfQueryIntervalInSec |
Interval dotazování dat o výkonu v sekundách. | N (Specifické pro akci PerfDataCollection . Výchozí nastavení 30 ) |
--staticQueryIntervalInSec |
Interval pro dotazování a zachování statických konfiguračních dat v sekundách | N (Specifické pro akci PerfDataCollection . Výchozí 30 ) |
--numberOfIterations |
Počet iterací shromažďování dat o výkonu, které se mají provést před uložením do souboru | N (Specifické pro akci PerfDataCollection . Výchozí nastavení 20 ) |
--perfQueryIntervalInSec |
Interval dotazování dat o výkonu v sekundách | N (Specifické pro GetSkuRecommendation akci. Musí se shodovat s hodnotou, která byla původně použita při shromažďování dat o výkonu. Výchozí hodnota: 30 ) |
--targetPlatform |
Cílová platforma pro doporučení SKU: buď AzureSqlDatabase , AzureSqlManagedInstance , AzureSqlVirtualMachine , nebo Any . |
N (Specifické pro akci GetSkuRecommendation . Výchozí hodnota: Any ) |
--targetSqlInstance |
Název instance SQL, na kterou se doporučení skladové položky zaměřuje. | N (Specifické pro akci GetSkuRecommendation ) |
--targetPercentile |
Percentil datových bodů, které se mají použít při agregaci dat o výkonu. | N (Specifické pro akci GetSkuRecommendation . Používá se pouze pro referenční (neelastickou) strategii. Výchozí hodnota: 95 ) |
--scalingFactor |
Faktor škálování (komfort) použitý během doporučení skladové položky | N (Specifické pro akci GetSkuRecommendation . Výchozí hodnota: 100 ) |
--startTime |
Čas zahájení datových bodů výkonu UTC, který je potřeba vzít v úvahu během agregace, ve formátu "YYYY-MM-DD HH:MM" . |
N (Specifické pro akci GetSkuRecommendation . Používá se pouze pro základní (neelastickou) strategii |
--endTime |
Koncový čas UTC datových bodů výkonu, které je nutné zohlednit během agregace, ve formátu "YYYY-MM-DD HH:MM" . |
N (Specifická pro akci GetSkuRecommendation . Používá se pouze pro strategii základní úrovně (neelastickou) strategie) |
--elasticStrategy |
Zda použít elastickou strategii pro doporučení SKU na základě statistické profilace využití prostředků. Elastická strategie je aktuálně dostupná pro azure SQL Database a SQL Managed Instance, zatím není dostupná pro SQL Server na virtuálním počítači Azure. | N (Specifické pro akci GetSkuRecommendation . Výchozí hodnota: false ) |
--databaseAllowList |
Seznam názvů databází oddělených mezerami, které se mají zahrnout pro doporučení skladové položky | N (Specifické pro akci GetSkuRecommendation . Výchozí hodnota: null ) |
--databaseDenyList |
Seznam názvů databází oddělených mezerami, které se mají vyloučit pro doporučení skladové položky. Nastavte pouze jednu z následujících možností nebo žádnou: databaseAllowList , databaseDenyList |
N (Specifické pro akci GetSkuRecommendation . Výchozí hodnota: null ) |
--displayResult |
Jestli chcete v konzole vytisknout výsledky doporučení skladové položky, nebo ne. Nastavte pouze jednu z následujících možností nebo ani jednu: databaseAllowList , databaseDenyList |
N (Specifické pro akci GetSkuRecommendation . Výchozí hodnota: true ) |
Příklady posouzení skladových položek pomocí rozhraní příkazového řádku
SqlAssessment.exe
SqlAssessment.exe --help
Spuštění procesu shromažďování dat pro místní instance SQL Serveru
.\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
Doporučení SKU pro Azure SQL Database / Azure SQL Managed Instance / SQL Server na virtuálních počítačích Azure
.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform Any
doporučení SKU pro spravovanou instanci Azure SQL s určeným procentem agregace pro datové body a vlastní škálovací faktor
.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlManagedInstance
--targetPercentile 90
--scalingFactor 80
doporučení SQL Serveru na virtuálním počítači Azure s vlastní časovou osou agregace
.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlVirtualMachine
--startTime "2021-06-05 00:00"
--endTime "2021-06-07 00:00"