Megosztás a következőn keresztül:


SQL-adatbázisok kezelése Azure-beli virtuális gépen az Azure CLI használatával

Az Azure CLI-vel Azure-erőforrásokat hozhat létre és kezelhet a parancssorból vagy szkripteken keresztül. Ez a cikk azt ismerteti, hogyan felügyelhet egy azure-beli virtuális gépen található, biztonsági mentéssel rendelkező SQL-adatbázist az Azure CLI használatával. Ezeket a műveleteket a Azure Portal is végrehajthatja.

Ebből a cikkből megtudhatja, hogyan:

  • Biztonsági mentési és visszaállítási feladatok monitorozása
  • SQL-példányhoz hozzáadott új adatbázisok védelme
  • Szabályzat módosítása
  • A védelem kikapcsolása
  • Védelem folytatása

Ha sql-adatbázis biztonsági mentését használta az Azure-ban a parancssori felület használatával az SQL-adatbázis biztonsági mentéséhez, akkor a következő erőforrásokat használja:

  • SqlResourceGroup nevű erőforráscsoport
  • SqlVault nevű tároló
  • VMAppContainer nevű védett tároló; Kiszámítható; SQLResourceGroup;testSQLVM
  • Biztonsági mentési adatbázis/ sqldatabase nevű elem;mssqlserver;master
  • Erőforrások a westus2 régióban

Az Azure CLI megkönnyíti a Azure Backup használatával biztonsági másolatot készítő Azure-beli virtuális gépen futó SQL-adatbázisok kezelését. Az alábbi szakaszok az egyes felügyeleti műveleteket ismertetik.

Megjegyzés

A támogatott konfigurációkkal és forgatókönyvekkel kapcsolatos további információkért tekintse meg az SQL biztonsági mentési támogatási mátrixát .

Biztonsági mentési és visszaállítási feladatok monitorozása

Az az backup job list paranccsal monitorozza a befejezett vagy jelenleg futó feladatokat (biztonsági mentés vagy visszaállítás). A parancssori felület lehetővé teszi az aktuálisan futó feladatok felfüggesztését , vagy megvárhatja, amíg egy feladat befejeződik.

az backup job list --resource-group SQLResourceGroup \
    --vault-name SQLVault \
    --output table

A kimenet a következőképpen jelenik meg:

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

Szabályzat módosítása

Az SQL biztonsági mentési konfigurációja alapjául szolgáló szabályzat módosításához használja az az backup policy set parancsot. A parancsban szereplő névparaméter arra a biztonsági mentési elemre hivatkozik, amelynek a házirendjét módosítani szeretné. Itt cserélje le az sqldatabase;mssqlserver;master SQL-adatbázis szabályzatát egy új newSQLPolicy szabályzatra. Új szabályzatokat az az backup policy create paranccsal hozhat létre.

az backup item set-policy --resource-group SQLResourceGroup \
    --vault-name SQLVault \
    --container-name VMAppContainer;Compute;SQLResourceGroup;testSQLVM \
    --policy-name newSQLPolicy \
    --name sqldatabase;mssqlserver;master \

A kimenet a következőképpen jelenik meg:

Name                                  Operation        Status     Item Name    Backup Management Type    Start Time UTC                    Duration
------------------------------------  ---------------  ---------  -----------  ------------------------  --------------------------------  --------------
ba350996-99ea-46b1-aae2-e2096c1e28cd  ConfigureBackup  Completed  master       AzureWorkload             2022-06-22T08:24:03.958001+00:00  0:01:12.435765

Különbségi biztonsági mentési szabályzat létrehozása

Különbségi biztonsági mentési szabályzat létrehozásához használja az az backup policy create parancsot a következő paraméterekkel:

  • --backup-management-type: Azure Workload.
  • --workload-type: SQL DataBase.
  • --name: A szabályzat neve.
  • --policy: JSON-fájl az ütemezés és a megőrzés megfelelő részleteivel.
  • --resource-group: A tároló erőforráscsoportja.
  • --vault-name: A tároló neve/

Példa:

az backup policy create --resource-group SQLResourceGroup --vault-name SQLVault --name SQLPolicy --backup-management-type AzureWorkload --policy SQLPolicy.json --workload-type SQLDataBase

JSON-minta (sqlpolicy.json):

  "eTag": null,
  "id": "/Subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/SQLResourceGroup/providers/Microsoft.RecoveryServices/vaults/SQLVault/backupPolicies/SQLPolicy",
  "location": null,
  "name": "sqlpolicy",
  "properties": {
    "backupManagementType": "AzureWorkload",
    "workLoadType": "SQLDataBase",
    "settings": {
      "timeZone": "UTC",
      "issqlcompression": false,
      "isCompression": false
    },
    "subProtectionPolicy": [
      {
        "policyType": "Full",
        "schedulePolicy": {
          "schedulePolicyType": "SimpleSchedulePolicy",
          "scheduleRunFrequency": "Weekly",
          "scheduleRunDays": [
            "Sunday"
          ],
          "scheduleRunTimes": [
            "2022-06-13T19:30:00Z"
          ],
          "scheduleWeeklyFrequency": 0
        },
        "retentionPolicy": {
          "retentionPolicyType": "LongTermRetentionPolicy",
          "weeklySchedule": {
            "daysOfTheWeek": [
              "Sunday"
            ],
            "retentionTimes": [
              "2022-06-13T19:30:00Z"
            ],
            "retentionDuration": {
              "count": 104,
              "durationType": "Weeks"
            }
          },
          "monthlySchedule": {
            "retentionScheduleFormatType": "Weekly",
            "retentionScheduleWeekly": {
              "daysOfTheWeek": [
                "Sunday"
              ],
              "weeksOfTheMonth": [
                "First"
              ]
            },
            "retentionTimes": [
              "2022-06-13T19:30:00Z"
            ],
            "retentionDuration": {
              "count": 60,
              "durationType": "Months"
            }
          },
          "yearlySchedule": {
            "retentionScheduleFormatType": "Weekly",
            "monthsOfYear": [
              "January"
            ],
            "retentionScheduleWeekly": {
              "daysOfTheWeek": [
                "Sunday"
              ],
              "weeksOfTheMonth": [
                "First"
              ]
            },
            "retentionTimes": [
              "2022-06-13T19:30:00Z"
            ],
            "retentionDuration": {
              "count": 10,
              "durationType": "Years"
            }
          }
        }
      },
      {
        "policyType": "Differential",
        "schedulePolicy": {
          "schedulePolicyType": "SimpleSchedulePolicy",
          "scheduleRunFrequency": "Weekly",
          "scheduleRunDays": [
            "Monday",
            "Tuesday",
            "Wednesday",
            "Thursday",
            "Friday",
            "Saturday"
          ],
          "scheduleRunTimes": [
            "2022-06-13T02:00:00Z"
          ],
          "scheduleWeeklyFrequency": 0
        },
        "retentionPolicy": {
          "retentionPolicyType": "SimpleRetentionPolicy",
          "retentionDuration": {
            "count": 30,
            "durationType": "Days"
          }
        }
      },
      {
        "policyType": "Log",
        "schedulePolicy": {
          "schedulePolicyType": "LogSchedulePolicy",
          "scheduleFrequencyInMins": 120
        },
        "retentionPolicy": {
          "retentionPolicyType": "SimpleRetentionPolicy",
          "retentionDuration": {
            "count": 15,
            "durationType": "Days"
          }
        }
      }
    ],
    "protectedItemsCount": 0
  },
  "resourceGroup": "SQLResourceGroup",
  "tags": null,
  "type": "Microsoft.RecoveryServices/vaults/backupPolicies"
} 

A szabályzat sikeres létrehozása után a parancs kimenete megjeleníti azt a JSON-házirendet, amelyet paraméterként adott át a parancs végrehajtása során.

A szabályzat következő szakaszát módosíthatja a különbségi biztonsági mentések szükséges biztonsági mentési gyakoriságának és megőrzésének megadásához.

Például:

{
  "policyType": "Differential",
  "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
  }
}

Példa:

Ha csak szombaton szeretne különbségi biztonsági mentéseket készíteni, és 60 napig meg szeretné őrizni őket, végezze el a következő módosításokat a szabályzatban:

  • Frissítse a retentionDuration számát 60 napra.
  • Csak a szombatot adja meg ScheduleRunDaysként.
 {
  "policyType": "Differential",
  "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
  }
}

Az SQL-példányhoz hozzáadott új adatbázisok védelme

Ha egy SQL-példányt egy Recovery Services-tárolóval regisztrál , az automatikusan felderíti a példány összes adatbázisát.

Ha azonban később új adatbázisokat adott hozzá az SQL-példányhoz, használja az az backup protectable-item initialize parancsot. Ez a parancs felderíti a hozzáadott új adatbázisokat.

az backup protectable-item initialize --resource-group SQLResourceGroup \
    --vault-name SQLVault \
    --container-name VMAppContainer;Compute;SQLResourceGroup;testSQLVM \
    --workload-type SQLDataBase

Ezután az az backup protectable-item list parancsmaggal listázhatja az SQL-példányon felderített összes adatbázist. Ez a lista azonban nem tartalmazza azokat az adatbázisokat, amelyeken a biztonsági mentés már konfigurálva van. A biztonsági mentéshez szükséges adatbázis felderítése után tekintse meg az SQL-adatbázis biztonsági mentésének engedélyezése című témakört.

az backup protectable-item list --resource-group SQLResourceGroup \
    --vault-name SQLVault \
    --workload-type SQLDataBase \
	--protectable-item-type SQLDataBase \
    --output table

A biztonsági másolatot készíteni kívánt új adatbázis megjelenik ebben a listában, amely a következőképpen jelenik meg:

Name                            Protectable Item Type    ParentName    ServerName    IsProtected
---------------------------     ----------------------   ------------  -----------   ------------
sqldatabase;mssqlserver;db1     SQLDataBase              mssqlserver   testSQLVM	 NotProtected  
sqldatabase;mssqlserver;db2     SQLDataBase              mssqlserver   testSQLVM	 NotProtected

SQL-adatbázis védelmének leállítása

Az SQL-adatbázisok védelmét a következő folyamatokban állíthatja le:

  • Állítsa le az összes jövőbeli biztonsági mentési feladatot, és törölje az összes helyreállítási pontot.
  • Állítsa le az összes jövőbeli biztonsági mentési feladatot, és hagyja érintetlenül a helyreállítási pontokat.

Ha úgy dönt, hogy elhagyja a helyreállítási pontokat, vegye figyelembe az alábbi részleteket:

  • Minden helyreállítási pont örökre érintetlen marad, és minden metszés leáll a védelem leállításakor az adatok megőrzésével.
  • A védett példányért és a felhasznált tárterületért díjat számítunk fel.
  • Ha a biztonsági másolatok leállítása nélkül töröl egy adatforrást, az új biztonsági mentések sikertelenek lesznek.

A védelem leállítására szolgáló folyamatokat az alábbiakban találja.

Védelem leállítása az adatok megőrzésével

Az adatok megőrzésével történő védelem leállításához használja az az backup protection disable' parancsot.

az backup protection disable --resource-group SQLResourceGroup \
    --vault-name SQLVault \
    --container-name VMAppContainer;Compute;SQLResourceGroup;testSQLVM \
    --item-name sqldatabase;mssqlserver;master \
    --workload-type SQLDataBase \
    --output table

A kimenet a következőképpen jelenik meg:

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

A művelet állapotának ellenőrzéséhez használja az az backup job show parancsot.

Védelem leállítása az adatok megőrzése nélkül

Ha az adatok megőrzése nélkül szeretné leállítani a védelmet, használja az az backup protection disable parancsot.

az backup protection disable --resource-group SQLResourceGroup \
    --vault-name SQLVault \
    --container-name VMAppContainer;Compute;SQLResourceGroup;testSQLVM \
    --item-name sqldatabase;mssqlserver;master \
    --workload-type SQLDataBase \
    --delete-backup-data true \
    --output table

A kimenet a következőképpen jelenik meg:

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

A művelet állapotának ellenőrzéséhez használja az az backup job show parancsot.

Védelem folytatása

Ha leállítja az SQL-adatbázis védelmét az adatok megőrzésével, később folytathatja a védelmet. Ha nem őrzi meg a biztonsági mentési adatokat, nem tudja folytatni a védelmet.

A védelem folytatásához használja az az backup protection resume parancsot.

az backup protection resume --resource-group SQLResourceGroup \
    --vault-name SQLVault \
    --container-name VMAppContainer;Compute;SQLResourceGroup;testSQLVM \
    --policy-name SQLPolicy \
    --output table

A kimenet a következőképpen jelenik meg:

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

A művelet állapotának ellenőrzéséhez használja az az backup job show parancsot.

Következő lépések