Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

SQL Server 2016:Utwórz kopię zapasową bazy danych

SQL Server zapewnia łatwy sposób tworzenia kopii zapasowej bazy danych. Kopie zapasowe można wykonywać za pomocą języka Transact-SQL, PowerShell lub interfejsu graficznego SQL Server Management Studio.

Tutaj zademonstruję, jak utworzyć kopię zapasową za pomocą graficznego interfejsu użytkownika systemu zarządzania serwerem SQL, następnie za pomocą języka Transact-SQL, a na koniec za pomocą programu SQL Server Powershell.

Utwórz kopię zapasową za pomocą GUI

  1. Uruchom zapasową bazę danych Okno dialogowe

    W Eksploratorze obiektów kliknij prawym przyciskiem myszy bazę danych, której kopię zapasową chcesz utworzyć, i wybierz Zadania> Utwórz kopię zapasową... z menu kontekstowego.

  2. Sprawdź ustawienia kopii zapasowej

    To okno dialogowe daje możliwość zmiany dowolnych ustawień w razie potrzeby.

    W naszym przykładzie pozostaw ustawienia domyślne i kliknij OK aby utworzyć kopię zapasową.

    Tutaj możesz zmienić bazę danych, jeśli przypadkowo wybrałeś niewłaściwą w poprzednim kroku.

  3. Ukończono kopię zapasową

    Po zakończeniu tworzenia kopii zapasowej otrzymasz wiadomość.

    Kliknij OK aby zamknąć wiadomość i okno dialogowe.

    Plik kopii zapasowej będzie teraz zlokalizowany w określonej lokalizacji.

Utwórz kopię zapasową bazy danych przy użyciu języka Transact-SQL

  • Możesz wykonać tę samą kopię zapasową, co powyżej, używając SQL.

    Aby to zrobić, otwórz nowe okno zapytania i wykonaj BACKUP oświadczenie.

    BACKUP Instrukcja akceptuje różne opcje (podobnie jak opcja GUI), ale możesz również uruchomić prostą kopię zapasową z minimalną ilością kodu.

    Przykładowy kod

    Poniżej znajduje się przykład prostego skryptu kopii zapasowej, który określa bazę danych do utworzenia kopii zapasowej oraz lokalizację, w której ma zostać wykonana kopia zapasowa.

    Po uruchomieniu tego kodu plik kopii zapasowej zostanie umieszczony w określonej lokalizacji.

    BACKUP DATABASE Music  
    TO DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\Music.bak';

    Możesz zobaczyć pełną składnię BACKUP oświadczenie na stronie Microsoft.

Utwórz kopię zapasową bazy danych za pomocą PowerShell

SQL Server 2016 obsługuje program Windows PowerShell, który jest powłoką skryptów, zwykle używaną do automatyzacji zadań administracyjnych i wdrażania.

Język PowerShell obsługuje bardziej złożoną logikę niż skrypty Transact-SQL, co daje możliwość tworzenia bardziej wyrafinowanych skryptów do tworzenia kopii zapasowych i innych zadań.

  1. Otwórz PowerShell

    Kliknij prawym przyciskiem myszy bazę danych i wybierz Uruchom Powershell .

  2. Uruchom polecenie kopii zapasowej

    Wpisz polecenie tworzenia kopii zapasowej i naciśnij Enter (lub Powrót , w zależności od używanej klawiatury).

    Kopia zapasowa rozpocznie się natychmiast.

    Przykładowy kod

    Poniższy kod utworzy kopię zapasową, tak jak w poprzednich przykładach. Wystarczy zastąpić MyServer z nazwą twojego serwera.

    Po uruchomieniu tego kodu plik kopii zapasowej zostanie umieszczony w domyślnej lokalizacji.

    Backup-SqlDatabase -ServerInstance MyServer -Database Music

    Możesz także określić lokalizację

    Backup-SqlDatabase -ServerInstance MyServer -Database Music -BackupFile 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\Music.bak'

    Możesz także określić -BackupAction Database aby wyraźnie stwierdzić, że jest to pełna kopia zapasowa. Jest to jednak opcja domyślna.

    Możesz zobaczyć pełną dokumentację Backup-SqlDatabase polecenie na stronie Microsoft.

Zastępowanie plików kopii zapasowych

Jeśli uruchomiłeś wszystkie powyższe przykłady dokładnie tak, jak są, możesz zauważyć, że za każdym razem, gdy je uruchomiłeś, rozmiar pliku kopii zapasowej wzrastał.

Dzieje się tak, ponieważ każda kolejna kopia zapasowa dodaje się do istniejącego pliku.

Robi to, ponieważ używamy tej samej nazwy pliku i nie określiliśmy wyraźnie, że każda kopia zapasowa powinna nadpisywać istniejący plik.

Istnieje opcja, która pozwala nadpisać istniejący plik.

  • Korzystanie z GUI , kliknij Opcje multimediów w lewym menu Kopia zapasowa bazy danych i wybierz Zastąp wszystkie istniejące zestawy kopii zapasowych w Zastąp multimedia sekcja.
  • Korzystanie z SQL dodaj WITH INIT do instrukcji SQL.
  • Korzystanie z Powershell , dodaj -Initialize do polecenia.

Zapisywanie plików kopii zapasowej

Jednak często dobrym pomysłem jest utworzenie pełnej kopii zapasowej z unikatową nazwą pliku (zazwyczaj zawierającą datę w nazwie pliku). Posiadanie unikalnej nazwy pliku oznacza, że ​​każda kopia zapasowa będzie osobnym plikiem.

Ponadto, w zależności od rozmiaru bazy danych i ilości wprowadzanych do niej nowych danych, można uzupełnić pełne kopie zapasowe kopiami różnicowymi. Różnicowa kopia zapasowa przechwytuje tylko te dane, które uległy zmianie od czasu ostatniej pełnej kopii zapasowej.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak utworzyć tabelę w SQL Server

  2. Wyszukiwanie pełnotekstowe nie działa, jeśli dołączono słowo zatrzymania, mimo że lista słów zatrzymania jest pusta

  3. Usuń zduplikowane wiersze w SQL Server

  4. Jakie jest znaczenie 1/1/1753 w SQL Server?

  5. Zwróć listę wszystkich wyzwalaczy serwera w SQL Server