Notatka
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.
Dotyczy:programu SQL Server
Ten artykuł opisuje, jak stworzyć różnicową kopię zapasową bazy danych w SQL Server, korzystając z SQL Server Management Studio, Transact-SQL lub PowerShell.
Aby uzyskać przegląd koncepcji i zadań tworzenia kopii zapasowych, zobacz przegląd kopii zapasowych (SQL Server).
Warunki wstępne
Różnicowa kopia zapasowa bazy danych wymaga wcześniejszej pełnej kopii zapasowej bazy danych. Jeśli baza danych go nie ma, najpierw zrób pełną kopię zapasową bazy danych. Aby uzyskać więcej informacji, zobacz Tworzenie pełnej kopii zapasowej bazy danych.
Zalecenia
Ponieważ różnicowe kopie zapasowe z czasem zwiększają rozmiar, przywrócenie różnicowej kopii zapasowej może znacząco wydłużyć czas przywrócenia bazy danych. Zrób nową pełną kopię zapasową w określonych odstępach, aby ustanowić nową bazę różnicową.
Na przykład możesz robić cotygodniową pełną kopię zapasową bazy danych, a następnie codzienne różnicowe kopie zapasowe w ciągu tygodnia.
Limitations
Nie możesz użyć BACKUP tego stwierdzenia w transakcji jawnej ani domyślnej.
uprawnienia
BACKUP DATABASE a BACKUP LOG uprawnienia domyślnie należą do członków stałej roli serwera administratora systemu , a także do ról db_owner i db_backupoperator stałej bazy danych.
Konto usługi SQL Server musi mieć uprawnienia do odczytu i zapisu w fizycznym pliku urządzenia backup. Problemy z własnością lub uprawnieniami do tego pliku uniemożliwiają operacje tworzenia kopii zapasowej i przywracania i pojawiają się tylko podczas wykonywania operacji backupu lub przywracania.
Na przykład procedura przechowywana w systemie sp_addumpdevice , która dodaje wpis urządzenia kopii zapasowej do tabel systemowych, nie waliduje dostępu do plików.
Korzystanie z programu SQL Server Management Studio
W Eksplorator obiektów połącz się z Database Engine, a następnie rozwiń drzewo serwera.
Rozwiń bazy danych, a następnie wybierz bazę użytkowników. Albo rozwiń System Databases i wybierz bazę danych systemową.
Kliknij prawym przyciskiem myszy bazę danych, wskaż Tasks, a następnie wybierz Utwórz kopię zapasową. Zostanie wyświetlone okno dialogowe Kopia zapasowa bazy danych.
W rozwijanej liście bazy danych weryfikuj nazwę bazy danych. Opcjonalnie wybierz inną bazę danych.
Możesz wykonać różnicową kopię zapasową w dowolnym modelu odzyskiwania (pełnym, z logowaniem zbiorczym lub prostym).
W rozwijanej liście typu kopii zapasowej wybierz Różnicowanie.
Ważny
Po wybraniu opcji Różnicowa upewnij się, że pole wyboru Kopia tylko do kopiowania jest niezaznaczone. Nie możesz utworzyć różnicowej kopii zapasowej na podstawie pełnej kopii zapasowej typu copy-only. Aby uzyskać więcej informacji, zobacz Kopie zapasowe tylko do kopiowania.
W przypadku komponentu Backup wybierz Baza danych.
W polu tekstowym Nazwa zaakceptuj domyślną nazwę zestawu zapasowego lub wprowadź nową.
Opcjonalnie wpisz opis w polu tekstowym Opis .
Określ, kiedy zestaw kopii zapasowych wygasa:
Aby wygasnąć zestaw kopii zapasowych po określonej liczbie dni, wybierz Po (domyślnie) i wpisz liczbę dni. Wartości wahają się od
0do .99999Wartość0oznacza, że zestaw kopii zapasowych nigdy nie wygasa.Domyślna wartość jest ustawiona w opcji Domyślne przechowywanie nośników kopii zapasowej (w dniach) na stronie Ustawienia bazy danych w oknie dialogowym Właściwości serwera. Aby ją otworzyć, kliknij prawym przyciskiem myszy na nazwę serwera w Eksplorator obiektów, wybierz Właściwości, a następnie stronę Ustawienia bazy danych.
Aby wygasnąć zestaw kopii zapasowych w określonym terminie, wybierz On i wpisz datę.
Aby wybrać miejsce docelowe kopii zapasowej, wybierz Dysk lub adres URL. Aby dodać maksymalnie 64 napędy dyskowe do jednego zestawu nośników, wybierz Dodaj. Wybrane ścieżki pojawiają się na rozwijanej liście Backup do .
Aby usunąć miejsce docelowe kopii zapasowej, wybierz je i wybierz pozycję Usuń. Aby wyświetlić zawartość miejsca docelowego kopii zapasowej, wybierz ją i wybierz pozycję Zawartość.
Notatka
Aby uzyskać więcej informacji na temat tworzenia kopii zapasowych w adresie URL, zobacz SQL Server backup to URL for Azure Blob Storage.
Aby wyświetlić lub wybrać opcje zaawansowane, wybierz opcję Opcje w okienku Wybierz stronę.
W przypadku Overwrite Media wybierz jedną z następujących opcji:
Twórz kopię zapasową na istniejący zestaw multimediów
Wybierz opcję Dodaj do istniejącego zestawu kopii zapasowych lub Nadpisz wszystkie istniejące zestawy kopii zapasowych. Opcjonalnie zaznacz pole Sprawdź nazwę zestawu mediów i wygaśnięcie zestawu zapasowego oraz wpisz nazwę w polu tekstowym Nazwa zestawu mediów .
Jeśli nie podasz nazwy, SQL Server tworzy zestaw mediów z pustą nazwą. Jeśli podasz nazwę, program SQL Server sprawdzi nośnik, aby potwierdzić, czy nazwa jest zgodna.
Jeśli pozostawisz nazwę nośnika pustą i zaznaczysz pole wyboru, sprawdzenie powiedzie się tylko wtedy, gdy nazwa na nośniku również będzie pusta.
Utworzyć kopię zapasową na nowym zestawie multimediów, a następnie wymazać wszystkie istniejące zestawy kopii zapasowych
Wpisz nazwę w polu tekstowym Nazwa nowego zestawu nośników. Opcjonalnie opisz zestaw mediów w polu tekstowym opisu zbioru nowych mediów .
W sekcji Niezawodność opcjonalnie wybierz:
Sprawdź kopię zapasową po zakończeniu.
Wykonaj sumę kontrolną przed zapisem na nośnik, a opcjonalnie Kontynuuj przy błędzie sumy kontrolnej. Aby uzyskać informacje o sumach kontrolnych, zobacz Możliwe błędy nośnika podczas tworzenia kopii zapasowej i przywracania (SQL Server).
Program SQL Server obsługuje kompresję kopii zapasowych. Domyślnie SQL Server kompresuje kopie zapasowe na podstawie
backup-compression defaultopcji konfiguracji serwera. Niezależnie od domyślnej wersji serwera, wybierz Kompresuj kopię zapasową, aby skompresować kopię zapasową, lub wybierz Nie kompresuj kopii zapasowej, aby zapobiec kompresji.Aby wyświetlić domyślną kompresję bieżącej kopii zapasowej, zobacz Konfiguracja serwera: domyślna kompresja kopii zapasowej. Więcej informacji o kompresji kopii zapasowych można znaleźć w artykule Kompresja kopii zapasowych (SQL Server).
Remarks
Możesz użyć Kreatora Planów Konserwacyjnych, aby tworzyć różnicowe kopie zapasowe bazy danych.
Opcje sekcji dziennika transakcji są nieaktywne, chyba że robisz kopię zapasową dziennika transakcji. Określ tę opcję w sekcji Typ kopii zapasowej na stronie Ogólnej .
Korzystanie z Transact-SQL
Wykonaj BACKUP DATABASE polecenie, aby utworzyć różnicową kopię zapasową bazy danych. Precyzować:
Nazwa bazy danych do utworzenia kopii zapasowej.
Urządzenie kopii zapasowej, na którym jest zapisywana pełna kopia zapasowa bazy danych.
Klauzula
DIFFERENTIALo tworzeniu kopii zapasowej tylko tych części bazy, które zmieniły się po ostatniej pełnej kopii zapasowej bazy danych.
Użyj następującej składni:
BACKUP DATABASE
database_nameTO< backup_device>WITH DIFFERENTIAL
Przykład (Transact-SQL)
Przykłady kodu w tym artykule korzystają z przykładowej bazy danych AdventureWorks2025 lub AdventureWorksDW2025, którą można pobrać ze strony głównej Przykładów programu Microsoft SQL Server i projektów społeczności.
-- Create a full database backup first.
BACKUP DATABASE AdventureWorks2025
TO AdventureWorks2025_1
WITH INIT;
GO
-- Time elapses.
-- Create a differential database backup, appending the backup
-- to the backup device containing the full database backup.
BACKUP DATABASE AdventureWorks2025
TO AdventureWorks2025_1
WITH DIFFERENTIAL;
GO
Remarks
Aby uzyskać informacje o tworzeniu kopii zapasowej na taśmie, zobacz BACKUP opcje taśmy oraz przykład Tworzenie kopii zapasowej na urządzeniu taśmowym w sekcji Tworzenie pełnej kopii zapasowej bazy danych.
Notatka
Opcja TAPE zostanie usunięta w przyszłej wersji SQL Server. Unikaj używania tej funkcji w nowych pracach programistycznych i zaplanuj modyfikowanie aplikacji, które obecnie korzystają z tej funkcji.
Użyj PowerShell
Użyj polecenia Backup-SqlDatabase cmdlet. Aby określić różnicową kopię zapasową bazy danych, użyj parametru -Incremental wraz z .-BackupAction Database
Notatka
Ten przykład wymaga modułu SqlServer . Aby uzyskać więcej informacji, zobacz Dostawca PowerShell SQL Server.
Przykład (PowerShell)
Poniższy przykład tworzy różnicową kopię zapasową AdventureWorks2025 bazy danych do domyślnej lokalizacji kopii zapasowej instancji Computer\Instanceserwera. Pełna kopia zapasowa bazy danych musi już istnieć.
Aby zapoznać się z pełnymi przykładami składni, zobacz Backup-SqlDatabase.
$credential = Get-Credential
Backup-SqlDatabase -ServerInstance Computer[\Instance] -Database AdventureWorks2025 -BackupAction Database -Incremental -Credential $credential
Treści powiązane
- Różnicowe kopie zapasowe (SQL Server)
- Tworzenie pełnej kopii zapasowej bazy danych
- Tworzenie kopii zapasowych plików i grup plików
- Przywracanie różnicowej kopii zapasowej bazy danych (SQL Server)
- przywracanie kopii zapasowej dziennika transakcji (SQL Server)
- plany konserwacji
- Pełne Kopie Zapasowe Plików (SQL Server)