Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
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 tym artykule opisano sposób zarządzania kopią zapasową bazy danych SQL na maszynie wirtualnej platformy Azure przy użyciu interfejsu wiersza polecenia platformy Azure. Te akcje można również wykonać przy użyciu witryny Azure Portal.
Uwaga
Jeśli użyłeś kopii zapasowej bazy danych SQL na platformie Azure przy użyciu interfejsu wiersza polecenia, używasz następujących zasobów:
- Grupa zasobów o nazwie SQLResourceGroup
- Magazyn o nazwie SQLVault
- Chroniony kontener o nazwie VMAppContainer;Obliczenia;SQLResourceGroup;testSQLVM
- Kopia zapasowa bazy danych/elementu o nazwie sqldatabase;mssqlserver;master
- Zasoby w regionie westus2
Interfejs wiersza polecenia platformy Azure ułatwia zarządzanie bazą danych SQL działającą na maszynie wirtualnej platformy Azure, która jest tworzona przy użyciu usługi Azure Backup. W poniższych sekcjach opisano poszczególne operacje zarządzania.
Dowiedz się więcej na temat obsługiwanych konfiguracji i scenariuszy tworzenia kopii zapasowej SQL.
Monitorowanie zadań tworzenia kopii zapasowych i przywracania
Użyj polecenia az backup job list , aby monitorować ukończone lub aktualnie uruchomione zadania (tworzenie kopii zapasowej lub przywracanie). Interfejs wiersza polecenia umożliwia również zawieszenie aktualnie uruchomionego zadania lub oczekiwanie na zakończenie zadania.
az backup job list --resource-group SQLResourceGroup \
--vault-name SQLVault \
--output table
Dane wyjściowe są wyświetlane jako:
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
Zmienianie zasad
Aby zmienić zasady bazowe konfiguracji kopii zapasowej SQL, użyj polecenia az backup policy set . Parametr nazwa w tym poleceniu odnosi się do elementu kopii zapasowej, którego zasady chcesz zmienić. W tym miejscu zamień politykę bazy danych SQL sqldatabase;mssqlserver;master na nową politykę newSQLPolicy. Nowe zasady można utworzyć za pomocą polecenia az backup policy create .
az backup item set-policy --resource-group SQLResourceGroup \
--vault-name SQLVault \
--container-name VMAppContainer;Compute;SQLResourceGroup;testSQLVM \
--policy-name newSQLPolicy \
--name sqldatabase;mssqlserver;master \
Dane wyjściowe są wyświetlane jako:
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
Tworzenie zasad różnicowej kopii zapasowej
Aby utworzyć politykę różnicowej kopii zapasowej, użyj polecenia az backup policy create z następującymi parametrami:
- --backup-management-type: Obciążenie platformy Azure.
- --workload-type: Baza danych SQL.
- --name: nazwa zasad.
- --policy: plik JSON z odpowiednimi szczegółami dotyczącymi harmonogramu i przechowywania.
- --resource-group: Grupa zasobów skarbca.
- --vault-name: nazwa skarbca/
Przykład:
az backup policy create --resource-group SQLResourceGroup --vault-name SQLVault --name SQLPolicy --backup-management-type AzureWorkload --policy SQLPolicy.json --workload-type SQLDataBase
Przykładowy kod JSON (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"
}
Po pomyślnym utworzeniu zasad dane wyjściowe polecenia pokazują kod JSON zasad przekazany jako parametr podczas wykonywania polecenia.
Możesz zmodyfikować następującą sekcję zasad, aby określić wymaganą częstotliwość tworzenia i czas przechowywania różnicowych kopii zapasowych.
Na przykład:
{
"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
}
}
Przykład:
Jeśli chcesz mieć różnicowe kopie zapasowe tylko w sobotę i zachować je przez 60 dni, wykonaj następujące zmiany w zasadach:
- Aktualizacja czasu przechowywania do 60 dni.
- Określ tylko sobotę jako ScheduleRunDays.
{
"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
}
}
Chroń nowe bazy danych dodane do wystąpienia SQL
Zarejestrowanie wystąpienia SQL w magazynie usługi Recovery Services automatycznie odnajduje wszystkie bazy danych w tym wystąpieniu.
Jeśli jednak później dodasz nowe bazy danych do wystąpienia SQL, użyj polecenia az backup protectable-item initialize. To polecenie umożliwia odnalezienie dodanych nowych baz danych.
az backup protectable-item initialize --resource-group SQLResourceGroup \
--vault-name SQLVault \
--container-name VMAppContainer;Compute;SQLResourceGroup;testSQLVM \
--workload-type SQLDataBase
Następnie użyj polecenia cmdlet az backup protectable-item list, aby wyświetlić listę wszystkich baz danych odnalezionych w wystąpieniu SQL. Ta lista wyklucza jednak te bazy danych, na których została już skonfigurowana kopia zapasowa. Po odnalezieniu bazy danych, którą chcesz zarchiwizować, zobacz Włączanie tworzenia kopii zapasowej w bazie danych SQL.
az backup protectable-item list --resource-group SQLResourceGroup \
--vault-name SQLVault \
--workload-type SQLDataBase \
--protectable-item-type SQLDataBase \
--output table
Nowa baza danych, której kopia zapasowa ma zostać utworzona, jest wyświetlana na tej liście, która jest wyświetlana jako:
Name Protectable Item Type ParentName ServerName IsProtected
--------------------------- ---------------------- ------------ ----------- ------------
sqldatabase;mssqlserver;db1 SQLDataBase mssqlserver testSQLVM NotProtected
sqldatabase;mssqlserver;db2 SQLDataBase mssqlserver testSQLVM NotProtected
Zatrzymaj ochronę bazy danych SQL
Ochronę bazy danych SQL można zatrzymać w następujących procesach:
- Zatrzymanie wszystkich przyszłych zadań tworzenia kopii zapasowych i usunięcie wszystkich punktów odzyskiwania.
- Zatrzymaj wszystkie przyszłe zadania tworzenia kopii zapasowej i pozostaw punkty odzyskiwania bez zmian.
Jeśli zdecydujesz się opuścić punkty odzyskiwania, pamiętaj o następujących szczegółach:
- Wszystkie punkty odzyskiwania pozostają nienaruszone, a wszystkie operacje przycinania są zatrzymywane po zatrzymaniu ochrony z zachowaniem danych.
- Opłata zostanie naliczona za chronione wystąpienie i wykorzystaną pamięć masową.
- Jeśli usuniesz źródło danych bez zatrzymania tworzenia kopii zapasowych, nowe kopie zapasowe nie powiodą się.
Poniżej opisano procesy zatrzymywania ochrony.
Zatrzymanie ochrony z zachowaniem danych
Aby zatrzymać ochronę z zachowaniem danych, użyj polecenia az backup protection disable.
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
Dane wyjściowe są wyświetlane jako:
Name ResourceGroup
------------------------------------ ---------------
g0f15dae-7cac-4475-d833-f52c50e5b6c3 SQLResourceGroup
Aby sprawdzić stan tej operacji, użyj polecenia az backup job show .
Zatrzymywanie ochrony bez zachowywania danych
Aby zatrzymać ochronę bez przechowywania danych, użyj polecenia az backup protection disable .
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
Dane wyjściowe są wyświetlane jako:
Name ResourceGroup
------------------------------------ ---------------
g0f15dae-7cac-4475-d833-f52c50e5b6c3 SQLResourceGroup
Aby sprawdzić stan tej operacji, użyj polecenia az backup job show .
Wznów ochronę
Po zatrzymaniu ochrony bazy danych SQL z zachowaniem danych można wznowić ochronę później. Jeśli nie zachowasz danych kopii zapasowej, nie będzie można wznowić ochrony.
Aby wznowić ochronę, użyj polecenia az backup protection resume .
az backup protection resume --resource-group SQLResourceGroup \
--vault-name SQLVault \
--container-name VMAppContainer;Compute;SQLResourceGroup;testSQLVM \
--policy-name SQLPolicy \
--output table
Dane wyjściowe są wyświetlane jako:
Name ResourceGroup
------------------------------------ ---------------
b2a7f108-1020-4529-870f-6c4c43e2bb9e SQLResourceGroup
Aby sprawdzić stan tej operacji, użyj polecenia az backup job show .
Następne kroki
- Dowiedz się, jak utworzyć kopię zapasową bazy danych SQL uruchomionej na maszynie wirtualnej platformy Azure przy użyciu witryny Azure Portal.
- Dowiedz się, jak zarządzać utworzoną kopię zapasową bazy danych SQL uruchomioną na maszynie wirtualnej platformy Azure przy użyciu witryny Azure Portal.
Treści powiązane
- Tworzenie kopii zapasowych baz danych programu SQL Server na maszynach wirtualnych platformy Azure przy użyciu usługi Azure Backup za pośrednictwem interfejsu API REST.
- Przywracanie baz danych programu SQL Server na maszynach wirtualnych platformy Azure przy użyciu interfejsu API REST.
- Zarządzanie bazami danych programu SQL Server na maszynach wirtualnych platformy Azure przy użyciu interfejsu API REST.