Samouczek: przywracanie baz danych SAP HANA na maszynie wirtualnej platformy Azure przy użyciu interfejsu wiersza polecenia platformy Azure

W tym samouczku opisano sposób przywracania wystąpienia bazy danych SAP HANA i wystąpienia replikacji systemu SAP HANA (HSR) przy użyciu interfejsu wiersza polecenia platformy Azure.

Interfejs wiersza polecenia platformy Azure służy do tworzenia zasobów platformy Azure i zarządzania nimi z poziomu wiersza polecenia lub za pośrednictwem skryptów. W tej dokumentacji opisano sposób przywracania kopii zapasowej bazy danych SAP HANA na maszynie wirtualnej platformy Azure przy użyciu interfejsu wiersza polecenia platformy Azure. Możesz również wykonać te kroki przy użyciu witryny Azure Portal.

Uwaga

  • Odzyskiwanie oryginalnej lokalizacji (OLR) nie jest obecnie obsługiwane w przypadku modułu HSR.
  • Przywracanie do wystąpienia modułu HSR nie jest obsługiwane. Jednak przywracanie tylko do wystąpienia platformy HANA jest obsługiwane.

Użyj usługi Azure Cloud Shell , aby uruchomić polecenia interfejsu wiersza polecenia.

W tym samouczku założono, że masz bazę danych SAP HANA działającą na maszynie wirtualnej platformy Azure, której kopia zapasowa jest tworzona przy użyciu usługi Azure Backup. Jeśli użyto tworzenia kopii zapasowej bazy danych SAP HANA na platformie Azure przy użyciu interfejsu wiersza polecenia do tworzenia kopii zapasowej bazy danych SAP HANA, używasz następujących zasobów:

  • Grupa zasobów o nazwie saphanaResourceGroup.
  • Magazyn o nazwie saphanaVault.
  • Chroniony kontener o nazwie VMAppContainer;Compute;saphanaResourceGroup;saphanaVM.
  • Kopia zapasowa bazy danych/elementu o nazwie saphanadatabase;hxe;hxe.
  • Zasoby w westus2 regionie.

Aby uzyskać więcej informacji na temat obsługiwanych konfiguracji i scenariuszy, zobacz macierz obsługi kopii zapasowych platformy SAP HANA.

Wyświetlanie punktów przywracania dla bazy danych kopii zapasowej

Aby wyświetlić listę wszystkich punktów odzyskiwania dla bazy danych, użyj polecenia cmdlet az backup recoverypoint list w następujący sposób:

Wybierz typ bazy danych:

Aby wyświetlić dostępne punkty odzyskiwania, uruchom następujące polecenie:

az backup recoverypoint list --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --item-name saphanadatabase;hxe;hxe \
   --output table

Lista punktów odzyskiwania będzie wyglądać następująco:

Name                      Time                               BackupManagementType   Item Name               RecoveryPointType
-------------------       ---------------------------------  ---------------------  ----------------------  ------------------
7660777527047692711       2019-12-10T04:00:32.346000+00:00   AzureWorkload          SAPHanaDtabase;hxe;hxe  Full
7896624824685666836       2019-12-15T10:33:32.346000+00:00   AzureWorkload          SAPHanaDtabase;hxe;hxe  Differential
DefaultRangeRecoveryPoint                                    AzureWorkload          SAPHanaDtabase;hxe;hxe  Log

Jak widać, na powyższej liście znajdują się trzy punkty odzyskiwania: po jednym dla pełnej, różnicowej i kopii zapasowej dziennika.

Uwaga

Możesz również wyświetlić punkty początkowe i końcowe każdego niezałamanego łańcucha kopii zapasowych dzienników przy użyciu polecenia cmdlet az backup recoverypoint show-log-chain .

Wymagania wstępne dotyczące przywracania bazy danych

Przed przywróceniem bazy danych upewnij się, że zostały spełnione następujące wymagania wstępne:

  • Bazę danych można przywrócić tylko do wystąpienia sap HANA, które znajduje się w tym samym regionie
  • Wystąpienie docelowe musi być zarejestrowane w tym samym magazynie co źródło
  • Usługa Azure Backup nie może zidentyfikować dwóch różnych wystąpień platformy SAP HANA na tej samej maszynie wirtualnej. W związku z tym przywracanie danych z jednego wystąpienia do innego na tej samej maszynie wirtualnej nie jest możliwe.

Przywracanie bazy danych

Usługa Azure Backup może przywrócić bazy danych SAP HANA uruchomione na maszynach wirtualnych platformy Azure w następujący sposób:

  • Przywróć do określonej daty lub godziny (do sekundy) przy użyciu kopii zapasowych dziennika. Usługa Azure Backup automatycznie określa odpowiednie pełne, różnicowe kopie zapasowe i łańcuch kopii zapasowych dzienników, które są wymagane do przywrócenia na podstawie wybranego czasu.
  • Przywracanie do określonej pełnej lub różnicowej kopii zapasowej w celu przywrócenia do określonego punktu odzyskiwania.

Aby przywrócić bazę danych, użyj polecenia cmdlet az restore-azurewl , które wymaga obiektu konfiguracji odzyskiwania jako jednego z danych wejściowych. Ten obiekt można wygenerować za pomocą polecenia cmdlet az backup recoveryconfig show . Obiekt konfiguracji odzyskiwania zawiera wszystkie szczegóły do wykonania przywracania. Jednym z nich jest tryb przywracania — OriginalWorkloadRestore lub AlternateWorkloadRestore.

Uwaga

OriginalWorkloadRestore — przywróć dane do tego samego wystąpienia platformy SAP HANA co oryginalne źródło. Ta opcja zastępuje oryginalną bazę danych.
AlternateWorkloadRestore — przywróć bazę danych do alternatywnej lokalizacji i zachowaj oryginalną źródłową bazę danych.

Przywracanie do lokalizacji alternatywnej

Aby przywrócić bazę danych do alternatywnej lokalizacji, użyj polecenia AlternateWorkloadRestore jako trybu przywracania. Następnie należy wybrać punkt przywracania, który może być poprzednim punktem w czasie lub dowolnym z poprzednich punktów przywracania.

W tym samouczku przywrócisz poprzedni punkt przywracania. Wyświetl listę punktów przywracania dla bazy danych i wybierz punkt, do którego chcesz przywrócić. W tym samouczku zostanie użyty punkt przywracania z nazwą 7660777527047692711.

Używając powyższej nazwy punktu przywracania i trybu przywracania, utwórzmy obiekt konfiguracji odzyskiwania przy użyciu polecenia cmdlet az backup recoveryconfig show . Przyjrzyjmy się, co oznaczają poszczególne pozostałe parametry w tym poleceniu cmdlet:

  • --target-item-name Jest to nazwa używana przez przywróconą bazę danych. W tym przypadku użyliśmy nazwy restored_database.
  • --target-server-name Jest to nazwa serwera SAP HANA, który został pomyślnie zarejestrowany w magazynie usługi Recovery Services i znajduje się w tym samym regionie, w którym ma zostać przywrócona baza danych. Na potrzeby tego samouczka przywrócimy bazę danych do tego samego serwera SAP HANA, który został chroniony o nazwie hxehost.
  • --target-server-type Aby przywrócić bazy danych SAP HANA, należy użyć klasy HANAInstance .

Wybierz typ bazy danych:

Aby uruchomić operację przywracania, uruchom następujące polecenie:


az backup recoveryconfig show --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --item-name saphanadatabase;hxe;hxe \
    --restore-mode AlternateWorkloadRestore \
    --rp-name 7660777527047692711 \
    --target-item-name restored_database \
    --target-server-name hxehost \
    --target-server-type HANAInstance \
    --workload-type SAPHANA \
    --output json

Odpowiedź na powyższe zapytanie będzie obiektem konfiguracji odzyskiwania, który wygląda następująco:

{"restore_mode": "AlternateLocation", "container_uri": " VMAppContainer;Compute;saphanaResourceGroup;saphanaVM ", "item_uri": "SAPHanaDatabase;hxe;hxe", "recovery_point_id": "7660777527047692711", "item_type": "SAPHana", "source_resource_id": "/subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/saphanaResourceGroup/providers/Microsoft.Compute/virtualMachines/saphanavm", "database_name": null, "container_id": null, "alternate_directory_paths": null}

Teraz, aby przywrócić bazę danych, uruchom polecenie cmdlet az restore-azurewl . Aby użyć tego polecenia, wprowadzimy powyższe dane wyjściowe json zapisane w pliku o nazwie recoveryconfig.json.

az backup restore restore-azurewl --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --restore-config recoveryconfig.json \
    --output table

Dane wyjściowe będą wyglądać następująco:

Name                                  Resource
------------------------------------  -------
5b198508-9712-43df-844b-977e5dfc30ea  SAPHANA

Odpowiedź będzie zawierać nazwę zadania. Ta nazwa zadania może służyć do śledzenia stanu zadania za pomocą polecenia cmdlet az backup job show .

Przywracanie i zastępowanie

Aby przywrócić do oryginalnej lokalizacji, użyjemy metody OrignialWorkloadRestore jako trybu przywracania. Następnie należy wybrać punkt przywracania, który może być poprzednim punktem w czasie lub dowolnym z poprzednich punktów przywracania.

W tym samouczku wybierzemy poprzedni punkt w czasie "28-11-2019-09:53:00" do przywrócenia. Ten punkt przywracania można podać w następujących formatach: dd-mm-rrrr, dd-mm-yyyy-hh:mm:ss. Aby wybrać prawidłowy punkt w czasie do przywrócenia, użyj polecenia cmdlet az backup recoverypoint show-log-chain , które wyświetla interwały niezwiązanych kopii zapasowych łańcucha dzienników.

az backup recoveryconfig show --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --item-name saphanadatabase;hxe;hxe \
    --restore-mode OriginalWorkloadRestore \
    --log-point-in-time 28-11-2019-09:53:00 \
    --output json

Odpowiedź na powyższe zapytanie będzie obiektem konfiguracji odzyskiwania, który wygląda następująco:

{"restore_mode": "OriginalLocation", "container_uri": " VMAppContainer;Compute;saphanaResourceGroup;saphanaVM ", "item_uri": "SAPHanaDatabase;hxe;hxe", "recovery_point_id": "DefaultRangeRecoveryPoint", "log_point_in_time": "28-11-2019-09:53:00", "item_type": "SAPHana", "source_resource_id": "/subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/saphanaResourceGroup/providers/Microsoft.Compute/virtualMachines/saphanavm", "database_name": null, "container_id": null, "alternate_directory_paths": null}"

Teraz, aby przywrócić bazę danych, uruchom polecenie cmdlet az restore-azurewl . Aby użyć tego polecenia, wprowadzimy powyższe dane wyjściowe json zapisane w pliku o nazwie recoveryconfig.json.

az backup restore restore-azurewl --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --restore-config recoveryconfig.json \
    --output table

Dane wyjściowe będą wyglądać następująco:

Name                                  Resource
------------------------------------  --------
5b198508-9712-43df-844b-977e5dfc30ea  SAPHANA

Odpowiedź będzie zawierać nazwę zadania. Ta nazwa zadania może służyć do śledzenia stanu zadania przy użyciu polecenia cmdlet az backup job show .

Przywracanie do regionu pomocniczego

Aby przywrócić bazę danych do regionu pomocniczego, określ docelowy magazyn i serwer znajdujący się w regionie pomocniczym w konfiguracji przywracania.

az backup recoveryconfig show --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;compute;hanasnapshotcvtmachines;hanasnapcvt01 \
    --item-name SAPHanaDatabase;h10;h10 \
    --restore-mode AlternateWorkloadRestore \
    --from-full-rp-name 293170069256531 \
    --rp-name 293170069256531 \
    --target-server-name targethanaserver \
    --target-container-name VMAppContainer;compute;saphanaTargetRG;targethanaserver \
    --target-item-name h10 \
    --target-server-type HANAInstance \
    --workload-type SAPHANA \
    --target-resource-group saphanaTargetRG \
    --target-vault-name targetVault \
    --backup-management-type AzureWorkload

Poniżej znajduje się odpowiedź na powyższe polecenie, które będzie obiektem konfiguracji odzyskiwania:

{
  "alternate_directory_paths": null,
  "container_id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/saphanaTargetRG/providers/Microsoft.RecoveryServices/vaults/targetVault/backupFabrics/Azure/protectionContainers/vmappcontainer;compute;saphanaTargetRG;targethanaserver",
  "container_uri": "VMAppContainer;compute;hanasnapshotcvtmachines;hanasnapcvt01",
  "database_name": "SAPHanaDatabase;h10;h10",
  "filepath": null,
  "item_type": "SAPHana",
  "item_uri": "SAPHanaDatabase;h10;h10",
  "log_point_in_time": null,
  "recovery_mode": null,
  "recovery_point_id": "293170069256531",
  "restore_mode": "AlternateLocation",
  "source_resource_id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/saphanaResourceGroup/providers/Microsoft.Compute/virtualMachines/hanasnapcvt01",
  "workload_type": "SAPHanaDatabase"
}

Użyj tej konfiguracji odzyskiwania w poleceniu cmdlet az restore-azurewl . Wybierz flagę --use-secondary-region , aby przywrócić bazę danych do regionu pomocniczego.

az backup restore restore-azurewl --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --recovery-config recoveryconfig.json \
    --use-secondary-region \
    --output table

Dane wyjściowe będą wyglądać następująco:

Name                                  Operation           Status      Item Name            Backup Management Type    Start Time UTC                    Duration
------------------------------------  ------------------  ----------  -------------------  ------------------------  --------------------------------  --------------
00000000-0000-0000-0000-000000000000  CrossRegionRestore  InProgress  H10 [hanasnapcvt01]  AzureWorkload             2021-12-22T05:21:34.165617+00:00  0:00:05.665470

Uwaga

Cel punktu odzyskiwania dla danych kopii zapasowej, który ma być dostępny w regionie pomocniczym, wynosi 12 godzin. W związku z tym po włączeniu funkcji CRR cel punktu odzyskiwania dla regionu pomocniczego wynosi 12 godzin i czas trwania częstotliwości rejestrowania (który można ustawić na co najmniej 15 minut).

Przywracanie jako pliki

Aby przywrócić dane kopii zapasowej jako pliki zamiast bazy danych, użyjemy polecenia RestoreAsFiles jako trybu przywracania. Następnie wybierz punkt przywracania, który może być poprzednim punktem w czasie lub dowolnym z poprzednich punktów przywracania. Po zrzuceniu plików do określonej ścieżki możesz przełączyć te pliki na dowolną maszynę SAP HANA, na której chcesz je przywrócić jako bazę danych. Ponieważ można przenieść te pliki na dowolną maszynę, możesz teraz przywrócić dane między subskrypcjami i regionami.

Na potrzeby tego samouczka wybierzemy poprzedni punkt w czasie 28-11-2019-09:53:00 do przywrócenia oraz lokalizację do zrzutu plików kopii zapasowych, co /home/saphana/restoreasfiles na tym samym serwerze SAP HANA. Ten punkt przywracania można podać w jednym z następujących formatów: dd-mm-rrrr lub dd-mm-yy-hh:mm:ss. Aby wybrać prawidłowy punkt w czasie do przywrócenia, użyj polecenia cmdlet az backup recoverypoint show-log-chain , które wyświetla interwały niezwiązanych kopii zapasowych łańcucha dzienników.

Korzystając z powyższej nazwy punktu przywracania i trybu przywracania, utwórzmy obiekt konfiguracji odzyskiwania przy użyciu polecenia cmdlet az backup recoveryconfig show . Przyjrzyjmy się, co oznaczają poszczególne pozostałe parametry w tym poleceniu cmdlet:

  • --target-container-name Jest to nazwa serwera SAP HANA, który został pomyślnie zarejestrowany w magazynie usługi Recovery Services i znajduje się w tym samym regionie, w którym ma zostać przywrócona baza danych. Na potrzeby tego samouczka przywrócimy bazę danych jako pliki do tego samego serwera SAP HANA, który został chroniony o nazwie hxehost.
  • --rp-name Dla przywracania do punktu w czasie nazwa punktu przywracania będzie DefaultRangeRecoveryPoint
az backup recoveryconfig show --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --item-name saphanadatabase;hxe;hxe \
    --restore-mode RestoreAsFiles \
    --log-point-in-time 28-11-2019-09:53:00 \
    --rp-name DefaultRangeRecoveryPoint \
    --target-container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --filepath /home/saphana/restoreasfiles \
    --output json

Odpowiedź na powyższe zapytanie będzie obiektem konfiguracji odzyskiwania, który wygląda następująco:

{
  "alternate_directory_paths": null,
  "container_id": "/Subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/saphanaResourceGroup/providers/Microsoft.RecoveryServices/vaults/SAPHANAVault/backupFabrics/Azure/protectionContainers/VMAppContainer;Compute;SAPHANA;hanamachine",
  "container_uri": "VMAppContainer;compute;saphana;hanamachine",
  "database_name": null,
  "filepath": "/home/",
  "item_type": "SAPHana",
  "item_uri": "SAPHanaDatabase;hxe;hxe",
  "log_point_in_time": "04-07-2020-09:53:00",
  "recovery_mode": "FileRecovery",
  "recovery_point_id": "DefaultRangeRecoveryPoint",
  "restore_mode": "AlternateLocation",
  "source_resource_id": "/subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/saphanaResourceGroup/providers/Microsoft.Compute/virtualMachines/hanamachine"
}

Teraz, aby przywrócić bazę danych jako pliki, uruchom polecenie cmdlet az restore-azurewl . Aby użyć tego polecenia, wprowadź dane wyjściowe json powyżej, które są zapisywane w pliku o nazwie recoveryconfig.json.

az backup restore restore-azurewl --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --restore-config recoveryconfig.json \
    --output json

Dane wyjściowe będą wyglądać następująco:

{
  "eTag": null,
  "id": "/Subscriptions/ef4ab5a7-c2c0-4304-af80-af49f48af3d1/resourceGroups/SAPHANARESOURCEGROUP/providers/Microsoft.RecoveryServices/vaults/SAPHANAVault/backupJobs/608e737e-c001-47ca-8c37-57d909c8a704",
  "location": null,
  "name": "608e737e-c001-47ca-8c37-57d909c8a704",
  "properties": {
    "actionsInfo": [
      "Cancellable"
    ],
    "activityId": "7ddd3c3a-c0eb-11ea-a5f8-54ee75ec272a",
    "backupManagementType": "AzureWorkload",
    "duration": "0:00:01.781847",
    "endTime": null,
    "entityFriendlyName": "HXE [hxehost]",
    "errorDetails": null,
    "extendedInfo": {
      "dynamicErrorMessage": null,
      "propertyBag": {
        "Job Type": "Restore as files"
      },
      "tasksList": [
        {
          "status": "InProgress",
          "taskId": "Transfer data from vault"
        }
      ]
    },
    "jobType": "AzureWorkloadJob",
    "operation": "Restore",
    "startTime": "2020-07-08T07:20:29.336434+00:00",
    "status": "InProgress",
    "workloadType": "SAPHanaDatabase"
  },
  "resourceGroup": "saphanaResourceGroup",
  "tags": null,
  "type": "Microsoft.RecoveryServices/vaults/backupJobs"
}

Odpowiedź będzie zawierać nazwę zadania. Ta nazwa zadania może służyć do śledzenia stanu zadania przy użyciu polecenia cmdlet az backup job show .

Pliki po cenach dumpingowych na kontener docelowy to:

  • Pliki kopii zapasowej bazy danych
  • Pliki wykazu
  • Pliki metadanych JSON (dla każdego pliku kopii zapasowej, który jest zaangażowany)

Zazwyczaj ścieżka udziału sieciowego lub ścieżka zainstalowanego udziału plików platformy Azure, gdy jest określona jako ścieżka docelowa, umożliwia łatwiejszy dostęp do tych plików przez inne maszyny w tej samej sieci lub z tym samym udziałem plików platformy Azure zainstalowanym na nich.

Uwaga

Aby przywrócić pliki kopii zapasowej bazy danych w udziale plików platformy Azure zainstalowanym na docelowej zarejestrowanej maszynie wirtualnej, upewnij się, że konto główne ma uprawnienia do odczytu/zapisu w udziale plików platformy Azure.

Na podstawie wybranego typu punktu przywracania (punkt w czasie lub pełny i różnicowy) zobaczysz co najmniej jeden folder utworzony w ścieżce docelowej. Jeden z folderów o nazwie Data_<date and time of restore> zawiera pełne kopie zapasowe, a drugi folder o nazwie Log zawiera kopie zapasowe dziennika i inne kopie zapasowe (takie jak różnicowe i przyrostowe).

Uwaga

Jeśli wybrano opcję Przywróć do punktu w czasie, pliki dziennika (po cenach dumpingowych do docelowej maszyny wirtualnej) mogą czasami zawierać dzienniki poza punktem w czasie wybranym do przywrócenia. Usługa Azure Backup zapewnia, że kopie zapasowe dzienników dla wszystkich usług HANA są dostępne do spójnego i pomyślnego przywracania do wybranego punktu w czasie.

Uwaga

Jeśli nie chcesz przywracać całego łańcucha, ale tylko podzbioru plików, wykonaj kroki opisane tutaj.

Przenieś te przywrócone pliki na serwer SAP HANA, na którym chcesz przywrócić je jako bazę danych. Następnie wykonaj następujące kroki, aby przywrócić bazę danych:

  1. Ustaw uprawnienia w folderze/katalogu, w którym są przechowywane pliki kopii zapasowej przy użyciu następującego polecenia:

    chown -R <SID>adm:sapsys <directory>
    
  2. Uruchom następny zestaw poleceń jako <SID>adm

    su - <sid>adm
    
  3. Wygeneruj plik wykazu na potrzeby przywracania. Wyodrębnij identyfikator BackupId z pliku metadanych JSON dla pełnej kopii zapasowej, która będzie używana w dalszej części operacji przywracania. Upewnij się, że pełne kopie zapasowe dzienników znajdują się w różnych folderach i usuń pliki wykazu i pliki metadanych JSON w tych folderach.

    hdbbackupdiag --generate --dataDir <DataFileDir> --logDirs <LogFilesDir> -d <PathToPlaceCatalogFile>
    

    W powyższym poleceniu:

    • <DataFileDir> — folder zawierający pełne kopie zapasowe
    • <LogFilesDir> — folder zawierający kopie zapasowe dziennika, różnicowe i przyrostowe kopie zapasowe (jeśli istnieją)
    • <PathToPlaceCatalogFile> - folder, w którym należy umieścić wygenerowany plik wykazu
  4. Przywróć przy użyciu nowo wygenerowanego pliku wykazu za pośrednictwem programu HANA Studio lub uruchom zapytanie przywracania HDBSQL przy użyciu nowo wygenerowanego wykazu. Poniżej wymieniono zapytania HDBSQL:

    • Aby przywrócić do punktu w czasie:

      Jeśli tworzysz nową przywróconą bazę danych, uruchom polecenie HDBSQL, aby utworzyć nową bazę danych, a następnie zatrzymaj bazę danych <DatabaseName> na potrzeby przywracania. Jeśli jednak przywracasz tylko istniejącą bazę danych, uruchom polecenie HDBSQL, aby zatrzymać bazę danych.

      Następnie uruchom następujące polecenie, aby przywrócić bazę danych:

      RECOVER DATABASE FOR <DatabaseName> UNTIL TIMESTAMP '<TimeStamp>' CLEAR LOG USING SOURCE '<DatabaseName@HostName>'  USING CATALOG PATH ('<PathToGeneratedCatalogInStep3>') USING LOG PATH (' <LogFileDir>') USING DATA PATH ('<DataFileDir>') USING BACKUP_ID <BackupIdFromJsonFile> CHECK ACCESS USING FILE
      
      • <DatabaseName> — Nazwa nowej bazy danych lub istniejącej bazy danych, którą chcesz przywrócić
      • <Timestamp> - Dokładny znacznik czasu przywracania do punktu w czasie
      • <DatabaseName@HostName> — Nazwa bazy danych, której kopia zapasowa jest używana do przywracania, oraz nazwa serwera SAP HANA, na którym znajduje się ta baza danych. Opcja USING SOURCE <DatabaseName@HostName> określa, że kopia zapasowa danych (używana do przywracania) jest bazy danych z innym identyfikatorem SID lub nazwą niż docelowa maszyna SAP HANA. Nie trzeba więc określać przywracania na tym samym serwerze HANA, z którego jest wykonywana kopia zapasowa.
      • <PathToGeneratedCatalogInStep3> - Ścieżka do pliku wykazu wygenerowanego w kroku 3
      • <DataFileDir> — folder zawierający pełne kopie zapasowe
      • <LogFilesDir> — folder zawierający kopie zapasowe dziennika, różnicowe i przyrostowe kopie zapasowe (jeśli istnieją)
      • <BackupIdFromJsonFile> — identyfikator BackupId wyodrębniony w kroku 3
    • Aby przywrócić określoną pełną lub różnicową kopię zapasową:

      Jeśli tworzysz nową przywróconą bazę danych, uruchom polecenie HDBSQL, aby utworzyć nową bazę danych, a następnie zatrzymaj bazę danych <DatabaseName> na potrzeby przywracania. Jeśli jednak przywracasz tylko istniejącą bazę danych, uruchom polecenie HDBSQL, aby zatrzymać bazę danych:

      RECOVER DATA FOR <DatabaseName> USING BACKUP_ID <BackupIdFromJsonFile> USING SOURCE '<DatabaseName@HostName>'  USING CATALOG PATH ('<PathToGeneratedCatalogInStep3>') USING DATA PATH ('<DataFileDir>')  CLEAR LOG
      
      • <DatabaseName> — nazwa nowej bazy danych lub istniejącej bazy danych, którą chcesz przywrócić
      • <Timestamp> — dokładny znacznik czasu przywracania do punktu w czasie
      • <DatabaseName@HostName> — nazwa bazy danych, której kopia zapasowa jest używana do przywracania, oraz nazwa serwera SAP HANA, na którym znajduje się ta baza danych. Opcja USING SOURCE <DatabaseName@HostName> określa, że kopia zapasowa danych (używana do przywracania) jest bazy danych z innym identyfikatorem SID lub nazwą niż docelowa maszyna SAP HANA. Nie trzeba więc określać przywracania na tym samym serwerze HANA, z którego jest wykonywana kopia zapasowa.
      • <PathToGeneratedCatalogInStep3> — ścieżka do pliku wykazu wygenerowanego w kroku 3
      • <DataFileDir> — folder zawierający pełne kopie zapasowe
      • <LogFilesDir> — folder zawierający kopie zapasowe dziennika, różnicowe i przyrostowe kopie zapasowe (jeśli istnieją)
      • <BackupIdFromJsonFile> — identyfikator BackupId wyodrębniony w kroku 3

Przywracanie między subskrypcjami

W przypadku przywracania między subskrypcjami (CSR) masz elastyczność przywracania do dowolnej subskrypcji i dowolnego magazynu w dzierżawie, jeśli są dostępne uprawnienia przywracania. Domyślnie csr jest włączona we wszystkich magazynach usługi Recovery Services (istniejących i nowo utworzonych magazynach).

Uwaga

  • Przywracanie między subskrypcjami można wyzwolić z magazynu usługi Recovery Services.
  • Funkcja CSR jest obsługiwana tylko w przypadku kopii zapasowych opartych na strumieniu/backint i nie jest obsługiwana w przypadku kopii zapasowych opartych na migawkach.
  • Przywracanie między regionami (CRR) z csr nie jest obsługiwane.
az backup vault create

Dodaj parametr cross-subscription-restore-state , który umożliwia ustawienie stanu CSR magazynu podczas tworzenia i aktualizowania magazynu.

az backup recoveryconfig show

Dodaj parametr --target-subscription-id , który umożliwia podanie subskrypcji docelowej jako danych wejściowych podczas wyzwalania przywracania między subskrypcjami dla źródeł danych SQL lub HANA.

Przykład:

   az backup vault create -g {rg_name} -n {vault_name} -l {location} --cross-subscription-restore-state Disable
   az backup recoveryconfig show --restore-mode alternateworkloadrestore --backup-management-type azureworkload -r {rp} --target-container-name {target_container} --target-item-name {target_item} --target-resource-group {target_rg} --target-server-name {target_server} --target-server-type SQLInstance --target-subscription-id {target_subscription} --target-vault-name {target_vault} --workload-type SQLDataBase --ids {source_item_id}

Następne kroki