Dela via


Självstudie: Hantera SAP HANA-databaser på en virtuell Azure-dator med Hjälp av Azure CLI

Azure CLI används för att skapa och hantera Azure-resurser från kommandoraden eller via skript. Den här dokumentationen beskriver hur du hanterar en säkerhetskopierad SAP HANA-databas på en virtuell Azure-dator – allt med Hjälp av Azure CLI. Du kan också utföra de här stegen med hjälp av Azure Portal.

Använd Azure Cloud Shell för att köra CLI-kommandon.

När du är färdig med självstudien kommer du att kunna:

  • Övervaka säkerhetskopierings- och återställningsjobb
  • Skydda nya databaser som lagts till i en SAP HANA-instans
  • Ändra principen
  • Sluta skydda
  • Återuppta skyddet

Om du har använt Säkerhetskopiera en SAP HANA-databas i Azure med CLI för att säkerhetskopiera din SAP HANA-databas använder du följande resurser:

  • en resursgrupp med namnet saphanaResourceGroup
  • ett valv med namnet saphanaVault
  • skyddad container med namnet VMAppContainer; Compute;saphanaResourceGroup;saphanaVM
  • säkerhetskopierad databas/objekt med namnet saphanadatabase;hxe;hxe
  • resurser i regionen westus2

Azure CLI gör det enkelt att hantera en SAP HANA-databas som körs på en virtuell Azure-dator som säkerhetskopieras med hjälp av Azure Backup. Den här självstudien beskriver var och en av hanteringsåtgärderna.

Anteckning

Mer information om konfigurationer och scenarier som stöds finns i supportmatrisen för SAP HANA-säkerhetskopiering .

Övervaka säkerhetskopierings- och återställningsjobb

Om du vill övervaka slutförda eller pågående jobb (säkerhetskopiering eller återställning) använder du cmdleten az backup job list . MED CLI kan du också pausa ett jobb som körs eller vänta tills ett jobb har slutförts.

az backup job list --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --output table

Utdata ser ut ungefär så här:

Name                                  Operation              Status      Item Name       Start Time UTC
------------------------------------  ---------------        ---------   ----------      -------------------  
e0f15dae-7cac-4475-a833-f52c50e5b6c3  ConfigureBackup        Completed   hxe             2019-12-03T03:09:210831+00:00  
ccdb4dce-8b15-47c5-8c46-b0985352238f  Backup (Full)          Completed   hxe [hxehost]   2019-12-01T10:30:58.867489+00:00
4980af91-1090-49a6-ab96-13bc905a5282  Backup (Differential)  Completed   hxe [hxehost]   2019-12-01T10:36:00.563909+00:00
F7c68818-039f-4a0f-8d73-e0747e68a813  Restore (Log)          Completed   hxe [hxehost]   2019-12-03T05:44:51.081607+00:00

Ändra princip

Om du vill ändra principen som ligger till grund för konfigurationen av SAP HANA-säkerhetskopieringen använder du cmdleten az backup policy set . Namnparametern i den här cmdleten refererar till säkerhetskopieringsobjektet vars princip vi vill ändra. I den här självstudien ersätter vi principen för vår SAP HANA-databas saphanadatabase;hxe;hxe med en ny principnyhetsaphanaPolicy. Nya principer kan skapas med hjälp av cmdleten az backup policy create .

az backup item set policy --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --policy-name newsaphanaPolicy \
    --name saphanadatabase;hxe;hxe \

Resultatet bör se ut så här:

Name                                  Resource Group
------------------------------------- --------------
cb110094-9b15-4c55-ad45-6899200eb8dd  SAPHANA

Skapa inkrementell säkerhetskopieringsprincip

Om du vill skapa en inkrementell säkerhetskopieringsprincip kör du kommandot az backup policy create med följande parametrar:

  • --backup-management-type – Azure Workload
  • --workload-type – SAPHana
  • --name – Namnet på principen
  • --policy – JSON-fil med lämplig information för schema och kvarhållning
  • --resource-group – Resursgrupp för valvet
  • --vault-name – Namnet på valvet

Exempel:

az backup policy create --resource-group saphanaResourceGroup --vault-name saphanaVault --name sappolicy --backup-management-type AzureWorkload --policy sappolicy.json --workload-type SAPHana

Exempel på JSON (sappolicy.json):

  "eTag": null,
  "id": "/Subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/saphanaResourceGroup/providers/Microsoft.RecoveryServices/vaults/saphanaVault/backupPolicies/sappolicy",
  "location": null,
  "name": "sappolicy",
  "properties": {
    "backupManagementType": "AzureWorkload",
    "makePolicyConsistent": null,
    "protectedItemsCount": 0,
    "settings": {
      "isCompression": false,
      "issqlcompression": false,
      "timeZone": "UTC"
    },
    "subProtectionPolicy": [
      {
        "policyType": "Full",
        "retentionPolicy": {
          "dailySchedule": null,
          "monthlySchedule": {
            "retentionDuration": {
              "count": 60,
              "durationType": "Months"
            },
            "retentionScheduleDaily": null,
            "retentionScheduleFormatType": "Weekly",
            "retentionScheduleWeekly": {
              "daysOfTheWeek": [
                "Sunday"
              ],
              "weeksOfTheMonth": [
                "First"
              ]
            },
            "retentionTimes": [
              "2021-01-19T00:30:00+00:00"
            ]
          },
          "retentionPolicyType": "LongTermRetentionPolicy",
          "weeklySchedule": {
            "daysOfTheWeek": [
              "Sunday"
            ],
            "retentionDuration": {
              "count": 104,
              "durationType": "Weeks"
            },
            "retentionTimes": [
              "2021-01-19T00:30:00+00:00"
            ]
          },
          "yearlySchedule": {
            "monthsOfYear": [
              "January"
            ],
            "retentionDuration": {
              "count": 10,
              "durationType": "Years"
            },
            "retentionScheduleDaily": null,
            "retentionScheduleFormatType": "Weekly",
            "retentionScheduleWeekly": {
              "daysOfTheWeek": [
                "Sunday"
              ],
              "weeksOfTheMonth": [
                "First"
              ]
            },
            "retentionTimes": [
              "2021-01-19T00:30:00+00:00"
            ]
          }
        },
        "schedulePolicy": {
          "schedulePolicyType": "SimpleSchedulePolicy",
          "scheduleRunDays": [
            "Sunday"
          ],
          "scheduleRunFrequency": "Weekly",
          "scheduleRunTimes": [
            "2021-01-19T00:30:00+00:00"
          ],
          "scheduleWeeklyFrequency": 0
        }
      },
      {
        "policyType": "Incremental",
        "retentionPolicy": {
          "retentionDuration": {
            "count": 30,
            "durationType": "Days"
          },
          "retentionPolicyType": "SimpleRetentionPolicy"
        },
        "schedulePolicy": {
          "schedulePolicyType": "SimpleSchedulePolicy",
          "scheduleRunDays": [
            "Monday",
            "Tuesday",
            "Wednesday",
            "Thursday",
            "Friday",
            "Saturday"
          ],
          "scheduleRunFrequency": "Weekly",
          "scheduleRunTimes": [
            "2017-03-07T02:00:00+00:00"
          ],
          "scheduleWeeklyFrequency": 0
        }
      },
      {
        "policyType": "Log",
        "retentionPolicy": {
          "retentionDuration": {
            "count": 15,
            "durationType": "Days"
          },
          "retentionPolicyType": "SimpleRetentionPolicy"
        },
        "schedulePolicy": {
          "scheduleFrequencyInMins": 120,
          "schedulePolicyType": "LogSchedulePolicy"
        }
      }
    ],
    "workLoadType": "SAPHanaDatabase"
  },
  "resourceGroup": "saphanaResourceGroup",
  "tags": null,
  "type": "Microsoft.RecoveryServices/vaults/backupPolicies"
} 

När principen har skapats visar kommandots utdata den princip-JSON som du skickade som en parameter när kommandot kördes.

Du kan ändra följande avsnitt i principen för att ange önskad säkerhetskopieringsfrekvens och kvarhållning för inkrementella säkerhetskopior.

Exempel:

{
  "policyType": "Incremental",
  "retentionPolicy": {
    "retentionDuration": {
      "count": 30,
      "durationType": "Days"
    },
    "retentionPolicyType": "SimpleRetentionPolicy"
  },
  "schedulePolicy": {
    "schedulePolicyType": "SimpleSchedulePolicy",
    "scheduleRunDays": [
      "Monday",
      "Tuesday",
      "Wednesday",
      "Thursday",
      "Friday",
      "Saturday"
    ],
    "scheduleRunFrequency": "Weekly",
    "scheduleRunTimes": [
      "2017-03-07T02:00:00+00:00"
    ],
    "scheduleWeeklyFrequency": 0
  }
}

Exempel:

Om du bara vill ha inkrementella säkerhetskopieringar på lördag och behålla dem i 60 dagar gör du följande ändringar i principen:

  • Uppdatera kvarhållningDuration antal till 60 dagar
  • Ange endast lördag som ScheduleRunDays
 {
  "policyType": "Incremental",
  "retentionPolicy": {
    "retentionDuration": {
      "count": 60,
      "durationType": "Days"
    },
    "retentionPolicyType": "SimpleRetentionPolicy"
  },
  "schedulePolicy": {
    "schedulePolicyType": "SimpleSchedulePolicy",
    "scheduleRunDays": [
      "Saturday"
    ],
    "scheduleRunFrequency": "Weekly",
    "scheduleRunTimes": [
      "2017-03-07T02:00:00+00:00"
    ],
    "scheduleWeeklyFrequency": 0
  }
}

Skydda nya databaser som lagts till i en SAP HANA-instans

Om du registrerar en SAP HANA-instans med ett Recovery Services-valv identifieras automatiskt alla databaser på den här instansen.

Men i de fall då nya databaser läggs till i SAP HANA-instansen senare använder du cmdleten az backup protectable-item initialize . Den här cmdleten identifierar de nya databaser som lagts till.

az backup protectable-item initialize --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --workload-type SAPHANA

Använd sedan cmdleten az backup protectable-item list för att lista alla databaser som har identifierats på din SAP HANA-instans. Den här listan exkluderar dock de databaser där säkerhetskopiering redan har konfigurerats. När databasen som ska säkerhetskopieras har identifierats läser du Aktivera säkerhetskopiering i SAP HANA-databasen.

az backup protectable-item list --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --workload-type SAPHANA \
    --output table

Den nya databas som du vill säkerhetskopiera visas i den här listan, som ser ut så här:

Name                            Protectable Item Type    ParentName    ServerName    IsProtected
---------------------------     ----------------------   ------------  -----------   ------------
saphanasystem;hxe               SAPHanaSystem            HXE           hxehost       NotProtected  
saphanadatabase;hxe;systemdb    SAPHanaDatabase          HXE           hxehost       NotProtected
saphanadatabase;hxe;newhxe      SAPHanaDatabase          HXE           hxehost       NotProtected

Stoppa skyddet för en SAP HANA-databas

Du kan sluta skydda en SAP HANA-databas på några olika sätt:

  • Stoppa alla framtida säkerhetskopieringsjobb och ta bort alla återställningspunkter.
  • Stoppa alla framtida säkerhetskopieringsjobb och lämna återställningspunkterna intakta.

Om du väljer att lämna återställningspunkter bör du ha följande information i åtanke:

  • Alla återställningspunkter förblir intakta för alltid och all beskärning stoppas vid stoppskydd med kvarhållningsdata.
  • Du debiteras för den skyddade instansen och den förbrukade lagringen.
  • Om du tar bort en datakälla utan att stoppa säkerhetskopior misslyckas nya säkerhetskopieringar.

Nu ska vi titta närmare på vart och ett av sätten att stoppa skyddet.

Avbryt skyddet med kvarhållning av data

Om du vill stoppa skyddet med kvarhållningsdata använder du cmdleten az backup protection disable .

az backup protection disable --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --item-name saphanadatabase;hxe;hxe \
    --workload-type SAPHANA \
    --output table

Resultatet bör se ut så här:

Name                                  ResourceGroup
------------------------------------  ---------------  
g0f15dae-7cac-4475-d833-f52c50e5b6c3  saphanaResourceGroup

Om du vill kontrollera statusen för den här åtgärden använder du cmdleten az backup job show .

Stoppa skyddet utan att behålla data

Om du vill stoppa skyddet utan att behålla data använder du cmdleten az backup protection disable .

az backup protection disable --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --item-name saphanadatabase;hxe;hxe \
    --workload-type SAPHANA \
    --delete-backup-data true \
    --output table

Resultatet bör se ut så här:

Name                                  ResourceGroup
------------------------------------  ---------------  
g0f15dae-7cac-4475-d833-f52c50e5b6c3  saphanaResourceGroup

Om du vill kontrollera statusen för den här åtgärden använder du cmdleten az backup job show .

Återuppta skyddet

När du stoppar skyddet för SAP HANA-databasen med kvarhållningsdata kan du senare återuppta skyddet. Om du inte behåller säkerhetskopierade data kan du inte återuppta skyddet.

Om du vill återuppta skyddet använder du cmdleten az backup protection resume .

az backup protection resume --resource-group saphanaResourceGroup \
    --vault-name saphanaVault \
    --container-name VMAppContainer;Compute;saphanaResourceGroup;saphanaVM \
    --policy-name saphanaPolicy \
    --output table

Resultatet bör se ut så här:

Name                                  ResourceGroup
------------------------------------  ---------------  
b2a7f108-1020-4529-870f-6c4c43e2bb9e  saphanaResourceGroup

Om du vill kontrollera statusen för den här åtgärden använder du cmdleten az backup job show .

Nästa steg