Udostępnij za pośrednictwem


Konfigurowanie ustawień programu Data Migration Assistant

Ważny

Narzędzie Data Migration Assistant (DMA) jest przestarzałe. Aby uzyskać opcje migracji z programu SQL Server do usługi Azure SQL, zobacz opcje migracji dla programu SQL Server do usługi Azure SQL.

Pewne zachowanie narzędzia Data Migration Assistant można dostosować, ustawiając wartości konfiguracji w pliku dma.exe.config. W tym artykule opisano kluczowe wartości konfiguracji.

Plik dma.exe.config dla wersji desktopowej aplikacji Data Migration Assistant oraz narzędzia wiersza polecenia można znaleźć w następujących folderach na twoim komputerze.

  • Aplikacja komputerowa

    %ProgramFiles%\Microsoft Data Migration Assistant\dma.exe.config

  • Narzędzie wiersza polecenia

    %ProgramFiles%\Microsoft Data Migration Assistant\dmacmd.exe.config

Przed wprowadzeniem modyfikacji pamiętaj o zapisaniu kopii oryginalnego pliku konfiguracji. Po wprowadzeniu zmian uruchom ponownie narzędzie Data Migration Assistant, aby nowe wartości konfiguracji zaczęły obowiązywać.

Liczba baz danych do oceny równolegle

Narzędzie Data Migration Assistant ocenia wiele baz danych równolegle. Podczas oceny narzędzie Data Migration Assistant wyodrębnia aplikację warstwy danych (dacpac), aby zrozumieć schemat bazy danych. Może wystąpić limit czasu tej operacji, jeśli kilka baz danych na tym samym serwerze jest poddawanych ocenie równolegle.

Począwszy od programu Data Migration Assistant w wersji 2.0, możesz to kontrolować, ustawiając wartość konfiguracji parallelDatabases. Wartość domyślna to 8.

<advisorGroup>
<workflowSettings>
<assessment parallelDatabases="8" />
</workflowSettings>
</advisorGroup>

Liczba baz danych do przeprowadzenia równoległej migracji

Narzędzie Data Migration Assistant migruje wiele baz danych równolegle przed migracją identyfikatorów logowania. Podczas migracji narzędzie Data Migration Assistant utworzy kopię zapasową źródłowej bazy danych, opcjonalnie skopiuje kopię zapasową, a następnie przywróci ją na serwerze docelowym. W przypadku wybrania kilku baz danych do migracji mogą wystąpić błędy przekroczenia limitu czasu.

Począwszy od programu Data Migration Assistant w wersji 2.0, jeśli wystąpi ten problem, możesz zmniejszyć wartość konfiguracji parallelDatabases. Możesz zwiększyć wartość, aby skrócić całkowity czas migracji.

<advisorGroup>
<workflowSettings>
<migration parallelDatabases="8″ />
</workflowSettings>
</advisorGroup>

Ustawienia DacFX

Podczas oceny narzędzie Data Migration Assistant wyodrębnia aplikację warstwy danych (dacpac), aby zrozumieć schemat bazy danych. Ta operacja może zakończyć się niepowodzeniem z przekroczeniami limitu czasu dla dużych baz danych lub jeśli serwer jest obciążony. Począwszy od migracji danych w wersji 1.0, można zmodyfikować następujące wartości konfiguracji, aby uniknąć błędów.

Notatka

Cały wpis <dacfx> jest domyślnie komentowany. Usuń komentarze, a następnie zmodyfikuj wartość zgodnie z potrzebami.

  • commandTimeout

    Ten parametr ustawia właściwość IDbCommand.CommandTimeout w sekundach. (Wartość domyślna= 60)

  • databaseLockTimeout

    Ten parametr jest odpowiednikiem SET LOCK_TIMEOUT w milisekundach. (Wartość domyślna= 5000)

  • maxDataReaderDegreeOfParallelism

    Ten parametr określa liczbę połączeń puli połączeń SQL do użycia. (Wartość domyślna= 8)

<advisorGroup>
<advisorSettings>
<dacFx commandTimeout="60" databaseLockTimeout="5000" maxDataReaderDegreeOfParallelism="8"/>
</advisorSettings>
</advisorGroup>

Baza danych Stretch: próg rekomendacji

Ważny

Baza danych Stretch jest przestarzała w programie SQL Server 2022 (16.x) i usłudze Azure SQL Database. Ta funkcja zostanie usunięta w przyszłej wersji silnika bazy danych. Unikaj używania tej funkcji w nowych pracach programistycznych i zaplanuj modyfikowanie aplikacji, które obecnie korzystają z tej funkcji.

Usługa SQL Server Stretch Databaseumożliwia dynamiczne rozciąganie ciepłych i zimnych danych transakcyjnych z programu Microsoft SQL Server 2016 na platformę Azure. Zalecenie bazy danych Stretch nie jest już dostępne jako opcja doradcy.

Limit czasu połączenia SQL

Możesz kontrolować limit czasu połączenia SQL dla wystąpień źródłowych i docelowych podczas uruchamiania oceny lub migracji, ustawiając wartość limitu czasu połączenia na określoną liczbę sekund. Wartość domyślna to 15 sekund.

<appSettings>
<add key="ConnectionTimeout" value="15" />
</appSettings>

Ignoruj kody błędów

Każda reguła ma kod błędu w tytule. Jeśli nie potrzebujesz reguł i chcesz je zignorować, użyj właściwości ignoreErrorCodes. Można określić, aby zignorować pojedynczy błąd lub wiele błędów. Aby zignorować wiele błędów, użyj średnika, na przykład ignoreErrorCodes="46010;71501". Wartość domyślna to 71501, która jest skojarzona z nierozwiązanymi odwołaniami zidentyfikowanymi, gdy obiekt odwołuje się do obiektów systemowych, takich jak procedury, widoki itp.

<workflowSettings>
<assessment parallelDatabases="8" ignoreErrorCodes="71501" />
</workflowSettings>

Kroki po migracji

Po migracji należy usunąć plik konfiguracji zawierający nazwy użytkowników. Plik konfiguracji można znaleźć w następującej lokalizacji:

C:\Users\<username>\AppData\Local\DataMigrationAssistant\Servers.xml

Nota

Ten plik zawiera tylko nazwy użytkowników, a nie hasła.

  • pobieranie Data Migration Assistant