Udostępnij za pośrednictwem


Rozwiązywanie problemów podczas migracji do Azure SQL Managed Instance

Ten artykuł ułatwia rozwiązywanie typowych problemów, które mogą wystąpić podczas migrowania baz danych SQL Server do Azure SQL Managed Instance przy użyciu migracji SQL Server w Azure Arc.

Uwaga / Notatka

Możesz przekazać opinię na temat doświadczenia z migracji bezpośrednio do grupy produktów.

Wersja agenta usługi Arc

W przypadku korzystania z migracji SQL Server w Azure Arc niektóre funkcje wymagają minimalnej wersji agenta usługi Arc. Agent usługi Arc to plik wykonywalny, który działa obok wystąpienia SQL Server w celu zapewnienia łączności z Azure. Zawsze aktualizuj wersję agenta usługi Arc, aby uzyskać najnowsze poprawki i aktualizacje.

Po włączeniu aktualizacji automatycznych agent usługi Arc jest aktualizowany automatycznie. Jednak po wdrożeniu nowej wersji agenta usługi Arc aktualizacja może potrwać kilka dni, aby aktualizacja dotarła do wszystkich serwerów. Proces można przyspieszyć, ręcznie wykonując aktualizację agenta Arc na żądanie za pośrednictwem portalu Azure lub interfejsów wiersza polecenia.

Jeśli zobaczysz następujący błąd podczas uzyskiwania dostępu do Migracja bazy danych w okienku portalu Azure, należy uaktualnić agenta usługi Arc do obsługiwanej wersji.

To enable migration and monitoring capabilities, 
please update your Azure Arc agent extension "WindowsAgentSQLServer" to the latest version.

Problemy z agentem usługi Arc

Jeśli wystąpią problemy z agentem Arc, takie jak nieprawidłowy stan rozszerzenia lub rozłączone wystąpienie SQL Server, skorzystaj z następującego przewodnika rozwiązywania problemów z rozszerzeniem: Rozwiązywanie problemów z rozszerzeniem Azure dla SQL Server.

Problemy z oceną gotowości do migracji

System uruchamia oceny gotowości migracji co niedzielę o godzinie 11:00 (23:00) na serwerze. Oceny dla nowo włączonych przez Azure Arc wystąpień SQL Server mogą pojawić się w portalu Azure po kilku dniach. Użyj Uruchom ocenę, aby uruchomić ocenę na żądanie. Ocena zostanie wyświetlona po kilku minutach.

Jeśli strona ocen gotowości do migracji bazy danych jest pusta w portalu Azure, zaplanowana ocena prawdopodobnie nie została uruchomiona lub wystąpił problem z uruchomieniem oceny w wystąpieniu SQL Server. Wyłączenie agenta Arc uniemożliwia uruchamianie analiz. Upewnij się, że agent usługi Arc jest włączony. Aby uzyskać więcej informacji, zobacz Zmienianie ustawień oceny.

Rozważmy następujący znany problem:

  • Gdy xp_cmdshell jest włączona i używana, ocena rejestruje ostrzeżenie dla SQL Managed Instance, ponieważ nadal można migrować bazę danych. Jednak zakłóca funkcjonalność obiektu, który używa xp_cmdshell w szczególny sposób. Skorzystaj ze wskazówek dotyczących korygowania podanych w ocenie, aby rozwiązać ten problem.

Skontaktuj się z pomoc techniczna firmy Microsoft jeśli wystąpią jakiekolwiek z następujących problemów:

  • Raporty oceny nie są wyświetlane w portalu nawet po zaplanowanym czasie.
  • Dostępność danych wydajności nie zwiększa się po tygodniu zbierania danych.

Wyświetlanie dziennika aktywności Azure pod kątem problemów z migracją

Dziennik aktywności w portalu Azure po korzystaniu z zasobu zapewnia wgląd w zdarzenia na poziomie zasobów, które występują w Azure. Te szczegółowe informacje obejmują informacje dotyczące modyfikowania lub usuwania zasobów, a także szczegółowe informacje o kondycji usługi i innych ważnych zdarzeniach.

Podczas rozwiązywania problemów z migracją do Azure SQL Managed Instance przy użyciu migracji SQL Server w Azure Arc dziennik aktywności jest cennym zasobem umożliwiającym zidentyfikowanie problemów i zrozumienie sekwencji zdarzeń, które doprowadziły do wystąpienia problemu.

Aby uzyskać dostęp do dziennika aktywności w portalu Azure dla wystąpienia SQL Server zarządzanego przez zasób Azure Arc, wykonaj następujące kroki:

  1. Przejdź do wystąpienia SQL Server, które jest włączone za pomocą zasobu Azure Arc, w portalu Azure.

  2. Wybierz pozycję Dziennik aktywności z menu zasobów:

    Zrzut ekranu dziennika aktywności dla zasobu instancji SQL Server wyróżniony w portalu Azure.

Możesz również uzyskać dostęp do dziennika aktywności na poziomie subskrypcji, aby uzyskać szerszy widok zdarzeń we wszystkich zasobach w ramach subskrypcji, wybierając ikonę dzwonka powiadomień górnego paska nawigacyjnego, a następnie wybierając pozycję Więcej zdarzeń w dzienniku aktywności:

Zrzut ekranu ikony dzwonka powiadomień podświetlonej w portalu Azure.

Wybierz zdarzenie z dziennika aktywności, aby otworzyć okienko szczegółów zdarzenia. Użyj kart Podsumowanie i JSON , aby wyświetlić szczegółowe informacje o zdarzeniu, w tym konkretne komunikaty o błędach. Jeśli utworzysz wniosek o pomoc techniczną, przekaż te informacje z jak największą ilością szczegółów.

Nowe bazy danych są niedostępne w portalu Azure

Ostatnio dodane bazy danych do wystąpienia SQL Server mogą nie być natychmiast widoczne w portalu Azure podczas próby wybrania baz danych na potrzeby migracji. Dzieje się tak, ponieważ automatyczne odświeżanie listy baz danych przez agenta usługi Arc trwa około godziny.

Aby obejść ten problem, możesz ponownie uruchomić usługę Arc, aby wyzwolić natychmiastowe odświeżenie listy baz danych.

W systemie Windows użyj następującego polecenia w wierszu polecenia z podwyższonym poziomem uprawnień na serwerze, który hostuje wystąpienie SQL Server.

Restart-Service himds
Restart-Service gcarcservice
Restart-Service extensionservice

Poczekaj na ponowne uruchomienie usług, a następnie użyj następującego polecenia, aby sprawdzić, czy usługa jest uruchomiona za pomocą następującego polecenia:

& "$env:ProgramW6432\AzureConnectedMachineAgent\azcmagent.exe" show

Na serwerach z systemem Linux użyj następującego polecenia w terminalu z podwyższonym poziomem uprawnień:

sudo systemctl restart himdsd
sudo systemctl restart gcad
sudo systemctl restart extd

Poczekaj na ponowne uruchomienie usług, a następnie użyj następującego polecenia, aby sprawdzić, czy usługa jest uruchomiona za pomocą następującego polecenia:

azcmagent show

Przejdź do strony Databases w portalu Azure dla wystąpienia SQL Server i wybierz Refresh aby wyświetlić nowo dodane bazy danych. Teraz możesz wybrać te nowe bazy danych na potrzeby migracji.

W tej sekcji opisano niektóre typowe problemy z funkcją linku Managed Instance podczas migracji do Azure SQL Managed Instance za pośrednictwem migracji SQL Server w Azure Arc:

Zainstalowany niepoprawny dodatek Service Pack

Upewnij się, że masz zainstalowany odpowiedni pakiet serwisowy (SP) lub aktualizację zbiorczą (CU) dla SQL Server.

Aby sprawdzić poprawną wersję, uruchom następujące polecenie języka T-SQL w wystąpieniu SQL Server:

EXEC sp_certificate_add_issuer @CERTID, N'*.database.windows.net'

Jeśli pojawi się błąd, że SQL Server nie może znaleźć procedury składowanej sp_certificate_add_issuer, prawdopodobnie nie masz zainstalowanego odpowiedniego pakietu serwisowego (takiego jak pakiet funkcji Azure Connect). Zainstaluj niezbędne aktualizacje obsługi i spróbuj ponownie.

Funkcja zawsze włączonej grupy dostępności jest wyłączona

Upewnij się, że funkcja grupy dostępności Always On jest włączona w wystąpieniu SQL Server. Link zarządzanej instancji wymaga włączenia funkcji Always On Availability Group, aby zapewnić odpowiednią funkcjonalność.

Korzystanie z SQL Server 2016

W przypadku SQL Server 2016 (13.x) należy wykonać dodatkowe kroki opisane w dokumencie Prepare SQL Server 2016 prerequisites for the link. Te dodatkowe kroki nie są wymagane w przypadku SQL Server 2017 (14.x) i nowszych wersji obsługiwanych przez link.

Problemy z łącznością sieciową

Pomyślna łączność między środowiskiem SQL Server a Azure SQL Managed Instance jest niezbędna, aby funkcja łącza Managed Instance działała. Jeśli masz problemy z łącznością sieciową, rozważ następujące kwestie:

  • Łącze Managed Instance nie działa poprzez sieć publiczną, więc połączenie między wystąpieniem SQL Server a Azure SQL Managed Instance musi być prywatne, na przykład poprzez łącze sieciowe VPN.
  • Łączność można przetestować bezpośrednio z portalu Azure w ramach procesu migracji. Jeśli test połączenia zakończy się pomyślnie w portalu, ale nie można utworzyć linku, sprawdź dziennik aktywności , aby uzyskać szczegółowe informacje o błędzie. Możesz również ręcznie przetestować łączność używając Transact-SQL i SQL Server Agent.
  • Sprawdź, czy w sieci nie ma żadnych zapór firmowych. Mimo że łączność sieciowa może wydawać się działać, zapory mogą blokować określony typ pakietów, które SQL Server używa do rozproszonych grup dostępności. Sprawdź, czy zapory nie blokują ani nie filtruje typów pakietów.

Podczas uruchamiania zadania migracji łącza Managed Instance mogą pojawić się następujące ostrzeżenia. Migrację można kontynuować pomimo następujących ostrzeżeń:

  • Warning: Database Mirroring Endpoint does not exist
  • Warning: Database Mirroring Endpoint is not secure with a certificate
  • Warning: Database Mirroring Endpoint is not enabled
  • Warning: Database Mirroring Endpoint encryption algorithm is not set to AES

Te ostrzeżenia są obecnie znanym problemem, a proces migracji rozwiązuje je automatycznie, aby można było kontynuować migrację.

Zbadaj inne ostrzeżenia. Niektóre ostrzeżenia mogą wymagać rozwiązania ze strony przed rozpoczęciem migracji, a niektóre mogą zostać rozwiązane po zakończeniu migracji.

Konfigurowanie linku za pośrednictwem portalu Azure na potrzeby migracji nie jest zgodne z istniejącymi linkami utworzonymi ręcznie za pośrednictwem SQL Server Management Studio (SSMS) lub Transact-SQL (T-SQL). Jeśli link już istnieje, nie można utworzyć nowego linku za pośrednictwem portalu Azure.

Jeśli link już istnieje w źródle SQL Server lub Azure SQL Managed Instance docelowym, należy wykonać następujące kroki przed utworzeniem nowego łącza między tym źródłem a obiektem docelowym za pośrednictwem portalu Azure:

  1. Usuń link ręcznie z SQL Managed Instance przy użyciu polecenia Remove-AzSqlInstanceLink lub az sql mi link delete z Azure Cloud Shell lub komputera zalogowanego przy użyciu kontekstu Azure.
  2. Usuń link ręcznie z SQL Server przy użyciu DROP AVAILABILITY GROUP z nazwą rozproszonej grupy dostępności skojarzonej z linkiem.
  3. Usuń wszystkie certyfikaty związane z linkami z wystąpienia SQL Server przy użyciu DROP CERTIFICATE. Certyfikaty, które należy usunąć, zazwyczaj zawierają następujące wartości: DigiKey PKI, Microsoft PKI, endpoint i database.windows.net. Aby wyświetlić listę wszystkich certyfikatów w SQL Server, można użyć SELECT * FROM sys.certificates.
  4. Usuń wszystkie certyfikaty związane z łączem z SQL Managed Instance przy użyciu Remove-AzSqlInstanceServerTrustCertificate lub az sql mi partner-cert delete z Azure Cloud Shell lub komputera zalogowanego przy użyciu kontekstu Azure. Możesz użyć Get-AzSqlInstanceServerTrustCertificate lub az sql mi partner-cert show aby wyświetlić listę istniejących certyfikatów uwierzytelniania na SQL Managed Instance.
  5. W poprzednich krokach usuwane są wszystkie certyfikaty uwierzytelniające związane z ręcznie utworzonym łączem. Jeśli nie używasz istniejącej grupy dostępności lokalnie, rozważ usunięcie istniejącego punktu końcowego dublowania bazy danych przy użyciu funkcji DROP ENDPOINT. Aby wyświetlić listę wszystkich istniejących punktów końcowych w SQL Server, możesz użyć SELECT * FROM sys.endpoints. Przed usunięciem punktu końcowego należy usunąć certyfikat skojarzony z punktem końcowym.

Szczegółowe rozwiązywanie problemów z profilerem XE

Aby uzyskać szczegółowe informacje na temat rozwiązywania problemów z linkiem, użyj profilera XE.

Problemy z migracją usługi Log Replay Service

W tej sekcji wymieniono typowe problemy, które mogą wystąpić podczas migracji przy użyciu usługi ponownego odtwarzania dziennika (LRS):

Nie można wyświetlić listy katalogów w Azure Blob Storage

Jeśli podczas wybierania katalogu na stronie Nowa migracja danych w portalu Azure pojawi się komunikat o błędzie Unable to list directories, oznacza to, że użytkownik aktualnie zalogowany do portalu nie ma przypisanej roli Odczytywanie danych obiektów blob do konta magazynu. Udziel użytkownikowi dostępu do konta magazynu , aby rozwiązać ten problem.

Nie znaleziono wyników w katalogu

Jeśli zobaczysz komunikat No results were found in directory podczas wybierania katalogu na stronie Nowa migracja danych w portalu Azure, oznacza to, że w kontenerze Azure Blob Storage nie ma dostępnej kopii zapasowej bazy danych. Aby rozwiązać ten problem, przekaż pełną kopię zapasową bazy danych do usługi Azure Blob Storage.

Sprawdzanie stanu przywracania pliku

Aby sprawdzić, ile plików zostało wykrytych, umieszczonych w kolejce, pominiętych lub nieprzywracalnych podczas migracji, użyj strony Monitorowanie i przełączenie w portalu Azure. Po rozpoczęciu migracji przejdź do strony Monitorowanie i migracja jednorazowa , a następnie wybierz bazę danych, którą migrujesz, aby otworzyć szczegóły migracji dla tej bazy danych.

Błąd 2009 — Tożsamość zarządzana nie jest poprawnie skonfigurowana

Jeśli migracja zostanie pomyślnie uruchomiona, ale zakończy się niepowodzeniem z powodu błędu 2009 - managed identity is not set up properly, główna tożsamość wystąpienia zarządzanego nie ma przypisanego uprawnienia Czytnik danych obiektu Blob w magazynie do konta usługi Azure Blob Storage. Udziel tożsamości zarządzanej dostępu do konta magazynowania, aby rozwiązać ten problem. Sprawdź, czy odpowiednia tożsamość (domyślna tożsamość zarządzana lub tożsamość niestandardowa zdefiniowana przez użytkownika) ma wymagane uprawnienia lub czy tożsamość nie zmieniła się, ponieważ pierwotnie udzielono uprawnień. Jeśli tożsamość została zmieniona, przyznaj odpowiednie uprawnienia nowej tożsamości, aby rozwiązać ten problem.

Rozwiązywanie problemów z migracją za pomocą usługi DMS

Uruchomienie zadania migracji LRS w usłudze Azure Arc automatycznie tworzy zadanie migracji Database Migration Service (DMS), umożliwiając użycie Azure Database Migration Service w portalu Azure do wyświetlenia dodatkowych szczegółów dotyczących zadania migracji.

Aby wyświetlić szczegóły zadania migracji LRS w usłudze DMS, wykonaj następujące kroki:

  1. Przejdź do Azure Database Migration Service w portalu Azure.

  2. Wybierz pozycję Wszystkie zasoby, a następnie wybierz zadanie migracji DMS skojarzone z migracją LRS, aby otworzyć stronę szczegółów migracji.

    Zrzut ekranu z strony wszystkich zasobów w portalu Azure.

  3. Na stronie szczegółów migracji wybierz pozycję Monitoruj migracje, aby wyświetlić stan baz danych migrowanych dla określonego wystąpienia, używając LRS. Wybierz pozycję Powodzenie, Anulowano lub Błąd , aby wyświetlić więcej szczegółów na temat stanu.

    Innym sposobem uzyskania dostępu do tej strony jest użycie zasobu Azure Database Migration Service dodanego do grupy zasobów zawierającej docelową SQL Managed Instance po rozpoczęciu migracji przez Azure Arc.

Usuwanie zadań migracji

Zadania dotyczące migracji LRS pozostają na stronie Monitorowanie i przełączenie przez 28 dni po zakończeniu (pomyślnie lub z niepowodzeniem). Możesz ręcznie usunąć zadania, jeśli chcesz je wyczyścić ze strony monitorowania wcześniej.

Aby ręcznie usunąć zadania, przejdź do zadania migracji DMS skojarzonego z migracją LRS, zgodnie z opisem w poprzedniej sekcji. Wybierz zadanie migracji, które chcesz usunąć, a następnie użyj przycisku Usuń z ikonką kosza, aby je usunąć. Potwierdź, wybierając pozycję "Zaznacz to pole, aby potwierdzić usunięcie". Ta akcja powoduje wyczyszczenie zadań ze strony Monitor i cutover na Azure Arc.

Znane problemy po migracji do SQL Managed Instance

Po przeprowadzeniu migracji do Azure SQL Managed Instance rozważ następujące znane problemy:

Niepowodzenia operacji przywracania po migracji do usługi SQL Managed Instance

W przypadku migracji bazy danych do Azure SQL Managed Instance z SQL Server 2019 i nowszych wersji z włączonym przyspieszonym odzyskiwaniem bazy danych, ale skonfigurowanej przy użyciu magazynu wersji trwałej (PVS) ustawionego na inną niż grupa plików PRIMARY, można doświadczyć błędów podczas operacji przywracania na docelowym wystąpieniu zarządzanym SQL.

Aby obejść ten problem, upewnij się, że ustawiono magazyn wersji persistent (PVS) na PRIMARY w źródłowej bazie danych SQL Server przed przeprowadzeniem migracji do SQL Managed Instance. Jeśli baza danych została już zmigrowana bez ustawienia pvS na PRIMARY, możesz ustawić ją w źródłowej bazie danych SQL Server, a następnie ponownie zmigrować bazę danych do SQL Managed Instance.

Nie można użyć przyspieszonego odzyskiwania bazy danych po przeprowadzeniu migracji do SQL Managed Instance

Począwszy od SQL Server 2019, jeśli migrujesz bazę danych do Azure SQL Managed Instance, a źródłowa baza danych ma przyspieszone odzyskiwanie bazy danych wyłączone, nie można użyć przyspieszonego odzyskiwania bazy danych w docelowym wystąpieniu zarządzanym SQL.

Aby obejść ten problem, upewnij się, że włączysz przyspieszone odzyskiwanie bazy danych w źródłowej bazie danych SQL Server przed przeprowadzeniem migracji do SQL Managed Instance. Jeśli baza danych została już zmigrowana bez włączania przyspieszonego odzyskiwania bazy danych, możesz ją włączyć w źródłowej bazie danych SQL Server, a następnie ponownie zmigrować bazę danych do wystąpienia zarządzanego SQL.

SQL Server 2017 i wcześniejszych wersjach nie obsługują przyspieszonego odzyskiwania bazy danych, więc ten problem nie dotyczy baz danych migrowanych z tych wersji SQL Server.

Nie można użyć usługi Service Broker po przeprowadzeniu migracji do SQL Managed Instance

W przypadku migracji bazy danych do Azure SQL Managed Instance, i Service Broker jest wyłączony w źródłowej bazie danych, nie można użyć usługi Service Broker w docelowej zarządzanej instancji SQL.

Aby obejść ten problem, przed przeprowadzeniem migracji do SQL Managed Instance upewnij się, że włączono usługę Service Broker w źródłowej bazie danych SQL Server. Jeśli baza danych została już zmigrowana bez włączania usługi Service Broker, możesz ją włączyć w źródłowej bazie danych SQL Server, a następnie ponownie zmigrować bazę danych do SQL Managed Instance.

Kontakt Microsoft

Możesz skontaktować się z Microsoft, aby otworzyć bilet pomocy technicznej z problemem, który masz, lub przekazać opinię bezpośrednio do grupy produktów.

Skontaktuj się z obsługą

Użyj https://aka.ms/azure-support, aby przejść do Pomoc i obsługa techniczna w portalu Azure, a następnie wykonaj następujące kroki, aby otworzyć bilet pomocy technicznej związany z migracją:

  1. Wybierz pozycję Utwórz wniosek o pomoc techniczną, aby otworzyć okienko Pomoc techniczna i rozwiązywanie problemów .
  2. Wpisz migration w polu tekstowym, a następnie wybierz pozycję Żadna z powyższych w obszarze Z którą usługą masz problem?
  3. Z listy rozwijanej Wybierz usługę wybierz SQL Server enabled by Azure Arc, a następnie użyj Dalej aby kontynuować.
  4. Wybierz swoją subskrypcję z listy rozwijanej.
  5. Wybierz swoje wystąpienie SQL Server zarządzane przez Azure Arc z listy rozwijanej Zasób, a następnie wybierz Dalej.
  6. Wybierz pozycję Problemy z migracją na kafelku Czy masz jeden z następujących problemów? a następnie wybierz pozycję Dalej.
  7. Wybierz Utwórz żądanie wsparcia na górnym pasku nawigacyjnym w okienku Pomoc techniczna i rozwiązywanie problemów, aby otworzyć formularz zgłoszenia wsparcia.
  8. Użyj następujących wartości podtypu problemu , aby skierować problem do odpowiedniej kolejki pomocy technicznej:
  9. Użyj pozycji Dalej , aby przejść przez pozostałe kroki formularza wniosku o pomoc techniczną, a następnie wybierz pozycję Utwórz , aby przesłać wniosek o pomoc techniczną.

Przekaż opinię do zespołu produktowego

Możesz przekazać opinię do grupy produktów, aby pomóc poprawić doświadczenie migracji. Użyj następującego linku, aby przesłać swoją opinię: