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.
Dotyczy:programu SQL Server
W tym temacie opisano sposób przywracania plików do nowej lokalizacji w programie SQL Server przy użyciu programu SQL Server Management Studio lub Języka Transact-SQL.
W tym temacie
Przed rozpoczęciem:
Aby przywrócić pliki do nowej lokalizacji przy użyciu:
Przed rozpoczęciem
Ograniczenia i ograniczenia
Administrator systemu przywracający pliki musi być jedyną osobą, która obecnie używa bazy danych do przywrócenia.
Funkcja RESTORE nie jest dozwolona w jawnej lub niejawnej transakcji.
W ramach pełnego lub zarejestrowanego zbiorczo modelu odzyskiwania przed przywróceniem plików należy utworzyć kopię zapasową aktywnego dziennika transakcji (znanego jako ogon dziennika). Aby uzyskać więcej informacji, zobacz Tworzenie kopii zapasowej dziennika transakcji (SQL Server).
Aby przywrócić zaszyfrowaną bazę danych, musisz mieć dostęp do certyfikatu lub klucza asymetrycznego, który został użyty do szyfrowania bazy danych. Bez certyfikatu lub klucza asymetrycznego nie można przywrócić bazy danych. W związku z tym certyfikat używany do szyfrowania klucza szyfrowania bazy danych musi być przechowywany tak długo, jak jest potrzebny do kopii zapasowej. Aby uzyskać więcej informacji, zobacz certyfikaty programu SQL Server i klucze asymetryczne.
Bezpieczeństwo
Uprawnienia
Jeśli przywracana baza danych nie istnieje, użytkownik musi mieć uprawnienia CREATE DATABASE, aby móc wykonać funkcję RESTORE. Jeśli baza danych istnieje, uprawnienia RESTORE domyślnie przysługują członkom stałych ról serwera sysadmin i dbcreator oraz właścicielowi bazy danych (dbo). Dla opcji FROM DATABASE_SNAPSHOT baza danych zawsze istnieje.
Uprawnienia RESTORE są przekazywane do ról, w których informacje o członkostwie są zawsze łatwo dostępne dla serwera. Ponieważ członkostwo w stałej roli bazy danych można sprawdzić tylko wtedy, gdy baza danych jest dostępna i nieuszkodzona, co nie zawsze jest możliwe przy wykonaniu operacji RESTORE, członkowie stałej roli bazy danych db_owner nie mają uprawnień do wykonywania operacji RESTORE.
Korzystanie z programu SQL Server Management Studio
Aby przywrócić pliki do nowej lokalizacji
W Eksploratorze Obiektównawiąż połączenie z wystąpieniem silnika bazy danych SQL Server, rozwiń to wystąpienie, a następnie rozwiń Baz.
Kliknij prawym przyciskiem myszy bazę danych, którą chcesz, wskaż Tasks, wskaż opcję Restore, a następnie kliknij pozycję Pliki i Grupy Plików.
Na stronie Ogólne w polu listy Do bazy danych wprowadź bazę danych do przywrócenia. Możesz wprowadzić nową bazę danych lub wybrać istniejącą bazę danych z listy rozwijanej. Lista zawiera wszystkie bazy danych na serwerze, z wyłączeniem systemowych baz danych master i tempdb.
Aby określić źródło i lokalizację zestawów kopii zapasowych do przywrócenia, kliknij jedną z następujących opcji:
z bazy danych
Wprowadź nazwę bazy danych w polu listy. Ta lista zawiera tylko bazy danych, których kopia zapasowa została utworzona zgodnie z msdb historii kopii zapasowych.
z urządzenia
Kliknij przycisk przeglądania. W oknie dialogowym Określanie urządzeń kopii zapasowych wybierz jeden z wymienionych typów urządzeń w polu listy Typ nośnika kopii zapasowej. Aby wybrać co najmniej jedno urządzenie w polu listy nośników kopii zapasowej , kliknij przycisk Dodaj.
Po dodaniu urządzeń do listy nośnika kopii zapasowej, kliknij przycisk OK, aby powrócić do strony Ogólne.
W siatce Wybierz zestawy kopii zapasowych do przywrócenia, wybierz kopie zapasowe do przywrócenia. Ta siatka wyświetla kopie zapasowe dostępne dla określonej lokalizacji. Domyślnie sugerowany jest plan odzyskiwania. Aby zastąpić proponowany plan odzyskiwania, możesz zmienić zaznaczone opcje w tabeli. Wszystkie kopie zapasowe, które zależą od zaznaczonej kopii zapasowej, są automatycznie usuwane.
Nagłówek kolumny Wartości Przywróć Zaznaczone pola wyboru wskazują zestawy kopii zapasowych do przywrócenia. Nazwa Nazwa zestawu kopii zapasowych. Typ Pliku Określa typ danych w kopii zapasowej: Data, Loglub Filestream Data. Dane zawarte w tabelach znajdują się w plikach Data. Dane dziennika transakcji są w plikach dziennika . Dane dużych obiektów binarnych (BLOB) przechowywane w systemie plików znajdują się w plikach filestream data. typu Typ wykonywanej kopii zapasowej: Pełna, Różnicowalub Dziennik transakcji. Server Nazwa wystąpienia Database-Engine, które wykonało operację tworzenia kopii zapasowej. nazwa logiczna pliku Logiczna nazwa pliku. Baza danych Nazwa bazy danych zaangażowanej w operację tworzenia kopii zapasowej. data rozpoczęcia Data i godzina rozpoczęcia operacji tworzenia kopii zapasowej przedstawione w regionalnym ustawieniu klienta. Data Zakończenia Data i godzina zakończenia operacji tworzenia kopii zapasowej przedstawione w regionalnym ustawieniu klienta. rozmiar Rozmiar zestawu kopii zapasowych w bajtach. nazwa użytkownika Nazwa użytkownika, który wykonał operację tworzenia kopii zapasowej. W okienku Wybierz stronę kliknij na stronę Opcje.
W Przywróć pliki bazy danych jako siatkę określ nową lokalizację dla pliku lub plików, które chcesz przenieść.
Nagłówek kolumny Wartości oryginalna nazwa pliku Pełna ścieżka źródłowego pliku kopii zapasowej. Typ Pliku Określa typ danych w kopii zapasowej: Data, Loglub Filestream Data. Dane zawarte w tabelach znajdują się w plikach Data. Dane dziennika transakcji znajdują się w plikach dziennika . Dane dużych obiektów binarnych (BLOB) przechowywane w systemie plików znajdują się w plikach filestream data. przywracanie jako Pełna ścieżka pliku bazy danych do przywrócenia. Aby określić nowy plik przywracania, kliknij pole tekstowe i edytuj sugerowaną ścieżkę i nazwę pliku. Zmiana ścieżki lub nazwy pliku w kolumnie Restore As jest równoważna użyciu opcji MOVE w instrukcji Transact-SQL RESTORE. Wybierz pozycję OK.
Korzystanie z Transact-SQL
Aby przywrócić pliki do nowej lokalizacji
Opcjonalnie wykonaj instrukcję RESTORE FILELISTONLY, aby określić liczbę i nazwy plików w pełnej kopii zapasowej bazy danych.
Wykonaj instrukcję RESTORE DATABASE, aby przywrócić pełną kopię zapasową bazy danych, określając:
Nazwa bazy danych do przywrócenia.
Urządzenie kopii zapasowej, z którego zostanie przywrócona pełna kopia zapasowa bazy danych.
Klauzula MOVE dla każdego pliku w celu przywrócenia do nowej lokalizacji.
Klauzula NORECOVERY.
Jeśli pliki zostały zmodyfikowane po utworzeniu kopii zapasowej pliku, wykonaj instrukcję RESTORE LOG, aby zastosować kopię zapasową dziennika transakcji, określając:
Nazwa bazy danych, do której zostanie zastosowany dziennik transakcji.
Urządzenie kopii zapasowej, z którego zostanie przywrócona kopia zapasowa dziennika transakcji.
Klauzula NORECOVERY, jeśli masz inną kopię zapasową dziennika transakcji, która ma być stosowana po bieżącym; w przeciwnym razie określ klauzulę RECOVERY.
Kopie zapasowe dziennika transakcji, jeśli są stosowane, muszą obejmować czas tworzenia kopii zapasowych plików i grup plików.
Przykład (Transact-SQL)
W tym przykładzie przywrócono dwa pliki bazy danych MyNwind
, które pierwotnie znajdowały się na dysku C, do nowych lokalizacji na dysku D. Zostaną również zastosowane dwa dzienniki transakcji w celu przywrócenia bazy danych do bieżącego czasu. Instrukcja RESTORE FILELISTONLY
służy do określania liczby i nazw logicznych i fizycznych plików w przywracanej bazie danych.
USE master;
GO
-- First determine the number and names of the files in the backup.
RESTORE FILELISTONLY
FROM MyNwind_1;
-- Restore the files for MyNwind.
RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH NORECOVERY,
MOVE 'MyNwind_data_1' TO 'D:\MyData\MyNwind_data_1.mdf',
MOVE 'MyNwind_data_2' TO 'D:\MyData\MyNwind_data_2.ndf';
GO
-- Apply the first transaction log backup.
RESTORE LOG MyNwind
FROM MyNwind_log1
WITH NORECOVERY;
GO
-- Apply the last transaction log backup.
RESTORE LOG MyNwind
FROM MyNwind_log2
WITH RECOVERY;
GO
Zobacz też
przywracanie kopii zapasowej bazy danych przy użyciu programu SSMS
RESTORE (Transact-SQL)
kopiowanie baz danych za pomocą tworzenia kopii zapasowych i przywracania
przywracanie plików i grup plików (SQL Server)