Jak Przygotowywanie bazy danych dublowania do dublowania (Transact-SQL)

duplikat bazy danych Muszą istnieć przed rozpoczęciem sesja dublowanie bazy danych.Nazwa duplikat bazy danych musi być taka sama jak nazwa dublowana baza danych.Właściciel bazy danych lub administrator systemu można utworzyć duplikat bazy danych z ostatniej pełnej kopia zapasowa dublowana baza danych i co najmniej jeden kolejnych kopia zapasowa dziennika.dublowanie pracy, duplikat bazy danych musi pozostać w stanie przywracanie.Dlatego podczas przywracanie kopia zapasowa do duplikat bazy danych, należy zawsze używać Z NORECOVERY dla każdej operacji przywracanie.

Jeśli usunięto dublowanie duplikat bazy danych jest nadal w stanie ODZYSKIWANIE, uruchom ponownie dublowanie.Jednakże, po pierwsze, co najmniej jednej kopia zapasowa należy podjąć dublowana baza danych.Następnie, na bazie dublowanie należy przywracanie NORECOVERY Z dziennika kopii zapasowych, które zostały wzięte w głównej bazie danych, ponieważ usunięto dublowanie.

Ostrzeżenie

Nie można dublować wzorca, msdb, temp, lub model bazy danych systemu.

Procedura

Tworzenie bazy danych dla bazy danychdublowanie

  1. Make sure that both the principal and mirror server instances have Microsoft SQL Server 2008 installed.

  2. Zweryfikuj, że baza danych używa pełnych model odzyskiwanie.

    Aby uzyskać więcej informacji, zobacz Jak Wyświetl lub zmień modelu odzyskiwania bazy danych (SQL Server Management Studio) lub sys.Databases (Transact-SQL) i ALTER DATABASE (Transact-SQL).

  3. Wykonywanie kopia zapasowa dublowana baza danych do pełnej kopia zapasowa.

    Aby uzyskać więcej informacji, zobacz Jak: Wykonywanie kopii zapasowej bazy danych (SQL Server Management Studio) lub Jak Utwórz pełną kopię zapasową bazy danych (Transact-SQL).

    Ostrzeżenie

    Alternatywnie można przywracanie istniejącą kopię zapasową pełnej bazy danych i, opcjonalnie, kopia zapasowa bazy danych różnicowych następuje co kolejnych kopia zapasowa.

  4. Upewnij się, że system, gdzie planujesz utworzyć duplikat bazy danych posiada dysku z wystarczającą ilością miejsca do przechowywania bazy danych.

  5. O ile kopii zapasowej znajduje się na dysku sieciowym, który jest dostępny z obu systemów, kopia zapasowa bazy danych do tego systemu.

  6. Aby utworzyć lustrzane bazy danych, Przywracanie pełnej kopia zapasowa na serwer duplikatu instancji.PRZYWRÓĆ bazę danych nazwa_bazy_danych instrukcja należy określić Z NORECOVERY, gdzie nazwa_bazy_danych jest nazwą bazy danych, aby być dublowane.

    Ostrzeżenie

    Jeśli użytkownik przywracanie grupa plików bazy danych przez grupę plików, pamiętaj, aby przywracanie całej bazy danych.

    Zaleca się także, jeśli to możliwe, ścieżka duplikat bazy danych (łącznie z literą dysku) być taka sama jak ścieżka dublowana baza danych.

    Jeśli układy plik musi się różnią, na przykład, jeżeli dublowana baza danych znajduje się na dysku "f": ale systemu dublowanie nie F: dysk, należy dołączyć opcję Przenieś w instrukcji PRZYWRACANIA.

    Ważna informacjaWażne:

    Dodawanie pliku podczas dublowanie sesja bez wywierania wpływu sesja wymaga, że istnieje ścieżka pliku na obu serwerach.Dlatego jeśli przenosisz pliki bazy danych podczas tworzenia bazy danych dublowania, później operacji dodawania pliku może nie duplikat bazy danych i spowodować dublowanie zawieszone.Informacji na temat operacji nie powiodło się tworzenie pliku Zobacz Rozwiązywanie problemów dotyczących wdrażania dublowania bazy danych.

    Aby uzyskać więcej informacji, zobacz RESTORE (Transact-SQL) i Przywracanie argumenty (Transact-SQL).

  7. Zazwyczaj co najmniej jednej kopia zapasowa należy podjąć dublowana baza danych, skopiowane na serwer duplikatu i przywrócić na bazie dublowania (korzystając Z NORECOVERY).Jednak kopia zapasowa dziennika może być konieczne, jeśli utworzony bazy danych i kopia zapasowa nie podjęto jeszcze lub model odzyskiwanie właśnie została zmieniona z PROSTYM pełne.

    Zastosować kopia zapasowa bazy danych dublowanie na serwer duplikatu można użyć albo SQL Server lub Transact-SQL:

  8. Jeśli kopie zapasowe wszelkich dodatkowych dziennika zostały podjęte dublowana baza danych po wykonaniu kopia zapasowa dziennika wymagane musi również skopiować je do serwera dublowania i dotyczą każdego z tych kopii zapasowych dziennika bazy danych dublowanie począwszy od najwcześniejszego i zawsze korzystania Z NORECOVERY.

Uwaga dotycząca zabezpieczeńUwaga dotycząca zabezpieczeń

TRUSTWORTHY jest zestaw do OFF, gdy tworzona jest kopia zapasowa bazy danych.Dlatego TRUSTWORTHY jest zawsze OFF nowego duplikat bazy danych.Baza danych musi być godna zaufania po przejęciu awaryjnym, konieczne są dodatkowe ustawienia.Aby uzyskać więcej informacji, zobacz Jak Konfigurowanie bazy danych dublowanie użycie właściwości zaufanego.

Ważna informacjaWażne:

Jeśli dublowanie bazy danych zostanie zatrzymana, wszystkie kopie zapasowe dziennika kolejnych na dublowana baza danych muszą być stosowane do dublowanie bazy danych przed dublowanie może zostać uruchomiony ponownie.

Przykład

Przed rozpoczęciem sesja dublowanie bazy danych należy utworzyć duplikat bazy danych.Należy to zrobić przed rozpoczęciem sesja dublowanie.

W tym przykładzie użyto AdventureWorks2008R2 Przykładowa baza danych, która używa model odzyskiwanie prostego domyślnie

  1. Aby użyć dublowania baz danych z AdventureWorks2008R2 bazy danych, zmodyfikować go używać pełnych model odzyskiwanie:

    USE master;
    GO
    ALTER DATABASE AdventureWorks2008R2 
    SET RECOVERY FULL;
    GO
    
  2. Po zmodyfikowaniu model odzyskiwanie bazy danych z PROSTYM pełne, tworzenie pełnej kopia zapasowa, który może służyć do utworzenia duplikat bazy danych.Ponieważ modelu odzyskiwanie właśnie została zmieniona, aby utworzyć nowy nośnik określono opcję FORMAT Z zestaw.Jest to przydatne do oddzielnych kopii zapasowych w model odzyskiwanie pełnego z poprzedniej kopii zapasowych, z dokonanych na podstawie model odzyskiwanie prostego.W rozumieniu w tym przykładzie plik kopia zapasowa (C:\AdventureWorks2008R2.bak) jest tworzony na dysku jako bazy danych.

    Ostrzeżenie

    Produkcyjnej bazy danych, należy zawsze tworzyć kopię zapasową do oddzielnego urządzenia.

    W wystąpieniu serwer dublowany (na PARTNERHOST1), tworzenie pełnej kopia zapasowa dublowana baza danych następująco:

    BACKUP DATABASE AdventureWorks2008R2 
        TO DISK = 'C:\AdventureWorks2008R2.bak' 
        WITH FORMAT
    GO
    
  3. Copy pełna kopia zapasowa serwer duplikatu.

  4. Przywracanie pełnej kopia zapasowa Z NORECOVERY na serwer duplikatu instancji.Polecenie przywracanie zależy od tego, czy ścieżki głównej i dublowania baz danych są identyczne.

    • Jeśli ścieżki są identyczne:

      Na serwer duplikatu wystąpienie (na PARTNERHOST5), Przywracanie pełnej kopia zapasowa następująco:

      RESTORE DATABASE AdventureWorks2008R2 
          FROM DISK = 'C:\AdventureWorks2008R2.bak' 
          WITH NORECOVERY
      GO
      
    • Jeżeli różnią się ścieżki:

      Jeśli ścieżka duplikat bazy danych różni się od ścieżki dublowana baza danych (dla wystąpienie, różnią się ich litery dysków), tworzenie duplikat bazy danych wymaga operacji przywracanie klauzula PRZENOSZENIA.

      Ważna informacjaWażne:

      Jeżeli różnią się nazwy ścieżka kapitału i dublowania baz danych, nie można dodać pliku.Wynika to na odbieranie dziennika dla operacji dodawania plików, próbuje umieścić nowy plik w lokalizacji używane przez wystąpienie serwera dublowanie dublowana baza danych.

      Na przykład następujące polecenie przywraca kopia zapasowa dublowana baza danych znajdujących się w katalogu C:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\ do innej lokalizacji D:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\, gdzie ma się znajdować duplikat bazy danych.

      RESTORE DATABASE AdventureWorks2008R2
         FROM DISK='C:\AdventureWorks2008R2.bak'
         WITH NORECOVERY, 
            MOVE 'AdventureWorks2008R2_Data' TO 
               'D:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\AdventureWorks2008R2_Data.mdf', 
            MOVE 'AdventureWorks2008R2_Log' TO
               'D:\Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\Data\AdventureWorks2008R2_Log.ldf';
      GO
      
  5. Po utworzeniu pełnej kopia zapasowa, należy utworzyć kopię zapasową dziennika na dublowana baza danych.Na przykład, następujący Transact-SQL instrukcja wykonuje kopię zapasową dziennika ten sam plik używany przez poprzedni pełna kopia zapasowa:

    BACKUP LOG AdventureWorks2008R2 
        TO DISK = 'C:\AdventureWorks2008R2.bak' 
    GO
    
  6. Przed rozpoczęciem dublowanie należy zastosować wymagane kopia zapasowa dziennika (i każdym kolejnym kopia zapasowa dziennikas).

    Na przykład, następujący Transact-SQL instrukcja przywraca pierwszego dziennika z C:\AdventureWorks2008R2.bak:

    RESTORE LOG AdventureWorks2008R2 
        FROM DISK = 'C:\AdventureWorks2008R2.bak' 
        WITH FILE=1, NORECOVERY
    GO
    
  7. Jeśli kopie zapasowe wszelkich dodatkowych dziennika przed rozpoczęciem dublowanie, musisz także przywracanie tych dziennika kopii zapasowych, w kolejności, do serwera dublowanie, korzystając Z NORECOVERY.

    Na przykład, następujący Transact-SQL instrukcja przywraca dwóch dodatkowych dziennikach z C:\AdventureWorks2008R2.bak:

    RESTORE LOG AdventureWorks2008R2 
        FROM DISK = 'C:\AdventureWorks2008R2.bak' 
        WITH FILE=2, NORECOVERY
    GO
    RESTORE LOG AdventureWorks2008R2 
        FROM DISK = 'C:\AdventureWorks2008R2.bak' 
        WITH FILE=3, NORECOVERY
    GO
    

Pełny przykład konfigurowanie dublowanie baz danych Wyświetlanie ustawień zabezpieczeń, przygotowywanie duplikat bazy danych, konfigurowanie partnerów i dodawanie świadka, zobacz Konfigurowanie dublowania baz danych.