Eksportuj (0) Drukuj
Rozwiń wszystko
Ten artykuł był przetłumaczony komputerowo. Oryginalny tekst zobaczysz, umieszczając wskaźnik myszy nad zdaniami w artykule. Więcej informacji.
Tłumaczenie
Oryginał

Tworzenie pełnej kopii zapasowej (program SQL Server)

W tym temacie opisano sposób tworzenia pełnej kopii zapasowej bazy danych w programie SQL Server 2012 przy użyciu programu SQL Server Management Studio lub języka Transact-SQL.

W tym temacie

Limity i ograniczenia

  • Instrukcji BACKUP nie można używać w jawnych i niejawnych transakcjach.

  • Kopii zapasowych, które zostały utworzone w nowszej wersji programu SQL Server, nie można przywrócić w starszych wersjach programu SQL Server.

  • Aby uzyskać więcej informacji, zobacz temat Omówienie kopii zapasowych (program SQL Server).

Zalecenia

  • Wraz ze wzrostem rozmiaru bazy danych wydłuża się czas wykonywania pełnej kopii zapasowej bazy danych i potrzeba więcej miejsca na jej przechowywanie. Dlatego w przypadku dużej bazy danych można uzupełnić pełną kopię zapasową bazy danych serią różnicowych kopii zapasowych bazy danych. Aby uzyskać więcej informacji, zobacz temat Różnicowe kopie zapasowe (SQL Server).

  • Rozmiar pełnej kopii zapasowej bazy danych można oszacować, używając systemowej procedury składowanej sp_spaceused.

  • Domyślnie każda zakończona pomyślnie operacja wykonywania kopii zapasowej powoduje dodanie wpisu w dzienniku błędów programu SQL Server oraz w dzienniku zdarzeń systemu. Bardzo częste wykonywanie kopii zapasowych dziennika spowoduje szybką kumulację tych komunikatów o pomyślnym zakończeniu, co spowoduje znaczący wzrost rozmiaru dzienników błędów, a w konsekwencji trudności ze znalezieniem innych komunikatów. W takich przypadkach można pominąć tworzenie tych wpisów dziennika, używając flagi śledzenia 3226, o ile żaden z używanych skryptów nie jest zależny od tych wpisów. Aby uzyskać więcej informacji, zobacz temat Flagi śledzenia (Transact-SQL).

Zabezpieczenia

Właściwość TRUSTWORTHY ma wartość OFF w kopii zapasowej bazy danych. Aby uzyskać informacje dotyczące sposobu ustawiania dla właściwości TRUSTWORTHY wartości ON, zobacz temat ALTER DATABASE Ustawianie opcji (języka Transact-SQL).

Począwszy od programu SQL Server 2012 opcje PASSWORD i MEDIAPASSWORD nie są już używane podczas tworzenia kopii zapasowych. Nadal można przywracać kopie zapasowe, które zostały utworzone z użyciem hasła.

Uprawnienia

Uprawnienia BACKUP DATABASE i BACKUP LOG są domyślnie udzielane członkom stałej roli serwera sysadmin oraz stałych ról bazy danych db_owner i db_backupoperator.

Problemy z własnością i uprawnieniami do fizycznego pliku urządzenia kopii zapasowej mogą zakłócić operację wykonywania kopii zapasowej. Program SQL Server musi mieć możliwość odczytu z urządzenia i zapisu na nim, więc konto, na którym działa usługa SQL Server, musi mieć uprawnienia do zapisu. Jednak procedura składowana sp_addumpdevice, która dodaje do tabel systemowych wpis dotyczący urządzenia kopii zapasowej, nie sprawdza uprawnień dostępu do plików. Tego typu problemy z fizycznym plikiem urządzenia kopii zapasowej mogą nie być widoczne do czasu uzyskania dostępu do zasobu fizycznego, gdy zostanie podjęta próba wykonania kopii zapasowej lub przywracania.

Ikona strzałki używana z łączem Powrót na górę strony [Top]

Uwaga Uwaga:

Po określeniu, że do realizacji zadania wykonywania kopii zapasowych będzie używany program SQL Server Management Studio, można wygenerować odpowiedni skrypt Transact-SQL BACKUP, klikając przycisk Script (Skrypt) i wybierając lokalizację docelową skryptu.

Aby wykonać kopię zapasową bazy danych

  1. Po nawiązaniu połączenia z odpowiednim wystąpieniem programu Microsoft Aparat baz danych programu SQL Server w programie Object Explorer, kliknij nazwę serwera, aby rozwinąć drzewo serwera.

  2. Rozwiń węzeł Databases (Bazy danych) i w zależności od używanej bazy danych wybierz bazę danych użytkownika albo rozwiń węzeł System Databases (Systemowe bazy danych) i wybierz systemową bazę danych.

  3. Kliknij prawym przyciskiem myszy bazę danych, wskaż polecenie Tasks (Zadania), a następnie kliknij polecenie Back Up (Wykonywanie kopii zapasowej). Zostanie wyświetlone okno dialogowe Back Up Database (Wykonywanie kopii zapasowej bazy danych).

  4. W polu listy Database (Baza danych) sprawdź nazwę bazy danych. Opcjonalnie możesz wybrać z listy inną bazę danych.

  5. Możesz wykonać kopię zapasową bazy danych dla dowolnego modelu odzyskiwania (FULL, BULK_LOGGED lub SIMPLE).

  6. W polu listy Backup type (Typ kopii zapasowej) wybierz opcję Full (Pełna).

    Należy zauważyć, że po utworzeniu pełnej kopii zapasowej bazy danych można utworzyć różnicową kopię bazy danych; aby uzyskać więcej informacji, zobacz temat Tworzenie różnicowa kopia zapasowa bazy danych (program SQL Server).

  7. Opcjonalnie możesz wybrać opcję Copy Only Backup (Kopia zapasowa obejmująca tylko kopiowanie), aby utworzyć kopię zapasową obejmującą tylko kopiowanie. Kopia zapasowa obejmująca tylko kopiowanie to kopia zapasowa programu SQL Server niezależna od sekwencji wykonywania konwencjonalnych kopii zapasowych programu SQL Server. Aby uzyskać więcej informacji, zobacz temat Tylko do kopii zapasowych (SQL Server).

    Uwaga Uwaga:

    Jeśli jest wybrana opcja Differential (Różnicowa), nie można utworzyć kopii zapasowej obejmującej tylko kopiowanie.

  8. W obszarze Backup component (Składnik kopii zapasowej) kliknij pozycję Database (Baza danych).

  9. Zaakceptuj domyślną nazwę zestawu kopii zapasowych sugerowaną w polu tekstowym Name (Nazwa) lub wprowadź inną nazwę zestawu kopii zapasowych.

  10. Opcjonalnie w polu Description (Opis) wprowadź opis zestawu kopii zapasowych.

  11. Określ, kiedy zestaw kopii zapasowych wygaśnie i czy można go zastąpić bez jawnego pomijania weryfikacji danych dotyczących wygasania:

    • Jeśli zestaw kopii zapasowych ma wygasać po określonej liczbie dni, kliknij domyślną opcję After (Po), a następnie wprowadź liczbę dni (liczonych od dnia utworzenia zestawu), po których zestaw wygaśnie. Ta wartość może należeć do zakresu od 0 do 99999 dni; wartość 0 dni oznacza, że zestaw kopii zapasowych nigdy nie wygaśnie.

      Wartość domyślna jest ustawiona w opcji Default backup media retention (in days) (Domyślny czas przechowywania nośnika kopii zapasowych [w dniach]), która znajduje się w oknie dialogowym Server Properties (Właściwości serwera) na stronie ustawień bazy danych. Aby uzyskać do niej dostęp, kliknij prawym przyciskiem myszy nazwę serwera w programie Object Explorer i wybierz polecenie Properties (Właściwości), a następnie wybierz stronę Database Settings (Ustawienia bazy danych).

    • Jeśli zestaw kopii zapasowych ma wygasać określonego dnia, kliknij opcję On (W dniu) i wprowadź datę wygaśnięcia zestawu.

      Aby uzyskać więcej informacji dotyczących dat wygasania kopii zapasowych, zobacz temat BACKUP (język Transact-SQL).

  12. Wybierz typ lokalizacji docelowej kopii zapasowej, klikając opcję Disk (Dysk) lub Tape (Taśma). Aby wybrać ścieżki do maksymalnie 64 stacji dysków lub taśm zawierających pojedynczy zestaw nośników, kliknij przycisk Add (Dodaj). Wybrane ścieżki będą wyświetlane w polu listy Backup to (Wykonaj kopię zapasową na).

    Aby usunąć lokalizację docelową kopii zapasowej, zaznacz ją i kliknij przycisk Usuń. Aby wyświetlić zawartość lokalizacji docelowej kopii zapasowej, zaznacz ją i kliknij przycisk Contents (Zawartość).

  13. Aby wyświetlić lub wybrać opcje zaawansowane, kliknij przycisk Options (Opcje) w okienku Select a page (Wybierz stronę).

  14. Wybierz opcję Overwrite Media (Zastąp nośnik), klikając jedną z następujących pozycji:

    • Back up to the existing media set (Wykonaj kopię zapasową w istniejącym zestawie nośników)

      Dla tej opcji możesz kliknąć ustawienie Append to the existing backup set (Dołącz do istniejącego zestawu kopii zapasowych) lub Overwrite all existing backup sets (Zastąp wszystkie istniejące zestawy kopii zapasowych). Aby uzyskać więcej informacji, zobacz tematy Appending to Existing Backup Sets i Overwriting Backup Sets.

      Opcjonalnie możesz wybrać opcję Check media set name and backup set expiration (Sprawdź wygasanie nazwy zestawu nośników i zestawu kopii zapasowych), aby podczas operacji wykonywania kopii zapasowej była weryfikowana data i godzina wygaśnięcia zestawu nośników i zestawu kopii zapasowych.

      Opcjonalnie wprowadź nazwę w polu Media set name (Nazwa zestawu nośników). Jeśli nie zostanie określona nazwa, zostanie określony zestaw nośników o pustej nazwie. Jeśli określisz nazwę zestawu nośników, nośnik (taśma lub dysk) będzie sprawdzany pod kątem zgodności rzeczywistej nazwy z nazwą wprowadzoną w tym polu.

    • Back up to a new media set, and erase all existing backup sets (Wykonaj kopię zapasową w nowym zestawie nośników i wymaż wszystkie istniejące zestawy kopii zapasowych)

      W przypadku użycia tej opcji wprowadź nazwę w polu tekstowym New media set name (Nazwa nowego zestawu nośników) i opcjonalnie wprowadź opis zestawu nośników w polu tekstowym New media set description (Opis nowego zestawu nośników). Aby uzyskać więcej informacji, zobacz temat Creating a New Media Set.

  15. W sekcji Reliability (Niezawodność) opcjonalnie zaznacz następujące pola wyboru:

  16. Jeśli wykonujesz kopię zapasową w stacji taśm (tak jak określono w sekcji Destination [Lokalizacja docelowa] na stronie General [Ogólne]), opcja Unload the tape after backup (Zwolnij taśmę po wykonaniu kopii zapasowej) jest aktywna. Kliknięcie tej opcji powoduje uaktywnienie opcji Rewind the tape before unloading (Przewiń taśmę przed zwolnieniem).

    Uwaga Uwaga:

    Opcje w sekcji Transaction log (Dziennik transakcji) są nieaktywne, dopóki nie będzie wykonywana kopia zapasowa dziennika transakcji (tak jak określono w sekcji Backup type [Typ kopii zapasowej] na stronie General [Ogólne]).

  17. Program SQL Server 2008 Enterprise i nowsze obsługują kompresję kopii zapasowych. Domyślnie to, czy kopia zapasowa jest kompresowana, zależy od wartości opcji konfiguracji serwera backup-compression default. Jednak niezależnie od aktualnej wartości domyślnej na poziomie serwera, można skompresować kopię zapasową, wybierając opcję Compress backup (Kompresuj kopię zapasową), lub wyłączyć kompresowanie kopii zapasowej, wybierając opcję Do not compress backup (Nie kompresuj kopii zapasowej).

    Aby wyświetlić bieżącą wartość domyślną ustawienia kompresji kopii zapasowej

Uwaga Uwaga:

Do tworzenia kopii zapasowych bazy danych można też użyć Kreatora planu konserwacji.

Ikona strzałki używana z łączem Powrót na górę strony [Top]

Aby utworzyć pełną kopię zapasową bazy danych

  1. Wykonaj instrukcję BACKUP DATABASE, aby utworzyć pełną kopię zapasową bazy danych, określając następujące informacje:

    • Nazwa bazy danych, której kopia zapasowa ma zostać wykonana.

    • Urządzenie kopii zapasowej, na którym zostanie zapisana pełna kopia zapasowa bazy danych.

    Podstawowa składnia języka Transact-SQL umożliwiająca wykonanie pełnej kopii zapasowej bazy danych jest następująca:

    BACKUP DATABASE database

    TO backup_device [ ,...n ]

    [ WITH with_options [ ,...o ] ] ;

    Opcja

    Opis

    database

    Baza danych, której kopia zapasowa ma zostać wykonana.

    backup_device [ ,...n ]

    Określa listę zawierającą od 1 do 64 urządzeń kopii zapasowych, które będą używane w operacji wykonywania kopii zapasowej. Można określić fizyczne urządzenie kopii zapasowej, ale można też określić odpowiednie logiczne urządzenie kopii zapasowej, jeśli zostało już zdefiniowane. Aby określić fizyczne urządzenie kopii zapasowej, użyj opcji DISK lub TAPE:

    { DISK | TAPE } =physical_backup_device_name

    Aby uzyskać więcej informacji, zobacz temat Urządzenia kopii zapasowej (SQL Server).

    WITH with_options [ ,...o ]

    Opcjonalnie określa co najmniej jedną dodatkową opcję o. Aby uzyskać podstawowe informacje dotyczące opcji, zobacz krok 2.

  2. Opcjonalnie określ co najmniej jedną opcję instrukcji WITH. Kilka podstawowych opcji instrukcji WITH opisano poniżej. Aby uzyskać informacje dotyczące wszystkich opcji instrukcji WITH, zobacz temat BACKUP (język Transact-SQL).

    • Podstawowe opcje instrukcji WITH dotyczące zestawu kopii zapasowych:

      { COMPRESSION | NO_COMPRESSION }

      W programie SQL Server 2008 Enterprise i nowszych określa, czy dana kopia zapasowajest kompresowana, zastępując wartość domyślną na poziomie serwera.

      Uwaga Uwaga:

      Wartość domyślna na poziomie serwera jest ustawiana za pomocą opcji domyślna kompresja kopii zapasowej.

      DESCRIPTION = { 'text' | @text_variable }

      Określa dowolny tekst opisujący zestaw kopii zapasowych. Ten ciąg może zawierać maksymalnie 255 znaków.

      NAME = { backup_set_name | @backup_set_name_var }

      Określa nazwę zestawu kopii zapasowych. Nazwa może zawierać maksymalnie 128 znaków. Jeśli opcja NAME nie zostanie określona, będzie używana pusta nazwa.

    • Podstawowe opcje instrukcji WITH dotyczące zestawu kopii zapasowych:

      Domyślnie instrukcja BACKUP dołącza kopię zapasową do istniejącego zestawu nośników, zachowując istniejący zestaw kopii zapasowych. Aby jawnie określić to zachowanie, należy użyć opcji NOINIT. Aby uzyskać więcej informacji, zobacz temat Appending to Existing Backup Sets.

      Alternatywnie, aby sformatować nośnik kopii zapasowych, należy użyć opcji FORMAT:

      FORMAT [ , MEDIANAME= { media_name | @media_name_variable } ] [ , MEDIADESCRIPTION = { text | @text_variable } ]

      Klauzuli FORMAT należy użyć, gdy nośnik jest używany po raz pierwszy albo gdy użytkownik chce zastąpić wszystkie istniejące dane. Opcjonalnie można przypisać do nowego nośnika nazwę oraz opis.

      Ważna informacja Ważne:

      Podczas używania klauzuli FORMAT instrukcji BACKUP należy zachować szczególną ostrożność, ponieważ użycie jej spowoduje zniszczenie wszystkich kopii zapasowych, które zostały uprzednio zapisane na nośniku kopii zapasowych.

Przykłady (Transact-SQL)

A.Wykonanie kopii zapasowej na urządzeniu dyskowym

W poniższym przykładzie na dysku jest wykonywana kopia zapasowa całej bazy danych AdventureWorks2012 , a do utworzenia nowego zestawu nośników jest używana opcja FORMAT.

USE AdventureWorks2012;
GO
BACKUP DATABASE AdventureWorks2012
TO DISK = 'Z:\SQLServerBackups\AdventureWorks2012.Bak'
   WITH FORMAT,
      MEDIANAME = 'Z_SQLServerBackups',
      NAME = 'Full Backup of AdventureWorks2012';
GO

B.Wykonanie kopii zapasowej na urządzeniu taśmowym

W poniższym przykładzie na taśmie jest wykonywana kopia zapasowa całej bazy danych AdventureWorks2012 , która jest dołączana do uprzednio wykonanych kopii zapasowych.

USE AdventureWorks2012;
GO
BACKUP DATABASE AdventureWorks2012
   TO TAPE = '\\.\Tape0'
   WITH NOINIT,
      NAME = 'Full Backup of AdventureWorks2012';
GO

C.Wykonanie kopii zapasowej na logicznym urządzeniu taśmowym

W poniższym przykładzie jest tworzone logiczne urządzenie kopii zapasowej odpowiadające stacji taśm. Następnie na tym urządzeniu jest zapisywana kopia zapasowa całej bazy danych AdventureWorks2012 .

-- Create a logical backup device, 
-- AdventureWorks2012_Bak_Tape, for tape device \\.\tape0.
USE master;
GO
EXEC sp_addumpdevice 'tape', 'AdventureWorks2012_Bak_Tape', '\\.\tape0'; 
USE AdventureWorks2012;
GO
BACKUP DATABASE AdventureWorks2012
   TO AdventureWorks2012_Bak_Tape
   WITH FORMAT,
      MEDIANAME = 'AdventureWorks2012_Bak_Tape',
      MEDIADESCRIPTION = '\\.\tape0', 
      NAME = 'Full Backup of AdventureWorks2012';
GO

Ikona strzałki używana z łączem Powrót na górę strony[Top]

Czy oceniasz te materiały jako pomocne?
(Pozostało znaków: 1500)
Dziękujemy za opinię.

Zawartość społeczności

Pokaż:
© 2014 Microsoft