Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Procédure

Dlaczego powinienem zaktualizować bazę danych SQL Server do wcześniejszej wersji?

Wersja SQL Server używana obecnie na naszych serwerach to wersja 2012. Jeśli uruchomiłeś swoją witrynę lokalnie z nowszą wersją, może być konieczna migracja bazy danych do wersji 2012 w celu zaimportowania jej do pakietu hostingowego z panelu sterowania Plesk.

Niniejsza dokumentacja wyjaśnia, jak to zrobić.

Procedura migracji bazy danych SQL Server do wcześniejszej wersji

Komunikat o błędzie, który można napotkać podczas importowania bazy danych SQL Server, pojawia się, ponieważ pliki bazy danych SQL Server (*.mdf, *.ndf i *.ldf) i kopie zapasowe nie są kompatybilne wstecz. Kompatybilność wsteczna jest powodem, dla którego nie możemy przywrócić lub dołączyć bazy danych utworzonej z wyższej wersji SQL Server do niższej wersji SQL Server. Istnieje jednak kilka opcji, które mogą nam pomóc w obniżeniu wersji bazy danych z wyższej wersji SQL Server do niższej wersji SQL Server. Opcje te obejmują:

  • Użyj Kreatora generowania skryptów w SQL Server Management Studio
  • Użycie SQL Server Integration Services
  • Tworzenie niestandardowych skryptów i BCP

W tej wskazówce użyjemy Kreatora generowania skryptów w SQL Server Management Studio.

1. Skryptuj schemat bazy danych i dane w wyższej wersji SQL Server za pomocą Kreatora generowania skryptów w SSMS.
2. Połącz się z niższą wersją SQL Server i uruchom skrypty SQL wygenerowane w poprzednim kroku, aby utworzyć schemat bazy danych i dane.

Na potrzeby tego przykładu będziemy migrować bazę danych "BDDLWS".

Krok 1: Skrypt bazy danych do migracji

Utwórz skrypt schematu bazy danych "LWS Trial" na instancji powyżej SQL Server 2012 (LWS-HOTLINERSQLEXPRESS) za pomocą kreatora Generuj skrypty w SSMS.

W Eksploratorze obiektów połącz się z instancją SQL Server (LWS-HOTLINER), kliknij prawym przyciskiem myszy bazę danych (BDDLWS), rozwiń Zadania i wybierz"Generuj skrypty...".

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Spowoduje to uruchomienie kreatora generowania i publikowania skryptów. Kliknij Next, aby pominąć ekran wprowadzający i przejść do strony Choose objects.

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Na stronie Choose objects wybierz opcję "Script the entire database and all database objects", a następnie kliknij Next, aby przejść do strony "Define scripting options".

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?


Na stronie Definiowanie opcji skryptów określ lokalizację, w której chcesz zapisać plik skryptu, a następnie kliknij przycisk Zaawansowane .

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

W oknie dialogowym Zaawansowane opcje skryptów ,

  • ustawić skrypt dla wersji serwera na SQL Server 2008 R2 (lub wybraną wersję)
  • w sekcji Opcje tabeli / widoku ustaw Wyzwalacze skryptu, Indeksy skryptu i Klucze podstawowe skryptu na True

i ustaw Typy danych na Skrypt dla Schematu i Danych - ta ostatnia opcja jest niezbędna, ponieważ generuje dane według tabeli.

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Po wykonaniu tych czynności kliknij przycisk OK, aby zamknąć okno dialogowe Advanced Scripting Options i powrócić do strony Set Scripting Options. Na stronie Set Script Options kliknij przycisk Next, aby przejść do strony Summary.

Po zapoznaniu się z opcjami wybranymi na stronie Podsumowanie kliknij przycisk Dalej, aby wygenerować skrypty.

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Po pomyślnym wygenerowaniu skryptów kliknij przycisk Zakończ, aby zamknąć kreatora generowania i publikowania skryptów.

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Krok 2:
Połącz się z instancją SQL Server 2008 R2 (IITCUK \ SQLSERVER2008), a następnie uruchom skrypty SQL wygenerowane w kroku 1, aby utworzyć schemat bazy danych OUTLANDER i dane.

W Object Explorer połącz się z IITCUK \ SQLServer2008, a następnie w SQL Server Management Studio otwórz skrypt SQL Server zapisany w kroku 1.

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Edytuj skrypt, aby określić prawidłową lokalizację danych bazy danych OUTLANDER i plików dziennika. Gdy to zrobisz, uruchom skrypt, aby utworzyć bazę danych OUTLANDER na instancji IITCUK \ SQLServer2008.

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Po pomyślnym wykonaniu odśwież folder bazy danych w Eksploratorze obiektów. Jak widać na poniższym obrazku, baza danych OUTLANDER została pomyślnie zdegradowana.

Uwagi


Podczas korzystania z tego podejścia należy pamiętać o kilku kwestiach.

  • To rozwiązanie tworzy duży plik SQL zawierający skrypty do tworzenia obiektów bazy danych, a także instrukcje INSERT dla danych tabeli.
  • W przypadku dużych baz danych plik SQL może stać się bardzo duży, jeśli napiszesz zarówno schemat, jak i dane, i może być trudny do załadowania do edytora. Ponadto może pojawić się komunikat o błędzie pamięci edytora, jeśli plik jest zbyt duży.
  • W przypadku dużych baz danych, około 1 GB lub więcej, jeśli to podejście nie działa, należy rozważyć użycie SSIS do migracji bazy danych lub utworzenie niestandardowych skryptów w celu utworzenia skryptu dla obiektów i BCP dla danych w każdej z tabel. Możesz użyć tego kreatora generowania skryptów, aby po prostu wygenerować schemat bez danych i użyć SSIS lub BCP do eksportowania i importowania danych.
  • To podejście działa od SQL Server 2017 do SQL Server 2005. Niektóre opcje skryptów mogą być nieco inne w nowszych wersjach, ale proces pozostaje taki sam.
  • Przed uruchomieniem skryptu należy go przejrzeć, aby upewnić się, że wszystko wygląda poprawnie, np. ścieżka do pliku bazy danych, opcje bazy danych itp.
  • Podobnie, jeśli używasz nowej funkcji, która nie istnieje w niższej wersji, SQL Server nie będzie w stanie utworzyć obiektów i będziesz musiał sprawdzić wygenerowane skrypty i odpowiednio zaktualizować kod.
  • W przypadku bardzo prostej bazy danych podejście to powinno działać dość łatwo, ale w przypadku bardziej złożonej bazy danych może być konieczne poświęcenie czasu na wprowadzenie pewnych zmian w skrypcie.

Poniżej znajduje się lista wszystkich opcji skryptu. Po kliknięciu na dany element, w dolnej części ekranu pojawi się krótka definicja danej opcji.

Jak zmigrować bazę danych SQL server do wcześniejszej wersji?

Następne kroki

  • Aby uniknąć tego problemu, zawsze należy wykonać pełną kopię zapasową bazy danych przed aktualizacją SQL Server i bazy danych do wyższej wersji SQL Server. Należy również przetestować aplikację przed jej dystrybucją do użytkowników.
  • Rozważ tę opcję obniżenia wersji jako ostatnią opcję anulowania aktualizacji, ponieważ wymagany czas i pamięć mogą być bardzo znaczące.
  • W przypadku bardzo dużej bazy danych upewnij się, że masz wystarczającą ilość pamięci, aby spełnić wymagania dotyczące danych.
  • Upewnij się, że sprawdziłeś liczbę wierszy i obiektów oraz przetestowałeś swoją aplikację przed wprowadzeniem jej do produkcji.

Wnioski:


Jesteś teraz gotowy do migracji bazy danych Sql Server do wcześniejszej wersji. Nie wahaj się skontaktować z naszym działem technicznym za pośrednictwem zgłoszenia incydentu, jeśli masz jakiekolwiek pytania.

Oceń ten artykuł :

3,3/5 | 3 opinia

Ten artykuł był dla Ciebie przydatny ?

Article utileTak

Article non utileNie

MerciMerci ! N'hésitez pas à poser des questions sur nos documentations si vous souhaitez plus d'informations et nous aider à les améliorer.


Vous avez noté 0 étoile(s)

Podobne artykuły

1mn czytanie

Jak utworzyć bazę danych w Plesk?

0mn czytanie

Jak utworzyć łącze ODBC w Plesk?

0mn czytanie

Jak wyeksportować bazę danych do Plesk?

0mn czytanie

Jak zainstalować myLittleAdmin na Plesk?


Zadaj pytanie zespołowi LWS i jego społeczności