Aracılığıyla paylaş


Data Migration Yardımcısı'nı komut satırından çalıştırma

Önemli

Data Migration Yardımcısı (DMA) kullanım dışı bırakıldı. SQL Server'dan Azure SQL'e geçiş seçenekleri için bkz. SQL Server'dan Azure SQL'e geçiş seçenekleri.

Sürüm 2.1 ve sonraki sürümlerde Data Migration Yardımcısı'nı yüklediğinizde, dmacmd.exe'nin de %ProgramFiles%\Microsoft Data Migration Assistant içinde yüklendiğini fark edeceksiniz. Veritabanlarınızı katılımsız modda değerlendirmek için DMACMD kullanın ve sonucu JSON veya CSV dosyasına verin. Bu yöntem özellikle çeşitli veritabanlarını veya büyük veritabanlarını değerlendirirken kullanışlıdır.

DMACMD yalnızca değerlendirmelerin yürütülmesini destekler. Geçişler şu anda desteklenmiyor.

Komut Satırı Arabirimini (CLI) kullanan değerlendirmeler

dmacmd.exe /AssessmentName="string"
/AssessmentDatabases="connectionString1" ["connectionString2"]
[/AssessmentSourcePlatform="SourcePlatform"]
[/AssessmentTargetPlatform="TargetPlatform"]
/AssessmentEvaluateFeatureParity|/AssessmentEvaluateCompatibilityIssues
[/AssessmentOverwriteResult]
/AssessmentResultJson="file"|/AssessmentResultCsv="file"
Tartışma Açıklama Gerekli (Evet/Hayır)
/help or /? dmacmd.exe yardım metnini kullanma N
/AssessmentName Değerlendirme projesinin adı Y
/AssessmentDatabases Bağlantı dizelerinin boşlukla ayrılmış listesi. Veritabanı adı (İlk Katalog) büyük/küçük harfe duyarlıdır. Y
/AssessmentSourcePlatform Değerlendirme için kaynak platform:
Değerlendirme için desteklenen değerler: SqlOnPrem, RdsSqlServer (varsayılan)
Hedef Hazır Olma Değerlendirmesi için desteklenen değerler: SqlOnPrem, RdsSqlServer (varsayılan), Cassandra (önizleme)
N
/AssessmentTargetPlatform Değerlendirme için hedef platform:
Değerlendirme için desteklenen değerler: AzureSqlDatabase, ManagedSqlServer, SqlServer2012, SqlServer2014, SqlServer2016, SqlServerLinux2017ve SqlServerWindows2017 (varsayılan)
Hedef Hazır Olma Değerlendirmesi için desteklenen değerler: ManagedSqlServer (varsayılan), CosmosDB (önizleme)
N
/AssessmentEvaluateFeatureParity Özellik eşdeğerliği kurallarını çalıştırın. Kaynak platform RdsSqlServer ise, özellik eşlik değerlendirmesi hedef platform AzureSqlDatabase için desteklenmez Y
(AssessmentEvaluateCompatibilityIssues veya AssessmentEvaluateFeatureParity gereklidir.)
/AssessmentEvaluateCompatibilityIssues Uyumluluk kurallarını çalıştırma Y
(AssessmentEvaluateCompatibilityIssues veya AssessmentEvaluateFeatureParity gereklidir.)
/AssessmentOverwriteResult Sonuç dosyasının üzerine yazma N
/AssessmentResultJson JSON sonuç dosyasının tam yolu Y
(AssessmentResultJson veya AssessmentResultCsv gereklidir)
/AssessmentResultCsv CSV sonuç dosyasının tam yolu Y
(AssessmentResultJson veya AssessmentResultCsv gereklidir)
/AssessmentResultDma .dma sonuç dosyasının tam yolu N
/Action SKU önerileri almak için SkuRecommendation kullanın.
Hedef hazır olma değerlendirmesi gerçekleştirmek için AssessTargetReadiness kullanın.
Azure Migrate'e toplu yükleme yapmak için AzureMigrateUpload'ı kullanarak AssessmentResultInputFolder'deki tüm DMA değerlendirme dosyalarını karşıya yükleyin. Action tipi kullanımı /Action=AzureMigrateUpload
N
/SourceConnections Bağlantı dizelerinin boşlukla ayrılmış listesi. Veritabanı adı (İlk Katalog) isteğe bağlıdır. Veritabanı adı sağlanmamışsa, kaynak üzerindeki tüm veritabanları değerlendirilir. Y
(ActionAssessTargetReadinessise gereklidir)
/TargetReadinessConfiguration Ad, kaynak bağlantılar ve sonuç dosyası değerlerini açıklayan XML dosyasının tam yolu. Y
(TargetReadinessConfiguration veya SourceConnections gereklidir)
/FeatureDiscoveryReportJson Özellik bulma JSON raporunun yolu. Bu dosya oluşturulursa, kaynağa bağlanmadan hedef hazır olma değerlendirmesini yeniden çalıştırmak için kullanılabilir. N
/ImportFeatureDiscoveryReportJson Daha önce oluşturulan özellik bulma JSON raporunun yolu. Bu dosya, kaynak bağlantılar yerine kullanılır. N
/EnableAssessmentUploadToAzureMigrate Değerlendirme sonuçlarının Azure Migrate'e yüklenmesini ve yayımlanmasını sağlar N
/AzureCloudEnvironment Bağlanacak Azure bulut ortamını seçer, varsayılan olarak Azure Genel Bulutu'dur. Desteklenen değerler: Azure (varsayılan), AzureChina, AzureGermanyAzureUSGovernment. N
/SubscriptionId Azure abonelik kimliği. Y
Gereklidir (eğer EnableAssessmentUploadToAzureMigrate bağımsız değişkeni belirtilirse).
/AzureMigrateProjectName Değerlendirme sonuçlarını karşıya yüklemek için Azure Migrate projesinin adı. Y
(EnableAssessmentUploadToAzureMigrate bağımsız değişkeni belirtilmişse gereklidir)
/ResourceGroupName Azure Migrate kaynak grubunun adı. Y
(Eğer EnableAssessmentUploadToAzureMigrate bağımsız değişkeni belirtilirse gereklidir)
/AssessmentResultInputFolder Azure Migrate'e yüklenecek .dma değerlendirme dosyalarını içeren giriş klasörünün yolu. Y
(ActionAzureMigrateUploadise gereklidir)

CLI kullanan değerlendirme örnekleri

DMACMD

dmacmd.exe /?

Veya:

dmacmd.exe /help`

Windows kimlik doğrulama ve çalıştırma uyumluluk kurallarını kullanarak tek veritabanı değerlendirmesi

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

SQL Server kimlik doğrulaması kullanarak ve özellik eşliği sağlayarak tek veritabanı değerlendirmesi

<password> geçerli bir parolayla değiştirin.

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

Hedef platform SQL Server 2012 için tek veritabanı değerlendirmesi , sonuçları .json ve .csv dosyasına kaydedin

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"

Hedef platform Azure SQL Veritabanı için tek veritabanı değerlendirmesi , sonuçları .json ve .csv dosyası'e kaydedin.

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"

Birden çok veritabanı değerlendirme

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 kimlik doğrulaması kullanarak Tek Veritabanı Hedef Hazırlık Değerlendirmesi

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

SQL Server kimlik doğrulaması ile tek veritabanı hedef hazırlık değerlendirmesi

<password> geçerli bir parolayla değiştirin.

dmacmd.exe /Action=AssessTargetReadiness
/AssessmentName="TestAssessment"
/SourceConnections="Server=SQLServerInstanceName;Initial Catalog=DatabaseName;User Id=myUsername;Password=<password>;" /AssessmentEvaluateFeatureParity
/AssessmentOverwriteResult
/AssessmentResultJson="C:\temp\Results\AssessmentReport.json"

Hedef platform Azure SQL Veritabanı için tek veritabanı değerlendirmesi , sonuçları .json ve .csv dosyası'e kaydedin.

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"

Çok veritabanılı Hedef Hazır olma değerlendirmesi

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 ve /AssessmentTargetPlatform isteğe bağlıdır.)

Windows kimlik doğrulaması kullanarak bir sunucudaki tüm veritabanları için Hedef Hazırlık Değerlendirmesi

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

Daha önce oluşturulan özellik bulma raporunu içeri aktararak Hedef Hazır olma değerlendirmesi

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

Hedef Hazırlık değerlendirmesi, yapılandırma dosyası sağlanarak yapılır.

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

Kaynak bağlantılar kullanılırken yapılandırma dosyası içeriği:

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

Özellik bulma raporu içeri aktarılırken yapılandırma dosyası içeriği:

<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 Genel Bulut'ta (varsayılan) Azure Geçiş'e değerlendir ve yükle

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

Toplu olarak DMA değerlendirme dosyalarını Azure Genel Bulut'taki Azure Geçiş'e yükleyin (varsayılan)

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

CLI kullanarak Azure SQL Veritabanı / Azure SQL Yönetilen Örnek / SQL Server Azure VM üzerinde SKU önerileri

Sürüm 5.4 ve sonraki sürümlerde Data Migration Assistant'ı yüklediğinizde, ayrıca SqlAssessment.exe da %ProgramFiles%\Microsoft Data Migration Assistant\SQLAssessmentConsoleiçinde yüklenir. SQL örneğinizin performans verilerini uzun bir süre boyunca toplamak ve sonucu JSON veya CSV dosyasına çıkarmak için SqlAssessment.exe kullanın.

Bu komutlar hem Azure SQL Veritabanı tek veritabanı, Azure SQL Yönetilen Örneği hem de Azure VM'de SQL Server dağıtım seçenekleri için önerileri destekler.

.\SqlAssessment.exe GetSkuRecommendation
--outputFolder C:\Output
--targetPlatform AzureSqlManagedInstance
Tartışma Açıklama Gerekli (Evet/Hayır)
PerfDataCollection Performans verilerinin toplanmasını başlatır. Y
GetSkuRecommendation Toplanan performans verilerini toplama ve çözümleme gerçekleştirir ve SKU önerilerini belirler. Y
GetMetadata Sunucu örneklerinin, veritabanlarının ve veritabanı dosyalarının, kullanıcı tanımlı nesnelerin vb. sayısı ve özellikleri dahil olmak üzere hedef SQL örneklerinin meta veri koleksiyonunu gerçekleştirir. Raporun tamamı MetadataReport.jsondışarı aktarılır. Y
--outputFolder Performans verilerinin, raporların ve günlüklerin yazıldığı/okunduğu klasör. N
(Varsayılan: geçerli dizin)
--sqlConnectionStrings Hedef SQL örnekleri için tırnak içine alınmış resmi bağlantı dizeleri. Y
--overwrite Mevcut değerlendirme veya SKU önerileri raporlarının üzerine yazılıp yazılmayacağı. N
(Varsayılan: true)
--perfQueryIntervalInSec Performans verilerinin saniye cinsinden sorgulandığı aralık. N
(PerfDataCollection eylemine özgü. Varsayılan 30)
--staticQueryIntervalInSec Statik yapılandırma verilerini sorgulama ve kalıcı hale getirmek için saniye cinsinden aralık. N
(PerfDataCollection eylemine özgü. Varsayılan 30)
--numberOfIterations Dosyada kalıcı hale getirilmeden önce gerçekleştirilecek performans verileri toplama yinelemelerinin sayısı. N
(PerfDataCollection eylemine özgü. Varsayılan 20)
--perfQueryIntervalInSec Saniye cinsinden performans verilerinin sorgulandığı aralık. N
(GetSkuRecommendation eylemine özgü. Bu, performans verileri toplama sırasında ilk olarak kullanılan değerle eşleşmelidir. Varsayılan: 30)
--targetPlatform SKU önerisi için hedef platform: AzureSqlDatabase, AzureSqlManagedInstance, AzureSqlVirtualMachineveya Any. N
(GetSkuRecommendation eylemine özgü. Varsayılan: Any)
--targetSqlInstance SKU önerisinin hedeflediğini SQL örneğinin adı. N
(GetSkuRecommendation eyleme özgü)
--targetPercentile Performans verilerinin toplanması sırasında kullanılacak veri noktalarının yüzdebirliği. N
(GetSkuRecommendation eylemine özgü. Yalnızca temel (elastik olmayan) strateji için kullanılır. Varsayılan: 95)
--scalingFactor SKU önerisi sırasında kullanılan ölçeklendirme (konfor) faktörü. N
(GetSkuRecommendation eylemine özgü. Varsayılan: 100)
--startTime Toplama sırasında dikkate alınacak bazı performans veri noktalarının UTC'deki başlangıç saati, "YYYY-MM-DD HH:MM" biçimindedir. N
(GetSkuRecommendation eylemine özgü. Yalnızca temel (elastik olmayan) strateji için kullanılır
--endTime Toplama sırasında dikkate alınacak performans veri noktalarının UTC bitiş zamanı "YYYY-MM-DD HH:MM" formatında N
(GetSkuRecommendation eylemine özgü. Yalnızca temel (elastik olmayan) strateji için kullanılır
--elasticStrategy İstatistiksel kaynak kullanımı profili oluşturma temelinde SKU önerileri için elastik stratejinin kullanılıp kullanılmaymayacağı. Elastik strateji şu anda Azure SQL Veritabanları ve SQL Yönetilen Örneği için kullanılabilir, henüz Azure VM hedefinde SQL Server için kullanılamaz. N
(GetSkuRecommendation eylemine özgü. Varsayılan: false)
--databaseAllowList SKU önerileri için eklenecek veritabanlarının adlarının boşlukla ayrılmış listesi N
(GetSkuRecommendation eylemine özgü. Varsayılan: null)
--databaseDenyList SKU önerileri için dışlanacak veritabanlarının adlarının boşlukla ayrılmış listesi. Aşağıdakilerden yalnızca birini veya hiçbirini ayarlama: databaseAllowList, databaseDenyList N
(GetSkuRecommendation eylemine özgü. Varsayılan: null)
--displayResult SKU öneri sonuçlarının konsola yazdırılıp yazdırılmayacağı. Aşağıdakilerden yalnızca birini veya hiçbirini ayarlama: databaseAllowList, databaseDenyList N
(GetSkuRecommendation eylemine özgü. Varsayılan: true)

CLI kullanarak SKU değerlendirmesi örnekleri

SqlAssessment.exe

SqlAssessment.exe --help

Şirket içi SQL Server örnekleri için veri toplama işlemini başlatma

.\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 Veritabanı / Azure SQL Yönetilen Örnek / Azure VM'de SQL Server SKU önerileri

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

Azure SQL Yönetilen Örneği SKU önerileri , veri noktaları için belirli bir toplama yüzdesi ve özel bir ölçeklendirme faktörü ile birlikte.

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

Azure VM SKU önerileriyle özel toplama zaman çizelgesine sahip SQL Server

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