Bagikan melalui


Jalankan Asisten Migrasi Data dari baris perintah

Penting

Asisten Migrasi Data (DMA) tidak digunakan lagi. Untuk opsi migrasi dari SQL Server ke Azure SQL, lihat opsi migrasi untuk SQL Server ke Azure SQL.

Dengan versi 2.1 dan versi yang lebih baru, saat Anda menginstal Asisten Migrasi Data, itu juga diinstal dmacmd.exe di %ProgramFiles%\Microsoft Data Migration Assistant. Gunakan DMACMD untuk menilai database Anda dalam mode tanpa pengawasan, dan menghasilkan hasilnya ke file JSON atau CSV. Metode ini sangat berguna saat menilai beberapa database atau database besar.

DMACMD hanya mendukung penilaian yang berjalan. Migrasi saat ini tidak didukung.

Penilaian menggunakan Antarmuka Baris Perintah (CLI)

dmacmd.exe /AssessmentName="string"
/AssessmentDatabases="connectionString1" ["connectionString2"]
[/AssessmentSourcePlatform="SourcePlatform"]
[/AssessmentTargetPlatform="TargetPlatform"]
/AssessmentEvaluateFeatureParity|/AssessmentEvaluateCompatibilityIssues
[/AssessmentOverwriteResult]
/AssessmentResultJson="file"|/AssessmentResultCsv="file"
Argumen Deskripsi Diperlukan (Y/N)
/help or /? Cara menggunakan teks bantuan dmacmd.exe N
/AssessmentName Nama proyek penilaian Y
/AssessmentDatabases Daftar string koneksi yang dibatasi spasi. Nama database (Katalog Awal) peka huruf besar/kecil. Y
/AssessmentSourcePlatform Platform sumber untuk penilaian:
Nilai yang didukung untuk Penilaian: SqlOnPrem, RdsSqlServer (default)
Nilai yang didukung untuk Penilaian Kesiapan Target: SqlOnPrem, RdsSqlServer (default), Cassandra (pratinjau)
N
/AssessmentTargetPlatform Platform target untuk penilaian:
Nilai yang didukung untuk Penilaian: AzureSqlDatabase, , SqlServer2012ManagedSqlServer, SqlServer2014, SqlServer2016, SqlServerLinux2017, dan SqlServerWindows2017 (default)
Nilai yang didukung untuk Penilaian Kesiapan Target: ManagedSqlServer (default), CosmosDB (pratinjau)
N
/AssessmentEvaluateFeatureParity Jalankan aturan paritas fitur. Jika platform sumber adalah RdsSqlServer, evaluasi paritas fitur tidak didukung untuk platform target AzureSqlDatabase Y
(PenilaianEvaluateCompatibilityIssues atau AssessmentEvaluateFeatureParity diperlukan.)
/AssessmentEvaluateCompatibilityIssues Menjalankan aturan kompatibilitas Y
(Baik AssessmentEvaluateCompatibilityIssues atau AssessmentEvaluateFeatureParity diperlukan.)
/AssessmentOverwriteResult Timpa file hasil N
/AssessmentResultJson Jalur lengkap ke file hasil JSON Y
(Baik AssessmentResultJson atau AssessmentResultCsv diperlukan)
/AssessmentResultCsv Jalur lengkap ke file hasil CSV Y
(Baik AssessmentResultJson atau AssessmentResultCsv diperlukan)
/AssessmentResultDma Jalur lengkap ke file hasil .dma N
/Action Gunakan SkuRecommendation untuk mendapatkan rekomendasi SKU.
Gunakan AssessTargetReadiness untuk melakukan penilaian kesiapan target.
Gunakan AzureMigrateUpload untuk mengunggah semua file penilaian DMA di unggahan massal AssessmentResultInputFolder ke Azure Migrate. Action jenis penggunaan /Action=AzureMigrateUpload
N
/SourceConnections Daftar string koneksi yang dibatasi spasi. Nama database (Katalog Awal) bersifat opsional. Jika tidak ada nama database yang disediakan, maka semua database pada sumber dinilai. Y
(Diperlukan jika Action adalah AssessTargetReadiness)
/TargetReadinessConfiguration Jalur lengkap ke file XML yang menjelaskan nilai untuk nama, koneksi sumber, dan file hasil. Y
(Baik TargetReadinessConfiguration atau SourceConnections diperlukan)
/FeatureDiscoveryReportJson Jalur ke laporan JSON penemuan fitur. Jika file ini dihasilkan, maka dapat digunakan untuk menjalankan penilaian kesiapan target lagi tanpa menyambungkan ke sumber. N
/ImportFeatureDiscoveryReportJson Jalur ke laporan JSON penemuan fitur yang dibuat sebelumnya. Alih-alih koneksi sumber, file ini digunakan. N
/EnableAssessmentUploadToAzureMigrate Memungkinkan pengunggahan dan penerbitan hasil penilaian ke Azure Migrate N
/AzureCloudEnvironment Memilih lingkungan cloud Azure untuk disambungkan, defaultnya adalah Azure Public Cloud. Nilai yang didukung: Azure (default), AzureChina, AzureGermany, AzureUSGovernment. N
/SubscriptionId ID Langganan Azure. Y
(Diperlukan jika EnableAssessmentUploadToAzureMigrate argumen ditentukan)
/AzureMigrateProjectName Nama Proyek Azure Migrate untuk mengunggah hasil penilaian. Y
(Diperlukan jika EnableAssessmentUploadToAzureMigrate argumen ditentukan)
/ResourceGroupName Nama grup sumber daya Azure Migrate. Y
(Diperlukan jika EnableAssessmentUploadToAzureMigrate argumen ditentukan)
/AssessmentResultInputFolder Jalur folder input yang berisi .dma file penilaian untuk diunggah ke Azure Migrate. Y
(Diperlukan jika Action adalah AzureMigrateUpload)

Contoh penilaian menggunakan CLI

DMACMD

dmacmd.exe /?

Atau:

dmacmd.exe /help`

Penilaian database tunggal menggunakan autentikasi Windows dan menjalankan aturan kompatibilitas

dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName;Initial
Catalog=DatabaseName;Integrated Security=true"
/AssessmentEvaluateCompatibilityIssues /AssessmentOverwriteResult
/AssessmentResultJson="C:\\temp\\Results\\AssessmentReport.json"

Penilaian database tunggal menggunakan autentikasi SQL Server dan menjalankan paritas fitur

dmacmd.exe /AssessmentName="TestAssessment"
/AssessmentDatabases="Server=SQLServerInstanceName;Initial
Catalog=DatabaseName;User Id=myUsername;Password=myPassword;"
/AssessmentEvaluateFeatureParity /AssessmentOverwriteResult
/AssessmentResultCsv="C:\\temp\\Results\\AssessmentReport.csv"

Penilaian database tunggal untuk platform target SQL Server 2012, simpan hasil ke file .json dan .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"

Penilaian database tunggal untuk platform target Azure SQL Database, simpan hasil ke file .json dan .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"

Penilaian beberapa database

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"

Penilaian Kesiapan Target database tunggal menggunakan autentikasi Windows

dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/SourceConnections="Server=SQLServerInstanceName;Initial Catalog=DatabaseName;Integrated Security=true"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"

Penilaian Kesiapan Target database tunggal menggunakan autentikasi 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"

Penilaian database tunggal untuk platform target Azure SQL Database, simpan hasil ke file .json dan .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"

Penilaian Kesiapan Target beberapa database

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 dan /AssessmentTargetPlatform bersifat opsional.)

Penilaian Kesiapan Target untuk semua database di server menggunakan autentikasi Windows

dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/SourceConnections="Server=SQLServerInstanceName;Integrated Security=true"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"

Penilaian Kesiapan Target dengan mengimpor laporan penemuan fitur yang dibuat sebelumnya

dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/ImportFeatureDiscoveryReportJson="c:\temp\feature_report.json"
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"

Penilaian Kesiapan Target dengan menyediakan file konfigurasi

dmacmd.exe /Action=AssessTargetReadiness
/TargetReadinessConfiguration=.\Config.xml

Konten file konfigurasi saat menggunakan koneksi sumber:

<?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>

Konten file konfigurasi saat mengimpor laporan penemuan fitur:

<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>

Menilai dan mengunggah ke Azure Migrate di Azure Public Cloud (default)

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

Batch mengunggah file penilaian DMA ke Azure Migrate di Azure Public Cloud (default)

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 pada rekomendasi Azure VM SKU menggunakan CLI

Dengan versi 5.4 dan versi yang lebih baru, saat Anda menginstal Asisten Migrasi Data, itu juga diinstal SqlAssessment.exe di %ProgramFiles%\Microsoft Data Migration Assistant\SQLAssessmentConsole. Gunakan SqlAssessment.exe untuk mengumpulkan data performa untuk instans SQL Anda selama jangka waktu yang lama, dan keluarkan hasilnya ke file JSON atau CSV.

Perintah ini mendukung rekomendasi untuk database tunggal Azure SQL Database, Azure SQL Managed Instance, dan SQL Server pada opsi penyebaran Azure VM.

.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlManagedInstance
Argumen Deskripsi Diperlukan (Y/N)
PerfDataCollection Memulai pengumpulan data performa. Y
GetSkuRecommendation Melakukan agregasi dan analisis data performa yang dikumpulkan dan menentukan rekomendasi SKU. Y
GetMetadata Melakukan kumpulan metadata instans SQL target, termasuk jumlah dan properti instans server, database dan file database, objek yang ditentukan pengguna, dll. Laporan lengkap diekspor ke MetadataReport.json. Y
--outputFolder Folder dari data performa, laporan, dan log mana yang ditulis ke/dibaca. N
(Default: direktori saat ini)
--sqlConnectionStrings String koneksi formal yang diapit kutipan untuk instans SQL target. Y
--overwrite Apakah akan menimpa penilaian atau laporan rekomendasi SKU yang ada atau tidak. N
(Default: true)
--perfQueryIntervalInSec Interval untuk mengkueri data performa, dalam hitungan detik. N
(Khusus untuk PerfDataCollection tindakan. Default 30)
--staticQueryIntervalInSec Interval untuk mengkueri dan mempertahankan data konfigurasi statis, dalam hitungan detik. N
(Khusus untuk PerfDataCollection tindakan. Default 30)
--numberOfIterations Jumlah perulangan pengumpulan data performa yang harus dilakukan sebelum bertahan ke file. N
(Khusus untuk PerfDataCollection tindakan. Default 20)
--perfQueryIntervalInSec Interval di mana data performa dikueri, dalam hitungan detik. N
(Khusus untuk GetSkuRecommendation tindakan. Ini harus cocok dengan nilai yang awalnya digunakan selama pengumpulan data performa. Default: 30)
--targetPlatform Platform target untuk rekomendasi SKU: , AzureSqlDatabase, AzureSqlManagedInstance, AzureSqlVirtualMachineatau Any. N
(Khusus untuk GetSkuRecommendation tindakan. Default: Any)
--targetSqlInstance Nama instans SQL yang ditargetkan rekomendasi SKU. N
(Khusus untuk GetSkuRecommendation tindakan)
--targetPercentile Persentil poin data yang akan digunakan selama agregasi data performa. N
(Khusus untuk GetSkuRecommendation tindakan. Hanya digunakan untuk strategi garis besar (nonelastic). Default: 95)
--scalingFactor Faktor penskalaan (kenyamanan) yang digunakan selama rekomendasi SKU. N
(Khusus untuk GetSkuRecommendation tindakan. Default: 100)
--startTime Waktu mulai UTC titik data performa untuk dipertimbangkan selama agregasi, dalam "YYYY-MM-DD HH:MM" format. N
(Khusus untuk GetSkuRecommendation tindakan. Hanya digunakan untuk strategi garis besar (tidak ada)
--endTime Waktu akhir UTC titik data performa yang perlu dipertimbangkan selama agregasi, dalam "YYYY-MM-DD HH:MM" format N
(Khusus untuk GetSkuRecommendation tindakan. Hanya digunakan untuk strategi garis besar (tidak ada)
--elasticStrategy Apakah menggunakan strategi elastis untuk rekomendasi SKU berdasarkan pembuatan profil penggunaan sumber daya statistik atau tidak. Strategi elastis saat ini tersedia untuk Azure SQL Database dan SQL Managed Instance, belum tersedia untuk SQL Server pada target Azure VM. N
(Khusus untuk GetSkuRecommendation tindakan. Default: false)
--databaseAllowList Daftar nama database yang dipisahkan spasi yang akan disertakan untuk rekomendasi SKU N
(Khusus untuk GetSkuRecommendation tindakan. Default: null)
--databaseDenyList Daftar nama database yang dipisahkan spasi yang akan dikecualikan untuk rekomendasi SKU. Hanya atur salah satu dari berikut ini atau tidak: databaseAllowList, databaseDenyList N
(Khusus untuk GetSkuRecommendation tindakan. Default: null)
--displayResult Apakah akan mencetak hasil rekomendasi SKU ke konsol atau tidak. Hanya atur salah satu dari berikut ini atau tidak: databaseAllowList, databaseDenyList N
(Khusus untuk GetSkuRecommendation tindakan. Default: true)

Contoh penilaian SKU menggunakan CLI

SqlAssessment.exe

SqlAssessment.exe --help

Memulai proses pengumpulan data untuk instans SQL Server lokal

.\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

Azure SQL Database / Azure SQL Managed Instance / SQL Server pada rekomendasi Azure VM SKU

.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform Any

Rekomendasi SKU Azure SQL Managed Instance dengan persentase agregasi tertentu untuk titik data dan faktor penskalaan kustom

.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlManagedInstance
--targetPercentile 90
--scalingFactor 80

Rekomendasi SQL Server pada Azure VM SKU dengan garis waktu agregasi kustom

.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlVirtualMachine
--startTime "2021-06-05 00:00"
--endTime "2021-06-07 00:00"